Converted all the strings I can see to support localisation, and upped the number of allowed localisable resources to 2000

This commit is contained in:
Barry Harris 2011-12-15 16:18:10 +00:00
parent ccbc721add
commit f043cc8135
10 changed files with 400 additions and 282 deletions

View File

@ -1,4 +1,5 @@
//Microsoft Developer Studio generated resource script.
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"
@ -560,7 +561,7 @@ BEGIN
GROUPBOX "",IDC_STATIC1,2,0,470,298
CONTROL "",IDC_STATIC_INFOBOX,"Static",SS_WHITERECT | SS_SUNKEN,8,190,250,100
EDITTEXT IDC_TEXTCOMMENT,8,190,458,100,ES_MULTILINE | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | WS_VSCROLL
RTEXT "Language:", IDC_STATIC, 8, 170, 40, 10, SS_CENTERIMAGE
RTEXT "Language:", IDC_IPSMAN_LANGUAGE, 8, 170, 40, 10, SS_CENTERIMAGE
COMBOBOX IDC_CHOOSE_LIST, 60, 169, 100, 128, CBS_DROPDOWNLIST | WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_VSCROLL
CONTROL "Deselect All",IDC_IPSMAN_DESELECTALL,"Button",WS_TABSTOP,170,169,58,13
CONTROL "",IDC_SCREENSHOT_H,"Static",SS_BITMAP | SS_REALSIZEIMAGE | SS_SUNKEN,262,10,106,100, WS_EX_CLIENTEDGE
@ -579,7 +580,7 @@ BEGIN
PUSHBUTTON "Cancel",IDCANCEL,208,252,50,14
CONTROL "",IDC_MVS_CART1,"Static",SS_BITMAP | SS_REALSIZEIMAGE | SS_SUNKEN,8,8,48,36
CONTROL "Slot 1", IDC_STATIC,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,9,20,8
LTEXT "Slot 1", IDC_MVS_SLOT1,61,9,20,8,SS_CENTERIMAGE
CONTROL "", IDC_MVS_TEXTROMNAME1,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,85,9,172,8
CONTROL "", IDC_MVS_TEXTCOMMENT1,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,21,196,8
CONTROL "", IDC_MVS_TEXTSYSTEM1,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,33,196,8
@ -587,7 +588,7 @@ BEGIN
PUSHBUTTON "Select...",IDC_MVS_SELECT1,262,30,50,14
CONTROL "",IDC_MVS_CART2,"Static",SS_BITMAP | SS_REALSIZEIMAGE | SS_SUNKEN,8,48,48,36
CONTROL "Slot 2", IDC_STATIC,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,49,20,8
LTEXT "Slot 2", IDC_MVS_SLOT2,61,49,20,8,SS_CENTERIMAGE
CONTROL "", IDC_MVS_TEXTROMNAME2,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,85,49,172,8
CONTROL "", IDC_MVS_TEXTCOMMENT2,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,61,196,8
CONTROL "", IDC_MVS_TEXTSYSTEM2,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,73,196,8
@ -595,7 +596,7 @@ BEGIN
PUSHBUTTON "Select...",IDC_MVS_SELECT2,262,70,50,14
CONTROL "",IDC_MVS_CART3,"Static",SS_BITMAP | SS_REALSIZEIMAGE | SS_SUNKEN,8,88,48,36
CONTROL "Slot 3", IDC_STATIC,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,89,20,8
LTEXT "Slot 3", IDC_MVS_SLOT3,61,89,20,8,SS_CENTERIMAGE
CONTROL "", IDC_MVS_TEXTROMNAME3,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,85,89,172,8
CONTROL "", IDC_MVS_TEXTCOMMENT3,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,101,196,8
CONTROL "", IDC_MVS_TEXTSYSTEM3,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,113,196,8
@ -603,7 +604,7 @@ BEGIN
PUSHBUTTON "Select...",IDC_MVS_SELECT3,262,110,50,14
CONTROL "",IDC_MVS_CART4,"Static",SS_BITMAP | SS_REALSIZEIMAGE | SS_SUNKEN,8,128,48,36
CONTROL "Slot 4", IDC_STATIC,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,129,20,8
LTEXT "Slot 4", IDC_MVS_SLOT4,61,129,20,8,SS_CENTERIMAGE
CONTROL "", IDC_MVS_TEXTROMNAME4,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,85,129,172,8
CONTROL "", IDC_MVS_TEXTCOMMENT4,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,141,196,8
CONTROL "", IDC_MVS_TEXTSYSTEM4,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,153,196,8
@ -611,7 +612,7 @@ BEGIN
PUSHBUTTON "Select...",IDC_MVS_SELECT4,262,150,50,14
CONTROL "",IDC_MVS_CART5,"Static",SS_BITMAP | SS_REALSIZEIMAGE | SS_SUNKEN,8,168,48,36
CONTROL "Slot 5", IDC_STATIC,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,169,20,8
LTEXT "Slot 5", IDC_MVS_SLOT5,61,169,20,8,SS_CENTERIMAGE
CONTROL "", IDC_MVS_TEXTROMNAME5,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,85,169,172,8
CONTROL "", IDC_MVS_TEXTCOMMENT5,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,181,196,8
CONTROL "", IDC_MVS_TEXTSYSTEM5,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,193,196,8
@ -619,7 +620,7 @@ BEGIN
PUSHBUTTON "Select...",IDC_MVS_SELECT5,262,190,50,14
CONTROL "",IDC_MVS_CART6,"Static",SS_BITMAP | SS_REALSIZEIMAGE | SS_SUNKEN,8,208,48,36
CONTROL "Slot 6", IDC_STATIC,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,209,20,8
LTEXT "Slot 6", IDC_MVS_SLOT6,61,209,20,8,SS_CENTERIMAGE
CONTROL "", IDC_MVS_TEXTROMNAME6,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,85,209,172,8
CONTROL "", IDC_MVS_TEXTCOMMENT6,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,221,196,8
CONTROL "", IDC_MVS_TEXTSYSTEM6,"Edit",ES_LEFT | ES_AUTOHSCROLL | ES_READONLY | WS_CHILD | WS_VISIBLE,61,233,196,8

View File

@ -136,7 +136,7 @@ int DrvInit(int nDrvNum, bool bRestore)
if ((BurnDrvGetHardwareCode() & HARDWARE_PUBLIC_MASK) == HARDWARE_SNK_NEOCD) {
if (CDEmuInit()) {
FBAPopupAddText(PUF_TEXT_NO_TRANSLATE, _T("Couldn't initialise CD emulation.\n"));
FBAPopupAddText(PUF_TEXT_DEFAULT, MAKEINTRESOURCE(IDS_ERR_CDEMU_INI_FAIL));
FBAPopupDisplay(PUF_TYPE_ERROR);
POST_INITIALISE_MESSAGE;

View File

@ -377,18 +377,18 @@ static int IpsManagerInit()
SetWindowText(hIpsDlg, szText);
// Fill the combo box
_stprintf(szLanguages[0], _T("English (US)"));
_stprintf(szLanguages[1], _T("Simplified Chinese"));
_stprintf(szLanguages[2], _T("Traditional Chinese"));
_stprintf(szLanguages[3], _T("Japanese"));
_stprintf(szLanguages[4], _T("Korean"));
_stprintf(szLanguages[5], _T("French"));
_stprintf(szLanguages[6], _T("Spanish"));
_stprintf(szLanguages[7], _T("Italian"));
_stprintf(szLanguages[8], _T("German"));
_stprintf(szLanguages[9], _T("Portuguese"));
_stprintf(szLanguages[10], _T("Polish"));
_stprintf(szLanguages[11], _T("Hungarian"));
_stprintf(szLanguages[0], FBALoadStringEx(hAppInst, IDS_LANG_ENGLISH_US, true));
_stprintf(szLanguages[1], FBALoadStringEx(hAppInst, IDS_LANG_SIMP_CHINESE, true));
_stprintf(szLanguages[2], FBALoadStringEx(hAppInst, IDS_LANG_TRAD_CHINESE, true));
_stprintf(szLanguages[3], FBALoadStringEx(hAppInst, IDS_LANG_JAPANESE, true));
_stprintf(szLanguages[4], FBALoadStringEx(hAppInst, IDS_LANG_KOREAN, true));
_stprintf(szLanguages[5], FBALoadStringEx(hAppInst, IDS_LANG_FRENCH, true));
_stprintf(szLanguages[6], FBALoadStringEx(hAppInst, IDS_LANG_SPANISH, true));
_stprintf(szLanguages[7], FBALoadStringEx(hAppInst, IDS_LANG_ITALIAN, true));
_stprintf(szLanguages[8], FBALoadStringEx(hAppInst, IDS_LANG_GERMAN, true));
_stprintf(szLanguages[9], FBALoadStringEx(hAppInst, IDS_LANG_PORTUGUESE, true));
_stprintf(szLanguages[10], FBALoadStringEx(hAppInst, IDS_LANG_POLISH, true));
_stprintf(szLanguages[11], FBALoadStringEx(hAppInst, IDS_LANG_HUNGARIAN, true));
_stprintf(szLanguageCodes[0], _T("en_US"));
_stprintf(szLanguageCodes[1], _T("zh_CN"));

View File

@ -6,7 +6,7 @@
bool bLocalisationActive = false;
TCHAR szLocalisationTemplate[MAX_PATH] = _T("");
static const unsigned int nMaxResources = 1000;
static const unsigned int nMaxResources = 2000;
static int nFBACodepage;
@ -1561,7 +1561,7 @@ void FBALocaliseExit()
bLocalisationActive = false;
if (FBAResourceInfo) {
for (int i = 0; i < 1000; i++) {
for (unsigned int i = 0; i < nMaxResources; i++) {
if (FBAResourceInfo[i].nResourceFlags & RES_DEALLOCATE) {
if (FBAResourceInfo[i].pResourceTranslation) {
free(FBAResourceInfo[i].pResourceTranslation);
@ -1597,12 +1597,12 @@ int FBALocaliseInit(TCHAR* pszTemplate)
return 0;
}
FBAResourceInfo = (FBAResourceInfo_t*)malloc(1000 * sizeof(FBAResourceInfo_t));
FBAResourceInfo = (FBAResourceInfo_t*)malloc(nMaxResources * sizeof(FBAResourceInfo_t));
if (FBAResourceInfo == NULL) {
return 1;
}
memset(FBAResourceInfo, 0, 1000 * sizeof(FBAResourceInfo_t));
memset(FBAResourceInfo, 0, nMaxResources * sizeof(FBAResourceInfo_t));
nRet = FBALocaliseParseFile(pszTemplate);
if (nRet > 0) {

View File

@ -1037,7 +1037,7 @@ void MenuUpdate()
SetMenuItemInfo(hMenu, MENU_PREVIOUSGAMES1 + i, FALSE, &menuItemInfo);
EnableMenuItem(hMenu, MENU_PREVIOUSGAMES1 + i, MF_ENABLED | MF_BYCOMMAND);
} else {
_tcscpy(szText, _T("no game selected"));
_tcscpy(szText, FBALoadStringEx(hAppInst, IDS_MENU_6, true));
menuItemInfo.dwTypeData = szText;
menuItemInfo.cch = _tcslen(szText);

View File

@ -119,11 +119,11 @@ static void NeoCDList_InitListView()
LvCol.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM;
LvCol.cx = 445;
LvCol.pszText = _T("Title");
LvCol.pszText = FBALoadStringEx(hAppInst, IDS_NGCD_TITLE, true);
SendMessage(hListView, LVM_INSERTCOLUMN , 0, (LPARAM)&LvCol);
LvCol.cx = 70;
LvCol.pszText = _T("NGCD-ID");
LvCol.pszText = FBALoadStringEx(hAppInst, IDS_NGCD_NGCDID, true);
SendMessage(hListView, LVM_INSERTCOLUMN , 1, (LPARAM)&LvCol);
// Setup ListView Icons
@ -1008,7 +1008,9 @@ static INT_PTR CALLBACK NeoCDList_WndProc(HWND hDlg, UINT Msg, WPARAM wParam, LP
TreeView_SetItemHeight(hListView, 40);
SetWindowText(hDlg, _T(APP_TITLE) _T(SEPERATOR_1) _T("Neo Geo CDZ") _T(SEPERATOR_1) _T("Select Game"));
TCHAR szDialogTitle[200];
_stprintf(szDialogTitle, FBALoadStringEx(hAppInst, IDS_NGCD_DIAG_TITLE, true), _T(APP_TITLE), _T(SEPERATOR_1), _T(SEPERATOR_1));
SetWindowText(hDlg, szDialogTitle);
hProcessThread = (HANDLE)_beginthreadex(NULL, 0, NeoCDList_DoProc, NULL, 0, &ProcessThreadID);

View File

@ -58,12 +58,12 @@
#define IDR_MENU_AUD_PLUGIN_2 131
#define IDR_ACCELERATOR 150
#define MENU_MENU_0 1000
#define MENU_MENU_1 1001
#define MENU_MENU_2 1002
#define MENU_MENU_3 1003
#define MENU_MENU_4 1004
#define MENU_MENU_5 1005
#define MENU_MENU_0 2000
#define MENU_MENU_1 2001
#define MENU_MENU_2 2002
#define MENU_MENU_3 2003
#define MENU_MENU_4 2004
#define MENU_MENU_5 2005
#define IDC_INPD_LIST 20000
#define IDC_INPD_NEWMACRO 20001
@ -184,12 +184,13 @@
#define IDC_ROMSAVAILABLEINFO 20126
#define IDC_INPD_SAVE_AS_PRESET 20127
#define IDC_LIST2 20128
#define IDC_IPSMAN_DESELECTALL 20129
#define IDC_SEL_IPSMANAGER 20130
#define IDC_SEL_APPLYIPS 20131
#define IDC_SEL_IPSGROUP 20132
#define IDC_SEL_SEARCH 20133
#define IDC_SEL_SEARCHGROUP 20134
#define IDC_IPSMAN_LANGUAGE 20129
#define IDC_IPSMAN_DESELECTALL 20130
#define IDC_SEL_IPSMANAGER 20131
#define IDC_SEL_APPLYIPS 20132
#define IDC_SEL_IPSGROUP 20133
#define IDC_SEL_SEARCH 20134
#define IDC_SEL_SEARCHGROUP 20135
#define IDC_SUPPORTDIR_EDIT1 20150
#define IDC_SUPPORTDIR_EDIT2 20151
@ -307,6 +308,12 @@
#define IDC_MVS_CLEAR4 20733
#define IDC_MVS_CLEAR5 20734
#define IDC_MVS_CLEAR6 20735
#define IDC_MVS_SLOT1 20736
#define IDC_MVS_SLOT2 20737
#define IDC_MVS_SLOT3 20738
#define IDC_MVS_SLOT4 20739
#define IDC_MVS_SLOT5 20740
#define IDC_MVS_SLOT6 20741
#define IDC_NCD_LIST 20800
#define IDC_NCD_FRONT_PIC 20801

View File

@ -1,230 +1,277 @@
// This in increments of 2, otherwise creating a localisation template is broken with GCC
#define IDS_ERROR (IDS_STRING + 600)
#define IDS_ERROR (IDS_STRING + 1600)
#define IDS_FIRSTRUN1 (IDS_STRING + 0)
#define IDS_FIRSTRUN2 (IDS_STRING + 2)
#define IDS_FIRSTRUN3A (IDS_STRING + 4)
#define IDS_FIRSTRUN3B (IDS_STRING + 6)
#define IDS_FIRSTRUN1 (IDS_STRING + 0)
#define IDS_FIRSTRUN2 (IDS_STRING + 2)
#define IDS_FIRSTRUN3A (IDS_STRING + 4)
#define IDS_FIRSTRUN3B (IDS_STRING + 6)
#define IDS_CHEAT_NAME (IDS_STRING + 10)
#define IDS_CHEAT_STATUS (IDS_STRING + 12)
#define IDS_CHEAT_NAME (IDS_STRING + 20)
#define IDS_CHEAT_STATUS (IDS_STRING + 22)
#define IDS_INPUT_INPUT (IDS_STRING + 20)
#define IDS_INPUT_MAPPING (IDS_STRING + 22)
#define IDS_INPUT_STATE (IDS_STRING + 24)
#define IDS_INPUT_INP_PLAYER (IDS_STRING + 26)
#define IDS_INPUT_INP_KEYBOARD (IDS_STRING + 28)
#define IDS_INPUT_INP_JOYSTICK (IDS_STRING + 30)
#define IDS_INPUT_INP_XARCADEL (IDS_STRING + 32)
#define IDS_INPUT_INP_XARCADER (IDS_STRING + 34)
#define IDS_INPUT_INP_HOTRODL (IDS_STRING + 36)
#define IDS_INPUT_INP_HOTRODR (IDS_STRING + 38)
#define IDS_INPUT_ANALOG_ABS (IDS_STRING + 40)
#define IDS_INPUT_ANALOG_AUTO (IDS_STRING + 42)
#define IDS_INPUT_ANALOG_NORMAL (IDS_STRING + 44)
#define IDS_INPUT_INPUT (IDS_STRING + 40)
#define IDS_INPUT_MAPPING (IDS_STRING + 42)
#define IDS_INPUT_STATE (IDS_STRING + 44)
#define IDS_INPUT_INP_PLAYER (IDS_STRING + 46)
#define IDS_INPUT_INP_KEYBOARD (IDS_STRING + 48)
#define IDS_INPUT_INP_JOYSTICK (IDS_STRING + 50)
#define IDS_INPUT_INP_XARCADEL (IDS_STRING + 52)
#define IDS_INPUT_INP_XARCADER (IDS_STRING + 54)
#define IDS_INPUT_INP_HOTRODL (IDS_STRING + 56)
#define IDS_INPUT_INP_HOTRODR (IDS_STRING + 58)
#define IDS_INPUT_ANALOG_ABS (IDS_STRING + 60)
#define IDS_INPUT_ANALOG_AUTO (IDS_STRING + 62)
#define IDS_INPUT_ANALOG_NORMAL (IDS_STRING + 64)
#define IDS_DIP_GROUP (IDS_STRING + 50)
#define IDS_DIP_SETTING (IDS_STRING + 52)
#define IDS_DIP_GROUP (IDS_STRING + 80)
#define IDS_DIP_SETTING (IDS_STRING + 82)
#define IDS_INPSET_MOVENAME (IDS_STRING + 60)
#define IDS_INPSET_MOVE (IDS_STRING + 62)
#define IDS_INPSET_WAITING (IDS_STRING + 64)
#define IDS_INPSET_MOVENAME (IDS_STRING + 100)
#define IDS_INPSET_MOVE (IDS_STRING + 102)
#define IDS_INPSET_WAITING (IDS_STRING + 104)
#define IDS_MEMCARD_CREATE (IDS_STRING + 70)
#define IDS_MEMCARD_SELECT (IDS_STRING + 72)
#define IDS_MEMCARD_CREATE (IDS_STRING + 120)
#define IDS_MEMCARD_SELECT (IDS_STRING + 122)
#define IDS_PROGRESS_LOADING (IDS_STRING + 80)
#define IDS_PROGRESS_LOADING (IDS_STRING + 140)
#define IDS_REPLAY_RECORD (IDS_STRING + 82)
#define IDS_REPLAY_REPLAY (IDS_STRING + 84)
#define IDS_REPLAY_RECORD (IDS_STRING + 150)
#define IDS_REPLAY_REPLAY (IDS_STRING + 152)
#define IDS_ROMS_SELECT_DIR (IDS_STRING + 90)
#define IDS_ROMS_SELECT_DIR (IDS_STRING + 160)
#define IDS_STATE_LOAD (IDS_STRING + 100)
#define IDS_STATE_SAVE (IDS_STRING + 102)
#define IDS_STATE_ACTIVESLOT (IDS_STRING + 104)
#define IDS_STATE_LOADED (IDS_STRING + 106)
#define IDS_STATE_LOAD_ERROR (IDS_STRING + 108)
#define IDS_STATE_SAVED (IDS_STRING + 110)
#define IDS_STATE_SAVE_ERROR (IDS_STRING + 112)
#define IDS_STATE_LOAD (IDS_STRING + 180)
#define IDS_STATE_SAVE (IDS_STRING + 182)
#define IDS_STATE_ACTIVESLOT (IDS_STRING + 184)
#define IDS_STATE_LOADED (IDS_STRING + 186)
#define IDS_STATE_LOAD_ERROR (IDS_STRING + 188)
#define IDS_STATE_SAVED (IDS_STRING + 190)
#define IDS_STATE_SAVE_ERROR (IDS_STRING + 192)
#define IDS_DAT_GENERATE (IDS_STRING + 120)
#define IDS_SCRN_NOGAME (IDS_STRING + 122)
#define IDS_DAT_GENERATE (IDS_STRING + 220)
#define IDS_SCRN_NOGAME (IDS_STRING + 222)
#define IDS_NETPLAY_START (IDS_STRING + 130)
#define IDS_NETPLAY_START_YOU (IDS_STRING + 132)
#define IDS_NETPLAY_START_TOTAL (IDS_STRING + 134)
#define IDS_NETPLAY_DROP (IDS_STRING + 136)
#define IDS_NETPLAY_TOOMUCH (IDS_STRING + 138)
#define IDS_NETPLAY_START (IDS_STRING + 240)
#define IDS_NETPLAY_START_YOU (IDS_STRING + 242)
#define IDS_NETPLAY_START_TOTAL (IDS_STRING + 244)
#define IDS_NETPLAY_DROP (IDS_STRING + 246)
#define IDS_NETPLAY_TOOMUCH (IDS_STRING + 248)
#define IDS_SSHOT_SAVED (IDS_STRING + 150)
#define IDS_SSHOT_ERROR (IDS_STRING + 152)
#define IDS_SSHOT_SAVED (IDS_STRING + 260)
#define IDS_SSHOT_ERROR (IDS_STRING + 262)
#define IDS_SOUND_NOVOLUME (IDS_STRING + 160)
#define IDS_SOUND_VOLUMESET (IDS_STRING + 162)
#define IDS_SOUND_MUTE (IDS_STRING + 164)
#define IDS_SOUND_MUTE_OFF (IDS_STRING + 166)
#define IDS_SOUND_NOVOLUME (IDS_STRING + 280)
#define IDS_SOUND_VOLUMESET (IDS_STRING + 282)
#define IDS_SOUND_MUTE (IDS_STRING + 284)
#define IDS_SOUND_MUTE_OFF (IDS_STRING + 286)
#define IDS_DISK_REPLAY (IDS_STRING + 180)
#define IDS_DISK_THIS_REPLAY (IDS_STRING + 182)
#define IDS_DISK_FILE_REPLAY (IDS_STRING + 184)
#define IDS_DISK_STATE (IDS_STRING + 186)
#define IDS_DISK_THIS_STATE (IDS_STRING + 188)
#define IDS_DISK_FILE_STATE (IDS_STRING + 190)
#define IDS_DISK_SOUND (IDS_STRING + 192)
#define IDS_DISK_THIS_SOUND (IDS_STRING + 194)
#define IDS_DISK_FILE_SOUND (IDS_STRING + 196)
#define IDS_DISK_FILE_CARD (IDS_STRING + 198)
#define IDS_DISK_ALL_CARD (IDS_STRING + 200)
#define IDS_DISK_ALL_DAT (IDS_STRING + 202)
#define IDS_DISK_TEXT (IDS_STRING + 204)
#define IDS_DISK_FILE_PATCH (IDS_STRING + 206)
#define IDS_DISK_REPLAY (IDS_STRING + 300)
#define IDS_DISK_THIS_REPLAY (IDS_STRING + 302)
#define IDS_DISK_FILE_REPLAY (IDS_STRING + 304)
#define IDS_DISK_STATE (IDS_STRING + 306)
#define IDS_DISK_THIS_STATE (IDS_STRING + 308)
#define IDS_DISK_FILE_STATE (IDS_STRING + 310)
#define IDS_DISK_SOUND (IDS_STRING + 312)
#define IDS_DISK_THIS_SOUND (IDS_STRING + 314)
#define IDS_DISK_FILE_SOUND (IDS_STRING + 316)
#define IDS_DISK_FILE_CARD (IDS_STRING + 318)
#define IDS_DISK_ALL_CARD (IDS_STRING + 320)
#define IDS_DISK_ALL_DAT (IDS_STRING + 322)
#define IDS_DISK_TEXT (IDS_STRING + 324)
#define IDS_DISK_FILE_PATCH (IDS_STRING + 326)
#define IDS_DISK_SAVEREPORT (IDS_STRING + 220)
#define IDS_DISK_SAVEREPORT (IDS_STRING + 340)
#define IDS_GAMELANG_LOAD (IDS_STRING + 230)
#define IDS_GAMELANG_EXPORT (IDS_STRING + 232)
#define IDS_GAMELANG_LOAD (IDS_STRING + 360)
#define IDS_GAMELANG_EXPORT (IDS_STRING + 362)
#define IDS_ROMINFO_DIALOGTITLE (IDS_STRING + 240)
#define IDS_ROMINFO_ROMS (IDS_STRING + 242)
#define IDS_ROMINFO_SAMPLES (IDS_STRING + 244)
#define IDS_ROMINFO_DIALOGTITLE (IDS_STRING + 400)
#define IDS_ROMINFO_ROMS (IDS_STRING + 402)
#define IDS_ROMINFO_SAMPLES (IDS_STRING + 404)
#define IDS_ROMINFO_NAME (IDS_STRING + 406)
#define IDS_ROMINFO_SIZE (IDS_STRING + 408)
#define IDS_ROMINFO_CRC32 (IDS_STRING + 410)
#define IDS_ROMINFO_TYPE (IDS_STRING + 412)
#define IDS_ROMINFO_FLAGS (IDS_STRING + 414)
#define IDS_ROMINFO_ESSENTIAL (IDS_STRING + 416)
#define IDS_ROMINFO_OPTIONAL (IDS_STRING + 418)
#define IDS_ROMINFO_PROGRAM (IDS_STRING + 420)
#define IDS_ROMINFO_GRAPHICS (IDS_STRING + 422)
#define IDS_ROMINFO_SOUND (IDS_STRING + 424)
#define IDS_ROMINFO_BIOS (IDS_STRING + 426)
#define IDS_ROMINFO_NODUMP (IDS_STRING + 428)
#define IDS_SPATH_PREVIEW (IDS_STRING + 270)
#define IDS_SPATH_TITLES (IDS_STRING + 272)
#define IDS_SPATH_CHEATS (IDS_STRING + 274)
#define IDS_SPATH_HISCORE (IDS_STRING + 276)
#define IDS_SPATH_SAMPLES (IDS_STRING + 278)
#define IDS_SPATH_IPS (IDS_STRING + 280)
#define IDS_SPATH_NGCD_ISOS (IDS_STRING + 282)
#define IDS_SPATH_NGCD_COVERS (IDS_STRING + 284)
#define IDS_SPATH_PREVIEW (IDS_STRING + 450)
#define IDS_SPATH_TITLES (IDS_STRING + 452)
#define IDS_SPATH_CHEATS (IDS_STRING + 454)
#define IDS_SPATH_HISCORE (IDS_STRING + 456)
#define IDS_SPATH_SAMPLES (IDS_STRING + 458)
#define IDS_SPATH_IPS (IDS_STRING + 460)
#define IDS_SPATH_NGCD_ISOS (IDS_STRING + 462)
#define IDS_SPATH_NGCD_COVERS (IDS_STRING + 464)
#define IDS_ROMPATH_1 (IDS_STRING + 300)
#define IDS_ROMPATH_2 (IDS_STRING + 302)
#define IDS_ROMPATH_3 (IDS_STRING + 304)
#define IDS_ROMPATH_4 (IDS_STRING + 306)
#define IDS_ROMPATH_5 (IDS_STRING + 308)
#define IDS_ROMPATH_6 (IDS_STRING + 310)
#define IDS_ROMPATH_7 (IDS_STRING + 312)
#define IDS_ROMPATH_8 (IDS_STRING + 314)
#define IDS_ROMPATH_1 (IDS_STRING + 480)
#define IDS_ROMPATH_2 (IDS_STRING + 482)
#define IDS_ROMPATH_3 (IDS_STRING + 484)
#define IDS_ROMPATH_4 (IDS_STRING + 486)
#define IDS_ROMPATH_5 (IDS_STRING + 488)
#define IDS_ROMPATH_6 (IDS_STRING + 490)
#define IDS_ROMPATH_7 (IDS_STRING + 492)
#define IDS_ROMPATH_8 (IDS_STRING + 494)
#define IDS_PRESET_SAVED (IDS_STRING + 320)
#define IDS_PRESET_SAVED (IDS_STRING + 520)
#define IDS_CD_SELECT_IMAGE (IDS_STRING + 330)
#define IDS_CD_SELECT_IMAGE (IDS_STRING + 540)
#define IDS_SEL_FILTERS (IDS_STRING + 340)
#define IDS_SEL_HARDWARE (IDS_STRING + 342)
#define IDS_SEL_CAVE (IDS_STRING + 344)
#define IDS_SEL_CPS1 (IDS_STRING + 346)
#define IDS_SEL_CPS2 (IDS_STRING + 348)
#define IDS_SEL_CPS3 (IDS_STRING + 350)
#define IDS_SEL_NEOGEO (IDS_STRING + 352)
#define IDS_SEL_PGM (IDS_STRING + 354)
#define IDS_SEL_PSIKYO (IDS_STRING + 356)
#define IDS_SEL_SEGA (IDS_STRING + 358)
#define IDS_SEL_TAITO (IDS_STRING + 360)
#define IDS_SEL_TOAPLAN (IDS_STRING + 362)
#define IDS_SEL_MISCPRE90S (IDS_STRING + 364)
#define IDS_SEL_MISCPOST90S (IDS_STRING + 366)
#define IDS_SEL_MEGADRIVE (IDS_STRING + 368)
#define IDS_SEL_PACMAN (IDS_STRING + 370)
#define IDS_SEL_KONAMI (IDS_STRING + 372)
#define IDS_SEL_GALAXIAN (IDS_STRING + 374)
#define IDS_SEL_IREM (IDS_STRING + 376)
#define IDS_SEL_BOARDTYPE (IDS_STRING + 378)
#define IDS_SEL_BOOTLEG (IDS_STRING + 380)
#define IDS_SEL_PROTOTYPE (IDS_STRING + 382)
#define IDS_SEL_HACK (IDS_STRING + 384)
#define IDS_SEL_HOMEBREW (IDS_STRING + 386)
#define IDS_SEL_DEMO (IDS_STRING + 388)
#define IDS_SEL_GENUINE (IDS_STRING + 390)
#define IDS_SEL_FILTERS (IDS_STRING + 560)
#define IDS_SEL_HARDWARE (IDS_STRING + 562)
#define IDS_SEL_CAVE (IDS_STRING + 564)
#define IDS_SEL_CPS1 (IDS_STRING + 566)
#define IDS_SEL_CPS2 (IDS_STRING + 568)
#define IDS_SEL_CPS3 (IDS_STRING + 570)
#define IDS_SEL_NEOGEO (IDS_STRING + 572)
#define IDS_SEL_PGM (IDS_STRING + 574)
#define IDS_SEL_PSIKYO (IDS_STRING + 576)
#define IDS_SEL_SEGA (IDS_STRING + 578)
#define IDS_SEL_TAITO (IDS_STRING + 580)
#define IDS_SEL_TOAPLAN (IDS_STRING + 582)
#define IDS_SEL_MISCPRE90S (IDS_STRING + 584)
#define IDS_SEL_MISCPOST90S (IDS_STRING + 586)
#define IDS_SEL_MEGADRIVE (IDS_STRING + 588)
#define IDS_SEL_PACMAN (IDS_STRING + 590)
#define IDS_SEL_KONAMI (IDS_STRING + 592)
#define IDS_SEL_GALAXIAN (IDS_STRING + 594)
#define IDS_SEL_IREM (IDS_STRING + 596)
#define IDS_SEL_BOARDTYPE (IDS_STRING + 598)
#define IDS_SEL_BOOTLEG (IDS_STRING + 600)
#define IDS_SEL_PROTOTYPE (IDS_STRING + 602)
#define IDS_SEL_HACK (IDS_STRING + 604)
#define IDS_SEL_HOMEBREW (IDS_STRING + 606)
#define IDS_SEL_DEMO (IDS_STRING + 608)
#define IDS_SEL_GENUINE (IDS_STRING + 610)
#define IDS_SEL_SETSTATUS (IDS_STRING + 612)
#define IDS_GENRE (IDS_STRING + 410)
#define IDS_GENRE_HORSHOOT (IDS_STRING + 412)
#define IDS_GENRE_VERSHOOT (IDS_STRING + 414)
#define IDS_GENRE_SCRFIGHT (IDS_STRING + 416)
#define IDS_GENRE_VSFIGHT (IDS_STRING + 418)
#define IDS_GENRE_BIOS (IDS_STRING + 420)
#define IDS_GENRE_BREAKOUT (IDS_STRING + 422)
#define IDS_GENRE_CASINO (IDS_STRING + 424)
#define IDS_GENRE_BALLPADDLE (IDS_STRING + 426)
#define IDS_GENRE_MAZE (IDS_STRING + 428)
#define IDS_GENRE_MINIGAMES (IDS_STRING + 430)
#define IDS_GENRE_PINBALL (IDS_STRING + 432)
#define IDS_GENRE_PLATFORM (IDS_STRING + 434)
#define IDS_GENRE_PUZZLE (IDS_STRING + 436)
#define IDS_GENRE_QUIZ (IDS_STRING + 438)
#define IDS_GENRE_SPORTSMISC (IDS_STRING + 440)
#define IDS_GENRE_SPORTSFOOTBALL (IDS_STRING + 442)
#define IDS_GENRE_MISC (IDS_STRING + 444)
#define IDS_GENRE_MAHJONG (IDS_STRING + 446)
#define IDS_GENRE_RACING (IDS_STRING + 448)
#define IDS_GENRE_SHOOT (IDS_STRING + 450)
#define IDS_GENRE (IDS_STRING + 650)
#define IDS_GENRE_HORSHOOT (IDS_STRING + 652)
#define IDS_GENRE_VERSHOOT (IDS_STRING + 654)
#define IDS_GENRE_SCRFIGHT (IDS_STRING + 656)
#define IDS_GENRE_VSFIGHT (IDS_STRING + 658)
#define IDS_GENRE_BIOS (IDS_STRING + 660)
#define IDS_GENRE_BREAKOUT (IDS_STRING + 662)
#define IDS_GENRE_CASINO (IDS_STRING + 664)
#define IDS_GENRE_BALLPADDLE (IDS_STRING + 666)
#define IDS_GENRE_MAZE (IDS_STRING + 668)
#define IDS_GENRE_MINIGAMES (IDS_STRING + 670)
#define IDS_GENRE_PINBALL (IDS_STRING + 672)
#define IDS_GENRE_PLATFORM (IDS_STRING + 674)
#define IDS_GENRE_PUZZLE (IDS_STRING + 676)
#define IDS_GENRE_QUIZ (IDS_STRING + 678)
#define IDS_GENRE_SPORTSMISC (IDS_STRING + 680)
#define IDS_GENRE_SPORTSFOOTBALL (IDS_STRING + 682)
#define IDS_GENRE_MISC (IDS_STRING + 684)
#define IDS_GENRE_MAHJONG (IDS_STRING + 686)
#define IDS_GENRE_RACING (IDS_STRING + 688)
#define IDS_GENRE_SHOOT (IDS_STRING + 690)
#define IDS_FAMILY (IDS_STRING + 470)
#define IDS_FAMILY_MSLUG (IDS_STRING + 472)
#define IDS_FAMILY_SF (IDS_STRING + 474)
#define IDS_FAMILY_KOF (IDS_STRING + 476)
#define IDS_FAMILY_DSTLK (IDS_STRING + 478)
#define IDS_FAMILY_FATFURY (IDS_STRING + 480)
#define IDS_FAMILY_SAMSHO (IDS_STRING + 482)
#define IDS_FAMILY_19XX (IDS_STRING + 484)
#define IDS_FAMILY_SONICWI (IDS_STRING + 486)
#define IDS_FAMILY_PWRINST (IDS_STRING + 488)
#define IDS_FAMILY_OTHER (IDS_STRING + 490)
#define IDS_FAMILY (IDS_STRING + 740)
#define IDS_FAMILY_MSLUG (IDS_STRING + 742)
#define IDS_FAMILY_SF (IDS_STRING + 744)
#define IDS_FAMILY_KOF (IDS_STRING + 746)
#define IDS_FAMILY_DSTLK (IDS_STRING + 748)
#define IDS_FAMILY_FATFURY (IDS_STRING + 750)
#define IDS_FAMILY_SAMSHO (IDS_STRING + 752)
#define IDS_FAMILY_19XX (IDS_STRING + 754)
#define IDS_FAMILY_SONICWI (IDS_STRING + 756)
#define IDS_FAMILY_PWRINST (IDS_STRING + 758)
#define IDS_FAMILY_OTHER (IDS_STRING + 760)
#define IDS_IPSMANAGER_TITLE (IDS_STRING + 510)
#define IDS_IPSMANAGER_TITLE (IDS_STRING + 800)
#define IDS_MENU_0 (IDS_STRING + 520)
#define IDS_MENU_1 (IDS_STRING + 522)
#define IDS_MENU_2 (IDS_STRING + 524)
#define IDS_MENU_3 (IDS_STRING + 526)
#define IDS_MENU_4 (IDS_STRING + 528)
#define IDS_MENU_5 (IDS_STRING + 530)
#define IDS_NGCD_DIAG_TITLE (IDS_STRING + 810)
#define IDS_NGCD_TITLE (IDS_STRING + 812)
#define IDS_NGCD_NGCDID (IDS_STRING + 814)
#define IDS_ERR_ERROR (IDS_ERROR + 0)
#define IDS_ERR_WARNING (IDS_ERROR + 2)
#define IDS_ERR_INFORMATION (IDS_ERROR + 4)
#define IDS_ERR_UNKNOWN (IDS_ERROR + 6)
#define IDS_MENU_0 (IDS_STRING + 840)
#define IDS_MENU_1 (IDS_STRING + 842)
#define IDS_MENU_2 (IDS_STRING + 844)
#define IDS_MENU_3 (IDS_STRING + 846)
#define IDS_MENU_4 (IDS_STRING + 848)
#define IDS_MENU_5 (IDS_STRING + 840)
#define IDS_MENU_6 (IDS_STRING + 842)
#define IDS_ERR_LOAD_OK (IDS_ERROR + 10)
#define IDS_ERR_LOAD_PROBLEM (IDS_ERROR + 12)
#define IDS_ERR_LOAD_NODATA (IDS_ERROR + 14)
#define IDS_ERR_LOAD_ESS_MISS (IDS_ERROR + 16)
#define IDS_ERR_LOAD_ESS_BAD (IDS_ERROR + 18)
#define IDS_ERR_LOAD_DATA_MISS (IDS_ERROR + 20)
#define IDS_ERR_LOAD_DATA_BAD (IDS_ERROR + 22)
#define IDS_ERR_LOAD_FOUND (IDS_ERROR + 24)
#define IDS_ERR_LOAD_NOTFOUND (IDS_ERROR + 26)
#define IDS_ERR_LOAD_INVALID (IDS_ERROR + 28)
#define IDS_ERR_LOAD_CRC (IDS_ERROR + 30)
#define IDS_ERR_LOAD_SMALL (IDS_ERROR + 32)
#define IDS_ERR_LOAD_LARGE (IDS_ERROR + 34)
#define IDS_ERR_LOAD_DET_ESS (IDS_ERROR + 36)
#define IDS_ERR_LOAD_DET_PRG (IDS_ERROR + 38)
#define IDS_ERR_LOAD_DET_BIOS (IDS_ERROR + 40)
#define IDS_ERR_LOAD_DET_GRA (IDS_ERROR + 42)
#define IDS_ERR_LOAD_DET_SND (IDS_ERROR + 44)
#define IDS_ERR_LOAD_DET_ROM (IDS_ERROR + 46)
#define IDS_ERR_LOAD_REQUEST (IDS_ERROR + 48)
#define IDS_ERR_LOAD_DISK (IDS_ERROR + 50)
#define IDS_ERR_LOAD_DISK_CRC (IDS_ERROR + 52)
#define IDS_LANG_ENGLISH_US (IDS_STRING + 900)
#define IDS_LANG_SIMP_CHINESE (IDS_STRING + 902)
#define IDS_LANG_TRAD_CHINESE (IDS_STRING + 904)
#define IDS_LANG_JAPANESE (IDS_STRING + 906)
#define IDS_LANG_KOREAN (IDS_STRING + 908)
#define IDS_LANG_FRENCH (IDS_STRING + 910)
#define IDS_LANG_SPANISH (IDS_STRING + 912)
#define IDS_LANG_ITALIAN (IDS_STRING + 914)
#define IDS_LANG_GERMAN (IDS_STRING + 916)
#define IDS_LANG_PORTUGUESE (IDS_STRING + 918)
#define IDS_LANG_POLISH (IDS_STRING + 920)
#define IDS_LANG_HUNGARIAN (IDS_STRING + 922)
#define IDS_ERR_BURN_INIT (IDS_ERROR + 60)
#define IDS_CLONE_OF (IDS_STRING + 1400)
#define IDS_ROMS_FROM_1 (IDS_STRING + 1402)
#define IDS_ROMS_FROM_2 (IDS_STRING + 1404)
#define IDS_BOARD_ROMS_FROM (IDS_STRING + 1406)
#define IDS_SAMPLES_FROM (IDS_STRING + 1408)
#define IDS_NUM_PLAYERS (IDS_STRING + 1410)
#define IDS_NUM_PLAYERS_MAX (IDS_STRING + 1412)
#define IDS_HARDWARE_DESC (IDS_STRING + 1414)
#define IDS_MVS_CARTRIDGE (IDS_STRING + 1416)
#define IDS_HISCORES_SUPPORTED (IDS_STRING + 1418)
#define IDS_CARTRIDGE (IDS_STRING + 1420)
#define IDS_HARDWARE (IDS_STRING + 1422)
#define IDS_EMPTY (IDS_STRING + 1424)
#define IDS_ERR_UI_NOSUPPORT (IDS_ERROR + 70)
#define IDS_ERR_UI_WINDOW (IDS_ERROR + 72)
#define IDS_ERR_UI_MODULE (IDS_ERROR + 74)
#define IDS_ERR_UI_TRIPLE (IDS_ERROR + 76)
#define IDS_ERR_UI_FULL_NOMODE (IDS_ERROR + 78)
#define IDS_ERR_UI_FULL_PROBLEM (IDS_ERROR + 80)
#define IDS_ERR_UI_FULL_CUSTRES (IDS_ERROR + 82)
#define IDS_ERR_ERROR (IDS_ERROR + 0)
#define IDS_ERR_WARNING (IDS_ERROR + 2)
#define IDS_ERR_INFORMATION (IDS_ERROR + 4)
#define IDS_ERR_UNKNOWN (IDS_ERROR + 6)
#define IDS_ERR_DISK_CREATE (IDS_ERROR + 90)
#define IDS_ERR_DISK_LOAD (IDS_ERROR + 92)
#define IDS_ERR_DISK_UNAVAIL (IDS_ERROR + 94)
#define IDS_ERR_DISK_TOONEW (IDS_ERROR + 96)
#define IDS_ERR_DISK_TOOOLD (IDS_ERROR + 98)
#define IDS_ERR_LOAD_OK (IDS_ERROR + 10)
#define IDS_ERR_LOAD_PROBLEM (IDS_ERROR + 12)
#define IDS_ERR_LOAD_NODATA (IDS_ERROR + 14)
#define IDS_ERR_LOAD_ESS_MISS (IDS_ERROR + 16)
#define IDS_ERR_LOAD_ESS_BAD (IDS_ERROR + 18)
#define IDS_ERR_LOAD_DATA_MISS (IDS_ERROR + 20)
#define IDS_ERR_LOAD_DATA_BAD (IDS_ERROR + 22)
#define IDS_ERR_LOAD_FOUND (IDS_ERROR + 24)
#define IDS_ERR_LOAD_NOTFOUND (IDS_ERROR + 26)
#define IDS_ERR_LOAD_INVALID (IDS_ERROR + 28)
#define IDS_ERR_LOAD_CRC (IDS_ERROR + 30)
#define IDS_ERR_LOAD_SMALL (IDS_ERROR + 32)
#define IDS_ERR_LOAD_LARGE (IDS_ERROR + 34)
#define IDS_ERR_LOAD_DET_ESS (IDS_ERROR + 36)
#define IDS_ERR_LOAD_DET_PRG (IDS_ERROR + 38)
#define IDS_ERR_LOAD_DET_BIOS (IDS_ERROR + 40)
#define IDS_ERR_LOAD_DET_GRA (IDS_ERROR + 42)
#define IDS_ERR_LOAD_DET_SND (IDS_ERROR + 44)
#define IDS_ERR_LOAD_DET_ROM (IDS_ERROR + 46)
#define IDS_ERR_LOAD_REQUEST (IDS_ERROR + 48)
#define IDS_ERR_LOAD_DISK (IDS_ERROR + 50)
#define IDS_ERR_LOAD_DISK_CRC (IDS_ERROR + 52)
#define IDS_ERR_BURN_INIT (IDS_ERROR + 60)
#define IDS_ERR_UI_NOSUPPORT (IDS_ERROR + 70)
#define IDS_ERR_UI_WINDOW (IDS_ERROR + 72)
#define IDS_ERR_UI_MODULE (IDS_ERROR + 74)
#define IDS_ERR_UI_TRIPLE (IDS_ERROR + 76)
#define IDS_ERR_UI_FULL_NOMODE (IDS_ERROR + 78)
#define IDS_ERR_UI_FULL_PROBLEM (IDS_ERROR + 80)
#define IDS_ERR_UI_FULL_CUSTRES (IDS_ERROR + 82)
#define IDS_ERR_DISK_CREATE (IDS_ERROR + 90)
#define IDS_ERR_DISK_LOAD (IDS_ERROR + 92)
#define IDS_ERR_DISK_UNAVAIL (IDS_ERROR + 94)
#define IDS_ERR_DISK_TOONEW (IDS_ERROR + 96)
#define IDS_ERR_DISK_TOOOLD (IDS_ERROR + 98)
#define IDS_ERR_NO_NETPLAYDLL (IDS_ERROR + 110)
#define IDS_ERR_NO_DRIVER_SELECTED (IDS_ERROR + 112)
#define IDS_ERR_NO_DRIVER_SEL_SLOT1 (IDS_ERROR + 114)
#define IDS_ERR_NON_WORKING (IDS_ERROR + 116)
#define IDS_ERR_CDEMU_INI_FAIL (IDS_ERROR + 118)

View File

@ -471,7 +471,7 @@ static int SelListMake()
// Update the status info
TCHAR szRomsAvailableInfo[128] = _T("");
_stprintf(szRomsAvailableInfo, _T("Showing %i of %i sets [%i Unavailable sets]"), nTmpDrvCount, nBurnDrvCount - 3, nMissingDrvCount);
_stprintf(szRomsAvailableInfo, FBALoadStringEx(hAppInst, IDS_SEL_SETSTATUS, true), nTmpDrvCount, nBurnDrvCount - 3, nMissingDrvCount);
SendDlgItemMessage(hSelDlg, IDC_DRVCOUNT, WM_SETTEXT, 0, (LPARAM)(LPCTSTR)szRomsAvailableInfo);
return 0;
@ -556,7 +556,9 @@ static void SelOkay()
#if NON_WORKING_PROMPT_ON_LOAD
if (!CheckWorkingStatus(nSelect)) {
if (MessageBox(hSelDlg, _T("This game isn't working. Load it anyway?"), _T("Warning!"), MB_YESNO | MB_DEFBUTTON2 | MB_ICONWARNING) == IDNO) {
TCHAR szWarningText[1024];
_stprintf(szWarningText, _T("%s"), FBALoadStringEx(hAppInst, IDS_ERR_WARNING, true));
if (MessageBox(hSelDlg, FBALoadStringEx(hAppInst, IDS_ERR_NON_WORKING, true), szWarningText, MB_YESNO | MB_DEFBUTTON2 | MB_ICONWARNING) == IDNO) {
return;
}
}
@ -1580,7 +1582,7 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lP
int nOldDrvSelect = nBurnDrvActive;
TCHAR* pszName = BurnDrvGetText(DRV_PARENT);
_stprintf(szItemText + _tcslen(szItemText), _T(" (clone of %s"), BurnDrvGetText(DRV_PARENT));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_CLONE_OF, true), BurnDrvGetText(DRV_PARENT));
for (nBurnDrvActive = 0; nBurnDrvActive < nBurnDrvCount; nBurnDrvActive++) {
if (!_tcsicmp(pszName, BurnDrvGetText(DRV_NAME))) {
@ -1589,19 +1591,19 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lP
}
if (nBurnDrvActive < nBurnDrvCount) {
if (BurnDrvGetText(DRV_PARENT)) {
_stprintf(szItemText + _tcslen(szItemText), _T(", uses ROMs from %s"), BurnDrvGetText(DRV_PARENT));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_ROMS_FROM_1, true), BurnDrvGetText(DRV_PARENT));
}
}
nBurnDrvActive = nOldDrvSelect;
bBracket = true;
} else {
if (BurnDrvGetTextA(DRV_PARENT)) {
_stprintf(szItemText + _tcslen(szItemText), _T("%suses ROMs from %s"), bBracket ? _T(", ") : _T(" ("), BurnDrvGetText(DRV_PARENT));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_ROMS_FROM_2, true), bBracket ? _T(", ") : _T(" ("), BurnDrvGetText(DRV_PARENT));
bBracket = true;
}
}
if (BurnDrvGetTextA(DRV_SAMPLENAME)) {
_stprintf(szItemText + _tcslen(szItemText), _T("%suses samples from %s"), bBracket ? _T(", ") : _T(" ("), BurnDrvGetText(DRV_SAMPLENAME));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_SAMPLES_FROM, true), bBracket ? _T(", ") : _T(" ("), BurnDrvGetText(DRV_SAMPLENAME));
bBracket = true;
}
if (bBracket) {
@ -1615,29 +1617,31 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lP
bool bUseInfo = false;
if (BurnDrvGetFlags() & BDF_PROTOTYPE) {
_stprintf(szItemText + _tcslen(szItemText), _T("prototype"));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_SEL_PROTOTYPE, true));
bUseInfo = true;
}
if (BurnDrvGetFlags() & BDF_BOOTLEG) {
_stprintf(szItemText + _tcslen(szItemText), _T("%sbootleg"), bUseInfo ? _T(", ") : _T(""));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_SEL_BOOTLEG, true), bUseInfo ? _T(", ") : _T(""));
bUseInfo = true;
}
if (BurnDrvGetFlags() & BDF_HACK) {
_stprintf(szItemText + _tcslen(szItemText), _T("%shack"), bUseInfo ? _T(", ") : _T(""));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_SEL_HACK, true), bUseInfo ? _T(", ") : _T(""));
bUseInfo = true;
}
if (BurnDrvGetFlags() & BDF_HOMEBREW) {
_stprintf(szItemText + _tcslen(szItemText), _T("%shomebrew"), bUseInfo ? _T(", ") : _T(""));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_SEL_HOMEBREW, true), bUseInfo ? _T(", ") : _T(""));
bUseInfo = true;
}
if (BurnDrvGetFlags() & BDF_DEMO) {
_stprintf(szItemText + _tcslen(szItemText), _T("%sdemo"), bUseInfo ? _T(", ") : _T(""));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_SEL_DEMO, true), bUseInfo ? _T(", ") : _T(""));
bUseInfo = true;
}
_stprintf(szItemText + _tcslen(szItemText), _T("%s%i player%s"), bUseInfo ? _T(", ") : _T(""), BurnDrvGetMaxPlayers(), (BurnDrvGetMaxPlayers() != 1) ? _T("s max") : _T(""));
TCHAR szPlayersMax[100];
_stprintf(szPlayersMax, FBALoadStringEx(hAppInst, IDS_NUM_PLAYERS_MAX, true));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_NUM_PLAYERS, true), bUseInfo ? _T(", ") : _T(""), BurnDrvGetMaxPlayers(), (BurnDrvGetMaxPlayers() != 1) ? szPlayersMax : _T(""));
bUseInfo = true;
if (BurnDrvGetText(DRV_BOARDROM)) {
_stprintf(szItemText + _tcslen(szItemText), _T("%suses board-ROMs from %s"), bUseInfo ? _T(", ") : _T(""), BurnDrvGetText(DRV_BOARDROM));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_BOARD_ROMS_FROM, true), bUseInfo ? _T(", ") : _T(""), BurnDrvGetText(DRV_BOARDROM));
SendMessage(hInfoText[i], WM_SETTEXT, (WPARAM)0, (LPARAM)szItemText);
EnableWindow(hInfoLabel[i], TRUE);
bUseInfo = true;
@ -1647,7 +1651,11 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lP
break;
}
case 2: {
_stprintf(szItemText, _T("%s (%s, %s hardware)"), BurnDrvGetTextA(DRV_MANUFACTURER) ? BurnDrvGetText(nGetTextFlags | DRV_MANUFACTURER) : _T("unknown"), BurnDrvGetText(DRV_DATE), ((BurnDrvGetHardwareCode() & HARDWARE_SNK_MVS) == HARDWARE_SNK_MVS) ? _T("Neo Geo MVS Cartidge") : BurnDrvGetText(nGetTextFlags | DRV_SYSTEM));
TCHAR szUnknown[100];
TCHAR szCartridge[100];
_stprintf(szUnknown, FBALoadStringEx(hAppInst, IDS_ERR_UNKNOWN, true));
_stprintf(szCartridge, FBALoadStringEx(hAppInst, IDS_MVS_CARTRIDGE, true));
_stprintf(szItemText, FBALoadStringEx(hAppInst, IDS_HARDWARE_DESC, true), BurnDrvGetTextA(DRV_MANUFACTURER) ? BurnDrvGetText(nGetTextFlags | DRV_MANUFACTURER) : szUnknown, BurnDrvGetText(DRV_DATE), ((BurnDrvGetHardwareCode() & HARDWARE_SNK_MVS) == HARDWARE_SNK_MVS) ? szCartridge : BurnDrvGetText(nGetTextFlags | DRV_SYSTEM));
SendMessage(hInfoText[i], WM_SETTEXT, (WPARAM)0, (LPARAM)szItemText);
EnableWindow(hInfoLabel[i], TRUE);
break;
@ -1677,7 +1685,7 @@ static INT_PTR CALLBACK DialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lP
case 4: {
_stprintf(szItemText, _T("%s"), BurnDrvGetTextA(DRV_COMMENT) ? BurnDrvGetText(nGetTextFlags | DRV_COMMENT) : _T(""));
if (BurnDrvGetFlags() & BDF_HISCORE_SUPPORTED) {
_stprintf(szItemText + _tcslen(szItemText), _T("%shigh scores supported"), _tcslen(szItemText) ? _T(", ") : _T(""));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_HISCORES_SUPPORTED, true), _tcslen(szItemText) ? _T(", ") : _T(""));
}
SendMessage(hInfoText[i], WM_SETTEXT, (WPARAM)0, (LPARAM)szItemText);
EnableWindow(hInfoLabel[i], TRUE);
@ -1775,19 +1783,19 @@ static INT_PTR CALLBACK RomInfoDialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LP
memset(&LvCol, 0, sizeof(LvCol));
LvCol.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM;
LvCol.cx = 200;
LvCol.pszText = _T("Name");
LvCol.pszText = FBALoadStringEx(hAppInst, IDS_ROMINFO_NAME, true);
SendMessage(hList, LVM_INSERTCOLUMN , 0, (LPARAM)&LvCol);
LvCol.cx = 100;
LvCol.pszText = _T("Size (bytes)");
LvCol.pszText = FBALoadStringEx(hAppInst, IDS_ROMINFO_SIZE, true);
SendMessage(hList, LVM_INSERTCOLUMN , 1, (LPARAM)&LvCol);
LvCol.cx = 100;
LvCol.pszText = _T("CRC32");
LvCol.pszText = FBALoadStringEx(hAppInst, IDS_ROMINFO_CRC32, true);
SendMessage(hList, LVM_INSERTCOLUMN , 2, (LPARAM)&LvCol);
LvCol.cx = 200;
LvCol.pszText = _T("Type");
LvCol.pszText = FBALoadStringEx(hAppInst, IDS_ROMINFO_TYPE, true);
SendMessage(hList, LVM_INSERTCOLUMN , 3, (LPARAM)&LvCol);
LvCol.cx = 100;
LvCol.pszText = _T("Flags");
LvCol.pszText = FBALoadStringEx(hAppInst, IDS_ROMINFO_FLAGS, true);
SendMessage(hList, LVM_INSERTCOLUMN , 4, (LPARAM)&LvCol);
LvCol.cx = 100;
@ -1801,8 +1809,8 @@ static INT_PTR CALLBACK RomInfoDialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LP
char nLen[10] = "";
char nCrc[8] = "";
char *szRomName = NULL;
char Type[100] = "";
char FormatType[100] = "";
TCHAR Type[100] = _T("");
TCHAR FormatType[100] = _T("");
memset(&ri, 0, sizeof(ri));
@ -1829,24 +1837,24 @@ static INT_PTR CALLBACK RomInfoDialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LP
SendMessage(hList, LVM_SETITEM, 0, (LPARAM)&LvItem);
}
if (ri.nType & BRF_ESS) sprintf(Type, "%s, Essential", Type);
if (ri.nType & BRF_OPT) sprintf(Type, "%s, Optional", Type);
if (ri.nType & BRF_PRG) sprintf(Type, "%s, Program", Type);
if (ri.nType & BRF_GRA) sprintf(Type, "%s, Graphics", Type);
if (ri.nType & BRF_SND) sprintf(Type, "%s, Sound", Type);
if (ri.nType & BRF_BIOS) sprintf(Type, "%s, BIOS", Type);
if (ri.nType & BRF_ESS) _stprintf(Type, FBALoadStringEx(hAppInst, IDS_ROMINFO_ESSENTIAL, true), Type);
if (ri.nType & BRF_OPT) _stprintf(Type, FBALoadStringEx(hAppInst, IDS_ROMINFO_OPTIONAL, true), Type);
if (ri.nType & BRF_PRG) _stprintf(Type, FBALoadStringEx(hAppInst, IDS_ROMINFO_PROGRAM, true), Type);
if (ri.nType & BRF_GRA) _stprintf(Type, FBALoadStringEx(hAppInst, IDS_ROMINFO_GRAPHICS, true), Type);
if (ri.nType & BRF_SND) _stprintf(Type, FBALoadStringEx(hAppInst, IDS_ROMINFO_SOUND, true), Type);
if (ri.nType & BRF_BIOS) _stprintf(Type, FBALoadStringEx(hAppInst, IDS_ROMINFO_BIOS, true), Type);
for (int j = 0; j < 98; j++) {
FormatType[j] = Type[j + 2];
}
LvItem.iSubItem = 3;
LvItem.pszText = ANSIToTCHAR(FormatType, NULL, 0);
LvItem.pszText = FormatType;
SendMessage(hList, LVM_SETITEM, 0, (LPARAM)&LvItem);
LvItem.iSubItem = 4;
LvItem.pszText = _T("");
if (ri.nType & BRF_NODUMP) LvItem.pszText = _T("No Dump");
if (ri.nType & BRF_NODUMP) LvItem.pszText = FBALoadStringEx(hAppInst, IDS_ROMINFO_NODUMP, true);
SendMessage(hList, LVM_SETITEM, 0, (LPARAM)&LvItem);
RomPos++;
@ -1869,8 +1877,8 @@ static INT_PTR CALLBACK RomInfoDialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LP
char nLenBoard[10] = "";
char nCrcBoard[8] = "";
char *szBoardRomName = NULL;
char BoardType[100] = "";
char BoardFormatType[100] = "";
TCHAR BoardType[100] = _T("");
TCHAR BoardFormatType[100] = _T("");
memset(&riBoard, 0, sizeof(riBoard));
@ -1896,24 +1904,24 @@ static INT_PTR CALLBACK RomInfoDialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LP
SendMessage(hList, LVM_SETITEM, 0, (LPARAM)&LvItem);
}
if (riBoard.nType & BRF_ESS) sprintf(BoardType, "%s, Essential", BoardType);
if (riBoard.nType & BRF_OPT) sprintf(BoardType, "%s, Optional", BoardType);
if (riBoard.nType & BRF_PRG) sprintf(BoardType, "%s, Program", BoardType);
if (riBoard.nType & BRF_GRA) sprintf(BoardType, "%s, Graphics", BoardType);
if (riBoard.nType & BRF_SND) sprintf(BoardType, "%s, Sound", BoardType);
if (riBoard.nType & BRF_BIOS) sprintf(BoardType, "%s, BIOS", BoardType);
if (riBoard.nType & BRF_ESS) _stprintf(BoardType, FBALoadStringEx(hAppInst, IDS_ROMINFO_ESSENTIAL, true), BoardType);
if (riBoard.nType & BRF_OPT) _stprintf(BoardType, FBALoadStringEx(hAppInst, IDS_ROMINFO_OPTIONAL, true), BoardType);
if (riBoard.nType & BRF_PRG) _stprintf(BoardType, FBALoadStringEx(hAppInst, IDS_ROMINFO_PROGRAM, true), BoardType);
if (riBoard.nType & BRF_GRA) _stprintf(BoardType, FBALoadStringEx(hAppInst, IDS_ROMINFO_GRAPHICS, true), BoardType);
if (riBoard.nType & BRF_SND) _stprintf(BoardType, FBALoadStringEx(hAppInst, IDS_ROMINFO_SOUND, true), BoardType);
if (riBoard.nType & BRF_BIOS) _stprintf(BoardType, FBALoadStringEx(hAppInst, IDS_ROMINFO_BIOS, true), BoardType);
for (int k = 0; k < 98; k++) {
BoardFormatType[k] = BoardType[k + 2];
}
LvItem.iSubItem = 3;
LvItem.pszText = ANSIToTCHAR(BoardFormatType, NULL, 0);
LvItem.pszText = BoardFormatType;
SendMessage(hList, LVM_SETITEM, 0, (LPARAM)&LvItem);
LvItem.iSubItem = 4;
LvItem.pszText = _T("");
if (riBoard.nType & BRF_NODUMP) LvItem.pszText = _T("No Dump");
if (riBoard.nType & BRF_NODUMP) LvItem.pszText = FBALoadStringEx(hAppInst, IDS_ROMINFO_NODUMP, true);
SendMessage(hList, LVM_SETITEM, 0, (LPARAM)&LvItem);
RomPos++;
@ -1930,7 +1938,7 @@ static INT_PTR CALLBACK RomInfoDialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LP
memset(&LvCol, 0, sizeof(LvCol));
LvCol.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM;
LvCol.cx = 200;
LvCol.pszText = _T("Name");
LvCol.pszText = FBALoadStringEx(hAppInst, IDS_ROMINFO_NAME, true);
SendMessage(hList, LVM_INSERTCOLUMN , 0, (LPARAM)&LvCol);
memset(&LvItem, 0, sizeof(LvItem));
@ -2030,7 +2038,7 @@ static void UpdateInfoROMInfo()
int nOldDrvSelect = nBurnDrvActive;
TCHAR* pszName = BurnDrvGetText(DRV_PARENT);
_stprintf(szItemText + _tcslen(szItemText), _T(" (clone of %s"), BurnDrvGetText(DRV_PARENT));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_CLONE_OF, true), BurnDrvGetText(DRV_PARENT));
for (nBurnDrvActive = 0; nBurnDrvActive < nBurnDrvCount; nBurnDrvActive++) {
if (!_tcsicmp(pszName, BurnDrvGetText(DRV_NAME))) {
@ -2039,19 +2047,19 @@ static void UpdateInfoROMInfo()
}
if (nBurnDrvActive < nBurnDrvCount) {
if (BurnDrvGetText(DRV_PARENT)) {
_stprintf(szItemText + _tcslen(szItemText), _T(", uses ROMs from %s"), BurnDrvGetText(DRV_PARENT));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_ROMS_FROM_1, true), BurnDrvGetText(DRV_PARENT));
}
}
nBurnDrvActive = nOldDrvSelect;
bBracket = true;
} else {
if (BurnDrvGetTextA(DRV_PARENT)) {
_stprintf(szItemText + _tcslen(szItemText), _T("%suses ROMs from %s"), bBracket ? _T(", ") : _T(" ("), BurnDrvGetText(DRV_PARENT));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_ROMS_FROM_2, true), bBracket ? _T(", ") : _T(" ("), BurnDrvGetText(DRV_PARENT));
bBracket = true;
}
}
if (BurnDrvGetText(DRV_BOARDROM)) {
_stprintf(szItemText + _tcslen(szItemText), _T("%suses board-ROMs from %s"), bBracket ? _T(", ") : _T(" ("), BurnDrvGetText(DRV_BOARDROM));
_stprintf(szItemText + _tcslen(szItemText), FBALoadStringEx(hAppInst, IDS_BOARD_ROMS_FROM, true), bBracket ? _T(", ") : _T(" ("), BurnDrvGetText(DRV_BOARDROM));
bBracket = true;
}
if (bBracket) {
@ -2073,8 +2081,14 @@ static void UpdateInfoRelease()
int nGetTextFlags = nLoadMenuShowX & ASCIIONLY ? DRV_ASCIIONLY : 0;
TCHAR szItemText[256] = _T("");
_stprintf(szItemText, _T("%s (%s, %s %s)"), BurnDrvGetTextA(DRV_MANUFACTURER) ? BurnDrvGetText(nGetTextFlags | DRV_MANUFACTURER) : _T("unknown"), BurnDrvGetText(DRV_DATE),
BurnDrvGetText(nGetTextFlags | DRV_SYSTEM), (BurnDrvGetHardwareCode() & HARDWARE_PREFIX_CARTRIDGE) ? _T("cartridge") : _T("hardware"));
TCHAR szUnknown[100];
TCHAR szCartridge[100];
TCHAR szHardware[100];
_stprintf(szUnknown, FBALoadStringEx(hAppInst, IDS_ERR_UNKNOWN, true));
_stprintf(szCartridge, FBALoadStringEx(hAppInst, IDS_CARTRIDGE, true));
_stprintf(szHardware, FBALoadStringEx(hAppInst, IDS_HARDWARE, true));
_stprintf(szItemText, _T("%s (%s, %s %s)"), BurnDrvGetTextA(DRV_MANUFACTURER) ? BurnDrvGetText(nGetTextFlags | DRV_MANUFACTURER) : szUnknown, BurnDrvGetText(DRV_DATE),
BurnDrvGetText(nGetTextFlags | DRV_SYSTEM), (BurnDrvGetHardwareCode() & HARDWARE_PREFIX_CARTRIDGE) ? szCartridge : szHardware);
if (hInfoText[2]) {
SendMessage(hInfoText[2], WM_SETTEXT, (WPARAM)0, (LPARAM)szItemText);
@ -2158,7 +2172,7 @@ static int MVSpreviewUpdateSlot(int nSlot, HWND hDlg)
} else {
hMVSpreview[nSlot] = PNGLoadBitmap(hDlg, NULL, 72, 54, 4);
SendMessage(hInfoText[0], WM_SETTEXT, (WPARAM)0, (LPARAM)_T("Empty"));
SendMessage(hInfoText[0], WM_SETTEXT, (WPARAM)0, (LPARAM)FBALoadStringEx(hAppInst, IDS_EMPTY, true));
}
SendDlgItemMessage(hDlg, IDC_MVS_CART1 + nSlot, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM)hMVSpreview[nSlot]);

View File

@ -88,6 +88,18 @@ BEGIN
IDS_ROMINFO_DIALOGTITLE "Rom Information"
IDS_ROMINFO_ROMS "Rom Info"
IDS_ROMINFO_SAMPLES "Sample Info"
IDS_ROMINFO_NAME "Name"
IDS_ROMINFO_SIZE "Size (bytes)"
IDS_ROMINFO_CRC32 "CRC32"
IDS_ROMINFO_TYPE "Type"
IDS_ROMINFO_FLAGS "Flags"
IDS_ROMINFO_ESSENTIAL "%s, Essential"
IDS_ROMINFO_OPTIONAL "%s, Optional"
IDS_ROMINFO_PROGRAM "%s, Program"
IDS_ROMINFO_GRAPHICS "%s, Graphics"
IDS_ROMINFO_SOUND "%s, Sound"
IDS_ROMINFO_BIOS "%s, BIOS"
IDS_ROMINFO_NODUMP "%s, No Dump"
IDS_SPATH_PREVIEW "Previews"
IDS_SPATH_TITLES "Titles"
@ -137,6 +149,7 @@ BEGIN
IDS_SEL_HOMEBREW "Homebrew"
IDS_SEL_DEMO "Demo"
IDS_SEL_GENUINE "Genuine"
IDS_SEL_SETSTATUS "Showing %i of %i sets [%i Unavailable sets]"
IDS_GENRE "Genre"
IDS_GENRE_HORSHOOT "Shooter - Horizontal"
@ -174,14 +187,46 @@ BEGIN
IDS_IPSMANAGER_TITLE "IPS Patch Manager"
IDS_NGCD_DIAG_TITLE "%s%sNeo Geo CDZ%sSelect Game"
IDS_NGCD_TITLE "Title"
IDS_NGCD_NGCDID "NGCD-ID"
IDS_MENU_0 "&Arcade"
IDS_MENU_1 "&Other..."
IDS_MENU_2 "&Other Gamma value..."
IDS_MENU_3 "Adjust &CPU speed..."
IDS_MENU_4 "Load state from active slot (no %d)\tF9"
IDS_MENU_5 "Save state to active slot (no %d)\tF10"
IDS_MENU_6 "no game selected"
IDS_ERR_ERROR "Error"
IDS_LANG_ENGLISH_US "English (US)"
IDS_LANG_SIMP_CHINESE "Simplified Chinese"
IDS_LANG_TRAD_CHINESE "Traditional Chinese"
IDS_LANG_JAPANESE "Japanese"
IDS_LANG_KOREAN "Korean"
IDS_LANG_FRENCH "French"
IDS_LANG_SPANISH "Spanish"
IDS_LANG_ITALIAN "Italian"
IDS_LANG_GERMAN "German"
IDS_LANG_PORTUGUESE "Portuguese"
IDS_LANG_POLISH "Polish"
IDS_LANG_HUNGARIAN "Hungarian"
IDS_CLONE_OF " (clone of %s"
IDS_ROMS_FROM_1 ", uses ROMs from %s"
IDS_ROMS_FROM_2 "%suses ROMs from %s"
IDS_BOARD_ROMS_FROM "%suses board-ROMs from %s"
IDS_SAMPLES_FROM "%suses samples from %s"
IDS_NUM_PLAYERS "%s%i player%s"
IDS_NUM_PLAYERS_MAX "s max"
IDS_HARDWARE_DESC "%s (%s, %s hardware)"
IDS_MVS_CARTRIDGE "Neo Geo MVS Cartidge"
IDS_HISCORES_SUPPORTED "%shigh scores supported"
IDS_CARTRIDGE "cartridge"
IDS_HARDWARE "hardware"
IDS_EMPTY "Empty"
IDS_ERR_ERROR "Error"
IDS_ERR_WARNING "Warning"
IDS_ERR_INFORMATION "Information"
IDS_ERR_UNKNOWN "Unknown"
@ -228,4 +273,6 @@ BEGIN
IDS_ERR_NO_NETPLAYDLL "Error finding 'kailleraclient.dll'."
IDS_ERR_NO_DRIVER_SELECTED "No driver has been selected from the list."
IDS_ERR_NO_DRIVER_SEL_SLOT1 "No driver has been selected for slot 1."
IDS_ERR_NON_WORKING "This game isn't working. Load it anyway?"
IDS_ERR_CDEMU_INI_FAIL "Couldn't initialise CD emulation."
END