mirror of
https://github.com/holub/mame
synced 2025-04-19 15:11:37 +03:00
It's the end of uitext.c as we know it (and I feel fine)
This commit is contained in:
parent
df214d9c6c
commit
a62870621a
2
.gitattributes
vendored
2
.gitattributes
vendored
@ -890,8 +890,6 @@ src/emu/uigfx.h svneol=native#text/plain
|
||||
src/emu/uimenu.c svneol=native#text/plain
|
||||
src/emu/uimenu.h svneol=native#text/plain
|
||||
src/emu/uismall.png -text svneol=unset#image/png
|
||||
src/emu/uitext.c svneol=native#text/plain
|
||||
src/emu/uitext.h svneol=native#text/plain
|
||||
src/emu/validity.c svneol=native#text/plain
|
||||
src/emu/video.c svneol=native#text/plain
|
||||
src/emu/video.h svneol=native#text/plain
|
||||
|
108
src/emu/cheat.c
108
src/emu/cheat.c
@ -12,7 +12,6 @@
|
||||
#include "driver.h"
|
||||
#include "ui.h"
|
||||
#include "uimenu.h"
|
||||
#include "uitext.h"
|
||||
#include "machine/eeprom.h"
|
||||
#include "cheat.h"
|
||||
#include <ctype.h>
|
||||
@ -1675,9 +1674,9 @@ int cheat_menu(int selection)
|
||||
}
|
||||
|
||||
/********** MENU CONSTRUCION **********/
|
||||
menu_item[total++].text = ui_getstring(UI_enablecheat); // Enable/Disable a Cheat
|
||||
menu_item[total++].text = "Enable/Disable a Cheat"; // Enable/Disable a Cheat
|
||||
|
||||
menu_item[total++].text = ui_getstring(UI_addeditcheat); // Add/Edit a Cheat
|
||||
menu_item[total++].text = "Add/Edit a Cheat"; // Add/Edit a Cheat
|
||||
|
||||
switch(EXTRACT_FIELD(cheatOptions, SearchBox)) // Search a Cheat
|
||||
{
|
||||
@ -1694,13 +1693,13 @@ int cheat_menu(int selection)
|
||||
break;
|
||||
}
|
||||
|
||||
menu_item[total++].text = ui_getstring(UI_memorywatch); // Configure Watchpoints
|
||||
menu_item[total++].text = "Configure Watchpoints"; // Configure Watchpoints
|
||||
|
||||
menu_item[total++].text = ui_getstring(UI_reloaddatabase); // Reload Cheat Database
|
||||
menu_item[total++].text = "Reload Database"; // Reload Cheat Database
|
||||
|
||||
menu_item[total++].text = ui_getstring(UI_options); // Options
|
||||
menu_item[total++].text = "Options"; // Options
|
||||
|
||||
menu_item[total++].text = ui_getstring(UI_returntomain); // return to the MAME general menu
|
||||
menu_item[total++].text = "Return to Main Menu"; // return to the MAME general menu
|
||||
|
||||
menu_item[total].text = NULL; // terminate array
|
||||
|
||||
@ -2030,17 +2029,12 @@ static INT32 UserSelectValueMenu(int selection, CheatEntry * entry)
|
||||
|
||||
/* ----- print it ----- */
|
||||
if(TEST_FIELD(action->type, UserSelectBCD))
|
||||
sprintf(buf, "\t%s\n\t%.2X\n", ui_getstring(UI_search_select_value), displayValue);
|
||||
sprintf(buf, "\tSelect a value\n\t%.2X\n", displayValue);
|
||||
else
|
||||
sprintf(buf, "\t%s\n\t%.2X (%d)\n", ui_getstring(UI_search_select_value), displayValue, displayValue);
|
||||
sprintf(buf, "\tSelect a value\n\t%.2X (%d)\n", displayValue, displayValue);
|
||||
|
||||
/* ----- create fake menu strings ----- */
|
||||
strcat(buf, "\t");
|
||||
strcat(buf, ui_getstring(UI_lefthilight));
|
||||
strcat(buf, " ");
|
||||
strcat(buf, ui_getstring(UI_OK));
|
||||
strcat(buf, " ");
|
||||
strcat(buf, ui_getstring(UI_righthilight));
|
||||
strcat(buf, "\t OK ");
|
||||
|
||||
/* ----- print it ----- */
|
||||
ui_draw_message_window(buf);
|
||||
@ -2184,7 +2178,7 @@ static INT32 CommentMenu(int selection, CheatEntry * entry)
|
||||
else
|
||||
comment = "(none)";
|
||||
|
||||
sprintf(buf, "%s\n\t%s %s %s", comment, ui_getstring(UI_lefthilight), ui_getstring(UI_OK), ui_getstring(UI_righthilight));
|
||||
sprintf(buf, "%s\n\t OK ", comment);
|
||||
|
||||
/* ----- print it ----- */
|
||||
ui_draw_message_window(buf);
|
||||
@ -2276,7 +2270,7 @@ static int EnableDisableCheatMenu(int selection, int firstTime)
|
||||
if(traverse->selection && (traverse->selection < traverse->actionListLength))
|
||||
menu_subitem[total] = traverse->actionList[traverse->selection].optionalName;
|
||||
else
|
||||
menu_subitem[total] = ui_getstring(UI_off);
|
||||
menu_subitem[total] = "Off";
|
||||
}
|
||||
else // others get "ON" or "OFF"
|
||||
{
|
||||
@ -2284,13 +2278,13 @@ static int EnableDisableCheatMenu(int selection, int firstTime)
|
||||
if(!(traverse->flags & kCheatFlag_Null))
|
||||
{
|
||||
if(traverse->flags & kCheatFlag_OneShot)
|
||||
menu_subitem[total] = ui_getstring(UI_set);
|
||||
menu_subitem[total] = "Set";
|
||||
else
|
||||
{
|
||||
if(traverse->flags & kCheatFlag_Active)
|
||||
menu_subitem[total] = ui_getstring(UI_on);
|
||||
menu_subitem[total] = "On";
|
||||
else
|
||||
menu_subitem[total] = ui_getstring(UI_off);
|
||||
menu_subitem[total] = "Off";
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2324,7 +2318,7 @@ static int EnableDisableCheatMenu(int selection, int firstTime)
|
||||
}
|
||||
|
||||
/* ----- set return item ----- */
|
||||
menu_item[total] = ui_getstring(UI_returntoprior);
|
||||
menu_item[total] = "Return to Prior Menu";
|
||||
menu_subitem[total] = NULL;
|
||||
flagBuf[total++] = 0;
|
||||
|
||||
@ -2691,7 +2685,7 @@ static int AddEditCheatMenu(int selection)
|
||||
menu_item[total++] = "(none)";
|
||||
}
|
||||
|
||||
menu_item[total++] = ui_getstring(UI_returntoprior); // return
|
||||
menu_item[total++] = "Return to Prior Menu"; // return
|
||||
|
||||
menu_item[total] = NULL; // terminate array
|
||||
|
||||
@ -3176,7 +3170,7 @@ static int EditCheatMenu(CheatEntry * entry, int index, int selection)
|
||||
menuItemInfo[total].subcheat = i;
|
||||
menuItemInfo[total].fieldType = kType_LinkExtension;
|
||||
menuItem[total] = "Link Extension";
|
||||
menuSubItem[total++] = ui_getstring(TEST_FIELD(traverse->type, LinkExtension) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = TEST_FIELD(traverse->type, LinkExtension) ? "On" : "Off";
|
||||
}
|
||||
|
||||
{
|
||||
@ -3221,7 +3215,7 @@ static int EditCheatMenu(CheatEntry * entry, int index, int selection)
|
||||
menuItemInfo[total].subcheat = i;
|
||||
menuItemInfo[total].fieldType = kType_OneShot;
|
||||
menuItem[total] = "One Shot";
|
||||
menuSubItem[total++] = ui_getstring(TEST_FIELD(traverse->type, OneShot) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = TEST_FIELD(traverse->type, OneShot) ? "On" : "Off";
|
||||
}
|
||||
|
||||
{
|
||||
@ -3229,7 +3223,7 @@ static int EditCheatMenu(CheatEntry * entry, int index, int selection)
|
||||
menuItemInfo[total].subcheat = i;
|
||||
menuItemInfo[total].fieldType = kType_RestorePreviousValue;
|
||||
menuItem[total] = "Restore Previous Value";
|
||||
menuSubItem[total++] = ui_getstring(TEST_FIELD(traverse->type, RestorePreviousValue) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = TEST_FIELD(traverse->type, RestorePreviousValue) ? "On" : "Off";
|
||||
}
|
||||
}
|
||||
|
||||
@ -3319,7 +3313,7 @@ static int EditCheatMenu(CheatEntry * entry, int index, int selection)
|
||||
menuItemInfo[total].subcheat = i;
|
||||
menuItemInfo[total].fieldType = kType_WatchLabel;
|
||||
menuItem[total] = "Watch Label";
|
||||
menuSubItem[total++] = ui_getstring(((typeParameter >> 2) & 0x01) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = ((typeParameter >> 2) & 0x01) ? "On" : "Off";
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -3491,7 +3485,7 @@ static int EditCheatMenu(CheatEntry * entry, int index, int selection)
|
||||
menuItemInfo[total].subcheat = i;
|
||||
menuItemInfo[total].fieldType = kType_UserSelect;
|
||||
menuItem[total] = "User Select";
|
||||
menuSubItem[total++] = ui_getstring(userSelect ? UI_on : UI_off);
|
||||
menuSubItem[total++] = userSelect ? "On" : "Off";
|
||||
}
|
||||
|
||||
if(!i && userSelect)
|
||||
@ -3519,7 +3513,7 @@ static int EditCheatMenu(CheatEntry * entry, int index, int selection)
|
||||
menuItemInfo[total].subcheat = i;
|
||||
menuItemInfo[total].fieldType = kType_UserSelectBCD;
|
||||
menuItem[total] = "BCD";
|
||||
menuSubItem[total++] = ui_getstring(TEST_FIELD(traverse->type, UserSelectBCD) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = TEST_FIELD(traverse->type, UserSelectBCD) ? "On" : "Off";
|
||||
}
|
||||
|
||||
if(userSelect || isSelect)
|
||||
@ -3537,7 +3531,7 @@ static int EditCheatMenu(CheatEntry * entry, int index, int selection)
|
||||
menuItemInfo[total].subcheat = i;
|
||||
menuItemInfo[total].fieldType = kType_CopyPrevious;
|
||||
menuItem[total] = "Copy Previous Value";
|
||||
menuSubItem[total++] = ui_getstring(TEST_FIELD(traverse->type, LinkCopyPreviousValue) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = TEST_FIELD(traverse->type, LinkCopyPreviousValue) ? "On" : "Off";
|
||||
}
|
||||
}
|
||||
|
||||
@ -3680,7 +3674,7 @@ static int EditCheatMenu(CheatEntry * entry, int index, int selection)
|
||||
|
||||
menuItemInfo[total].subcheat = 0; // return
|
||||
menuItemInfo[total].fieldType = kType_Return;
|
||||
menuItem[total] = ui_getstring(UI_returntoprior);
|
||||
menuItem[total] = "Return to Prior Menu";
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItemInfo[total].subcheat = 0; // terminate arrey
|
||||
@ -4774,7 +4768,7 @@ static int DoSearchMenuMinimum(int selection)
|
||||
|
||||
/********** MENU CONSTRUCTION **********/
|
||||
sprintf(cpuBuffer, "%d", search->targetIdx); // CPU
|
||||
menuItem[total] = ui_getstring(UI_cpu);
|
||||
menuItem[total] = "CPU";
|
||||
menuSubItem[total++] = cpuBuffer;
|
||||
|
||||
if(search->sign && (search->oldOptions.value & kSearchByteSignBitTable[search->bytes]))
|
||||
@ -4852,13 +4846,13 @@ static int DoSearchMenuMinimum(int selection)
|
||||
menuItem[total] = "Save Memory";
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = ui_getstring(UI_viewresults); // view result
|
||||
menuItem[total] = "View Last Results"; // view result
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = ui_getstring(UI_restoreresults); // restore result
|
||||
menuItem[total] = "Restore Previous Results"; // restore result
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = ui_getstring(UI_returntoprior); // return
|
||||
menuItem[total] = "Return to Prior Menu"; // return
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = NULL; // terminate array
|
||||
@ -5397,7 +5391,7 @@ static int DoSearchMenuClassic(int selection)
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
sprintf(cpuBuffer, "%d", search->targetIdx);
|
||||
menuItem[total] = ui_getstring(UI_cpu);
|
||||
menuItem[total] = "CPU";
|
||||
menuSubItem[total++] = cpuBuffer;
|
||||
|
||||
if(search->sign && (search->oldOptions.value & kSearchByteSignBitTable[search->bytes]))
|
||||
@ -5441,13 +5435,13 @@ static int DoSearchMenuClassic(int selection)
|
||||
menuItem[total] = "--------------------";
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = ui_getstring(UI_viewresults); // view result
|
||||
menuItem[total] = "View Last Results"; // view result
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = ui_getstring(UI_restoreresults); // restore result
|
||||
menuItem[total] = "Restore Previous Results"; // restore result
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = ui_getstring(UI_returntoprior); // return
|
||||
menuItem[total] = "Return to Prior Menu"; // return
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = NULL; // terminate array
|
||||
@ -5952,10 +5946,10 @@ static int DoSearchMenu(int selection)
|
||||
menu_subitem[total++] = kSearchByteNameTable[search->bytes];
|
||||
|
||||
menu_item[total] = "Swap";
|
||||
menu_subitem[total++] = ui_getstring(search->swap ? UI_on : UI_off);
|
||||
menu_subitem[total++] = search->swap ? "On" : "Off";
|
||||
|
||||
menu_item[total] = "Signed";
|
||||
menu_subitem[total++] = ui_getstring(search->sign ? UI_on : UI_off);
|
||||
menu_subitem[total++] = search->sign ? "On" : "Off";
|
||||
|
||||
sprintf(cpuBuffer, "%d", search->targetIdx);
|
||||
menu_item[total] = "CPU";
|
||||
@ -5979,13 +5973,13 @@ static int DoSearchMenu(int selection)
|
||||
menu_item[total] = "---";
|
||||
menu_subitem[total++] = NULL;
|
||||
|
||||
menu_item[total] = ui_getstring(UI_viewresults); // view result
|
||||
menu_item[total] = "View Last Results"; // view result
|
||||
menu_subitem[total++] = NULL;
|
||||
|
||||
menu_item[total] = ui_getstring(UI_restoreresults); // restore result
|
||||
menu_item[total] = "Restore Previous Results"; // restore result
|
||||
menu_subitem[total++] = NULL;
|
||||
|
||||
menu_item[total] = ui_getstring(UI_returntoprior); // return
|
||||
menu_item[total] = "Return to Prior Menu"; // return
|
||||
menu_subitem[total++] = NULL;
|
||||
|
||||
menu_item[total] = NULL; // terminate array
|
||||
@ -6321,13 +6315,13 @@ static int SelectSearchRegions(int selection, SearchInfo * search)
|
||||
SearchRegion * traverse = &search->regionList[i];
|
||||
|
||||
menuItem[total] = traverse->name;
|
||||
menuSubItem[total++] = ui_getstring((traverse->flags & kRegionFlag_Enabled) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = (traverse->flags & kRegionFlag_Enabled) ? "On" : "Off";
|
||||
}
|
||||
|
||||
menuItem[total] = "Search Speed";
|
||||
menuSubItem[total++] = kSearchSpeedList[search->searchSpeed];
|
||||
|
||||
menuItem[total] = ui_getstring(UI_returntoprior); // return item
|
||||
menuItem[total] = "Return to Prior Menu"; // return item
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = NULL; // terminate array
|
||||
@ -6604,7 +6598,7 @@ static int ViewSearchResults(int selection, int firstTime)
|
||||
menu_item[total++] = "no results found";
|
||||
}
|
||||
|
||||
menu_item[total++] = ui_getstring(UI_returntoprior); // return
|
||||
menu_item[total++] = "Return to Prior Menu"; // return
|
||||
|
||||
menu_item[total] = NULL; // terminate array
|
||||
|
||||
@ -6869,7 +6863,7 @@ static int ChooseWatch(int selection)
|
||||
total++;
|
||||
}
|
||||
|
||||
menuItem[total++] = ui_getstring(UI_returntoprior); // return
|
||||
menuItem[total++] = "Return to Prior Menu"; // return
|
||||
|
||||
menuItem[total] = NULL; // terminate array
|
||||
|
||||
@ -7174,7 +7168,7 @@ static int EditWatch(WatchInfo * entry, int selection)
|
||||
menuSubItem[total] = buf[total];
|
||||
total++;
|
||||
|
||||
menuItem[total] = ui_getstring(UI_returntoprior); // return
|
||||
menuItem[total] = "Return to Prior Menu"; // return
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = NULL; // terminate array
|
||||
@ -7612,21 +7606,21 @@ static int SelectOptions(int selection)
|
||||
}
|
||||
|
||||
menuItem[total] = "Show Search Labels";
|
||||
menuSubItem[total++] = ui_getstring(TEST_FIELD(cheatOptions, DontPrintNewLabels) ? UI_off : UI_on);
|
||||
menuSubItem[total++] = TEST_FIELD(cheatOptions, DontPrintNewLabels) ? "Off" : "On";
|
||||
|
||||
menuItem[total] = "Auto Save Cheats";
|
||||
menuSubItem[total++] = ui_getstring(TEST_FIELD(cheatOptions, AutoSaveEnabled) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = TEST_FIELD(cheatOptions, AutoSaveEnabled) ? "On" : "Off";
|
||||
|
||||
menuItem[total] = "Show Activation Key Message";
|
||||
menuSubItem[total++] = ui_getstring(TEST_FIELD(cheatOptions, ActivationKeyMessage) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = TEST_FIELD(cheatOptions, ActivationKeyMessage) ? "On" : "Off";
|
||||
|
||||
menuItem[total] = "Load Old Format Code";
|
||||
menuSubItem[total++] = ui_getstring(TEST_FIELD(cheatOptions, LoadOldFormat) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = TEST_FIELD(cheatOptions, LoadOldFormat) ? "On" : "Off";
|
||||
|
||||
menuItem[total] = "Debug";
|
||||
menuSubItem[total++] = ui_getstring(TEST_FIELD(cheatOptions, Debug) ? UI_on : UI_off);
|
||||
menuSubItem[total++] = TEST_FIELD(cheatOptions, Debug) ? "On" : "Off";
|
||||
|
||||
menuItem[total] = ui_getstring(UI_returntoprior); // return
|
||||
menuItem[total] = "Return to Prior Menu"; // return
|
||||
menuSubItem[total++] = NULL;
|
||||
|
||||
menuItem[total] = NULL; // terminate array
|
||||
@ -7800,7 +7794,7 @@ static int SelectSearch(int selection)
|
||||
total++;
|
||||
}
|
||||
|
||||
menuItem[total++] = ui_getstring(UI_returntoprior); // return
|
||||
menuItem[total++] = "Return to Prior Menu"; // return
|
||||
|
||||
menuItem[total] = NULL; // terminate array
|
||||
|
||||
@ -7895,14 +7889,14 @@ static TIMER_CALLBACK( cheat_periodic )
|
||||
/* ------ toggle watchpoint display if shift + toggle cheat ----- */
|
||||
watchesDisabled ^= 1;
|
||||
|
||||
ui_popup_time(1, "%s %s", ui_getstring(UI_watchpoints), watchesDisabled ? ui_getstring (UI_off) : ui_getstring (UI_on));
|
||||
ui_popup_time(1, "Watchpoints %s", watchesDisabled ? "Off" : "On");
|
||||
}
|
||||
else
|
||||
{
|
||||
/* ------ toggle cheat ----- */
|
||||
cheatsDisabled ^= 1;
|
||||
|
||||
ui_popup_time(1, "%s %s", ui_getstring(UI_cheats), cheatsDisabled ? ui_getstring (UI_off) : ui_getstring (UI_on));
|
||||
ui_popup_time(1, "Cheats %s", cheatsDisabled ? "Off" : "On");
|
||||
|
||||
if(cheatsDisabled)
|
||||
{
|
||||
|
@ -73,7 +73,6 @@ EMUOBJS = \
|
||||
$(EMUOBJ)/ui.o \
|
||||
$(EMUOBJ)/uigfx.o \
|
||||
$(EMUOBJ)/uimenu.o \
|
||||
$(EMUOBJ)/uitext.o \
|
||||
$(EMUOBJ)/validity.o \
|
||||
$(EMUOBJ)/video.o \
|
||||
|
||||
|
60
src/emu/ui.c
60
src/emu/ui.c
@ -19,7 +19,6 @@
|
||||
#include "ui.h"
|
||||
#include "uimenu.h"
|
||||
#include "uigfx.h"
|
||||
#include "uitext.h"
|
||||
|
||||
#ifdef MESS
|
||||
#include "mess.h"
|
||||
@ -247,10 +246,6 @@ int ui_init(running_machine *machine)
|
||||
/* make sure we clean up after ourselves */
|
||||
add_exit_callback(machine, ui_exit);
|
||||
|
||||
/* load the localization file */
|
||||
/* fix me -- need to find a real way to do this */
|
||||
uistring_init(NULL);
|
||||
|
||||
/* allocate the font */
|
||||
ui_font = render_font_alloc("ui.bdf");
|
||||
|
||||
@ -939,9 +934,9 @@ int ui_is_slider_active(void)
|
||||
static int sprintf_disclaimer(char *buffer)
|
||||
{
|
||||
char *bufptr = buffer;
|
||||
bufptr += sprintf(bufptr, "%s\n\n", ui_getstring(UI_copyright1));
|
||||
bufptr += sprintf(bufptr, ui_getstring(UI_copyright2), Machine->gamedrv->description);
|
||||
bufptr += sprintf(bufptr, "\n\n%s", ui_getstring(UI_copyright3));
|
||||
bufptr += sprintf(bufptr, "Usage of emulators in conjunction with ROMs you don't own is forbidden by copyright law.\n\n");
|
||||
bufptr += sprintf(bufptr, "IF YOU ARE NOT LEGALLY ENTITLED TO PLAY \"%s\" ON THIS EMULATOR, PRESS ESC.\n\n", Machine->gamedrv->description);
|
||||
bufptr += sprintf(bufptr, "Otherwise, type OK or move the joystick left then right to continue");
|
||||
return bufptr - buffer;
|
||||
}
|
||||
|
||||
@ -971,7 +966,7 @@ static int sprintf_warnings(char *buffer)
|
||||
/* add a warning if any ROMs were loaded with warnings */
|
||||
if (rom_load_warnings() > 0)
|
||||
{
|
||||
bufptr += sprintf(bufptr, "%s\n", ui_getstring(UI_incorrectroms));
|
||||
bufptr += sprintf(bufptr, "One or more ROMs/CHDs for this game are incorrect. The " GAMENOUN " may not run correctly.\n");
|
||||
if (Machine->gamedrv->flags & WARNING_FLAGS)
|
||||
*bufptr++ = '\n';
|
||||
}
|
||||
@ -979,7 +974,7 @@ static int sprintf_warnings(char *buffer)
|
||||
/* if we have at least one warning flag, print the general header */
|
||||
if (Machine->gamedrv->flags & WARNING_FLAGS)
|
||||
{
|
||||
bufptr += sprintf(bufptr, "%s\n\n", ui_getstring(UI_knownproblems));
|
||||
bufptr += sprintf(bufptr, "There are known problems with this " GAMENOUN "\n\n");
|
||||
|
||||
/* add one line per warning flag */
|
||||
#ifdef MESS
|
||||
@ -987,17 +982,17 @@ static int sprintf_warnings(char *buffer)
|
||||
bufptr += sprintf(bufptr, "%s\n\n%s\n", ui_getstring(UI_comp1), ui_getstring(UI_comp2));
|
||||
#endif
|
||||
if (Machine->gamedrv->flags & GAME_IMPERFECT_COLORS)
|
||||
bufptr += sprintf(bufptr, "%s\n", ui_getstring(UI_imperfectcolors));
|
||||
bufptr += sprintf(bufptr, "The colors aren't 100%% accurate.\n");
|
||||
if (Machine->gamedrv->flags & GAME_WRONG_COLORS)
|
||||
bufptr += sprintf(bufptr, "%s\n", ui_getstring(UI_wrongcolors));
|
||||
bufptr += sprintf(bufptr, "The colors are completely wrong.\n");
|
||||
if (Machine->gamedrv->flags & GAME_IMPERFECT_GRAPHICS)
|
||||
bufptr += sprintf(bufptr, "%s\n", ui_getstring(UI_imperfectgraphics));
|
||||
bufptr += sprintf(bufptr, "The video emulation isn't 100%% accurate.\n");
|
||||
if (Machine->gamedrv->flags & GAME_IMPERFECT_SOUND)
|
||||
bufptr += sprintf(bufptr, "%s\n", ui_getstring(UI_imperfectsound));
|
||||
bufptr += sprintf(bufptr, "The sound emulation isn't 100%% accurate.\n");
|
||||
if (Machine->gamedrv->flags & GAME_NO_SOUND)
|
||||
bufptr += sprintf(bufptr, "%s\n", ui_getstring(UI_nosound));
|
||||
bufptr += sprintf(bufptr, "The game lacks sound.\n");
|
||||
if (Machine->gamedrv->flags & GAME_NO_COCKTAIL)
|
||||
bufptr += sprintf(bufptr, "%s\n", ui_getstring(UI_nococktail));
|
||||
bufptr += sprintf(bufptr, "Screen flipping in cocktail mode is not supported.\n");
|
||||
|
||||
/* if there's a NOT WORKING or UNEMULATED PROTECTION warning, make it stronger */
|
||||
if (Machine->gamedrv->flags & (GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION))
|
||||
@ -1008,9 +1003,9 @@ static int sprintf_warnings(char *buffer)
|
||||
|
||||
/* add the strings for these warnings */
|
||||
if (Machine->gamedrv->flags & GAME_NOT_WORKING)
|
||||
bufptr += sprintf(bufptr, "%s\n", ui_getstring(UI_brokengame));
|
||||
bufptr += sprintf(bufptr, "THIS " CAPGAMENOUN " DOESN'T WORK. You won't be able to make it work correctly. Don't bother.\n");
|
||||
if (Machine->gamedrv->flags & GAME_UNEMULATED_PROTECTION)
|
||||
bufptr += sprintf(bufptr, "%s\n", ui_getstring(UI_brokenprotection));
|
||||
bufptr += sprintf(bufptr, "The game has protection which isn't fully emulated.\n");
|
||||
|
||||
/* find the parent of this driver */
|
||||
clone_of = driver_get_clone(Machine->gamedrv);
|
||||
@ -1027,7 +1022,7 @@ static int sprintf_warnings(char *buffer)
|
||||
{
|
||||
/* this one works, add a header and display the name of the clone */
|
||||
if (foundworking == 0)
|
||||
bufptr += sprintf(bufptr, "\n\n%s\n\n", ui_getstring(UI_workingclones));
|
||||
bufptr += sprintf(bufptr, "\n\nThere are working clones of this game. They are:\n\n");
|
||||
bufptr += sprintf(bufptr, "%s\n", drivers[i]->name);
|
||||
foundworking = 1;
|
||||
}
|
||||
@ -1035,7 +1030,7 @@ static int sprintf_warnings(char *buffer)
|
||||
}
|
||||
|
||||
/* add the 'press OK' string */
|
||||
bufptr += sprintf(bufptr, "\n\n%s", ui_getstring(UI_typeok));
|
||||
bufptr += sprintf(bufptr, "\n\nType OK or move the joystick left then right to continue");
|
||||
return bufptr - buffer;
|
||||
}
|
||||
|
||||
@ -1052,7 +1047,7 @@ int sprintf_game_info(char *buffer)
|
||||
int count;
|
||||
|
||||
/* print description, manufacturer, and CPU: */
|
||||
bufptr += sprintf(bufptr, "%s\n%s %s\n\n%s:\n", Machine->gamedrv->description, Machine->gamedrv->year, Machine->gamedrv->manufacturer, ui_getstring(UI_cpu));
|
||||
bufptr += sprintf(bufptr, "%s\n%s %s\n\nCPU:\n", Machine->gamedrv->description, Machine->gamedrv->year, Machine->gamedrv->manufacturer);
|
||||
|
||||
/* loop over all CPUs */
|
||||
for (cpunum = 0; cpunum < MAX_CPU && Machine->drv->cpu[cpunum].type != CPU_DUMMY; cpunum += count)
|
||||
@ -1079,7 +1074,7 @@ int sprintf_game_info(char *buffer)
|
||||
}
|
||||
|
||||
/* append the Sound: string */
|
||||
bufptr += sprintf(bufptr, "\n%s:\n", ui_getstring(UI_sound));
|
||||
bufptr += sprintf(bufptr, "\nSound:\n");
|
||||
|
||||
/* loop over all sound chips */
|
||||
for (sndnum = 0; sndnum < MAX_SOUND && Machine->drv->sound[sndnum].type != SOUND_DUMMY; sndnum += count)
|
||||
@ -1109,12 +1104,11 @@ int sprintf_game_info(char *buffer)
|
||||
|
||||
/* display vector information for vector games */
|
||||
if (Machine->drv->video_attributes & VIDEO_TYPE_VECTOR)
|
||||
bufptr += sprintf(bufptr, "\n%s\n", ui_getstring(UI_vectorgame));
|
||||
bufptr += sprintf(bufptr, "\nVector Game\n");
|
||||
|
||||
/* display screen resolution and refresh rate info for raster games */
|
||||
else if (Machine->drv->video_attributes & VIDEO_TYPE_RASTER)
|
||||
bufptr += sprintf(bufptr,"\n%s:\n%d " UTF8_MULTIPLY " %d (%s) %f" UTF8_NBSP "Hz\n",
|
||||
ui_getstring(UI_screenres),
|
||||
bufptr += sprintf(bufptr,"\nScreen Resolution:\n%d " UTF8_MULTIPLY " %d (%s) %f" UTF8_NBSP "Hz\n",
|
||||
Machine->screen[0].visarea.max_x - Machine->screen[0].visarea.min_x + 1,
|
||||
Machine->screen[0].visarea.max_y - Machine->screen[0].visarea.min_y + 1,
|
||||
(Machine->gamedrv->flags & ORIENTATION_SWAP_XY) ? "V" : "H",
|
||||
@ -1661,7 +1655,7 @@ static INT32 slider_volume(INT32 newval, char *buffer, int arg)
|
||||
if (buffer != NULL)
|
||||
{
|
||||
sound_set_attenuation(newval);
|
||||
sprintf(buffer, "%s %3ddB", ui_getstring(UI_volume), sound_get_attenuation());
|
||||
sprintf(buffer, "Volume %3ddB", sound_get_attenuation());
|
||||
}
|
||||
return sound_get_attenuation();
|
||||
}
|
||||
@ -1677,7 +1671,7 @@ static INT32 slider_mixervol(INT32 newval, char *buffer, int arg)
|
||||
if (buffer != NULL)
|
||||
{
|
||||
sound_set_user_gain(arg, (float)newval * 0.001f);
|
||||
sprintf(buffer, "%s %s %4.2f", sound_get_user_gain_name(arg), ui_getstring(UI_volume), sound_get_user_gain(arg));
|
||||
sprintf(buffer, "%s Volume %4.2f", sound_get_user_gain_name(arg), sound_get_user_gain(arg));
|
||||
}
|
||||
return floor(sound_get_user_gain(arg) * 1000.0f + 0.5f);
|
||||
}
|
||||
@ -1710,7 +1704,7 @@ static INT32 slider_overclock(INT32 newval, char *buffer, int arg)
|
||||
if (buffer != NULL)
|
||||
{
|
||||
cpunum_set_clockscale(arg, (float)newval * 0.001f);
|
||||
sprintf(buffer, "%s %s%d %3.0f%%", ui_getstring(UI_overclock), ui_getstring(UI_cpu), arg, floor(cpunum_get_clockscale(arg) * 100.0f + 0.5f));
|
||||
sprintf(buffer, "Overclock CPU %d %3.0f%%", arg, floor(cpunum_get_clockscale(arg) * 100.0f + 0.5f));
|
||||
}
|
||||
return floor(cpunum_get_clockscale(arg) * 1000.0f + 0.5f);
|
||||
}
|
||||
@ -1729,7 +1723,7 @@ static INT32 slider_refresh(INT32 newval, char *buffer, int arg)
|
||||
{
|
||||
screen_state *state = &Machine->screen[arg];
|
||||
video_screen_configure(arg, state->width, state->height, &state->visarea, HZ_TO_ATTOSECONDS(defrefresh + (double)newval * 0.001));
|
||||
sprintf(buffer, "Screen %d %s %.3f", arg, ui_getstring(UI_refresh_rate), ATTOSECONDS_TO_HZ(Machine->screen[arg].refresh));
|
||||
sprintf(buffer, "Screen %d Refresh rate %.3f", arg, ATTOSECONDS_TO_HZ(Machine->screen[arg].refresh));
|
||||
}
|
||||
refresh = ATTOSECONDS_TO_HZ(Machine->screen[arg].refresh);
|
||||
return floor((refresh - defrefresh) * 1000.0f + 0.5f);
|
||||
@ -1747,7 +1741,7 @@ static INT32 slider_brightness(INT32 newval, char *buffer, int arg)
|
||||
if (buffer != NULL)
|
||||
{
|
||||
render_container_set_brightness(container, (float)newval * 0.001f);
|
||||
sprintf(buffer, "Screen %d %s %.3f", arg, ui_getstring(UI_brightness), render_container_get_brightness(container));
|
||||
sprintf(buffer, "Screen %d Brightness %.3f", arg, render_container_get_brightness(container));
|
||||
}
|
||||
return floor(render_container_get_brightness(container) * 1000.0f + 0.5f);
|
||||
}
|
||||
@ -1764,7 +1758,7 @@ static INT32 slider_contrast(INT32 newval, char *buffer, int arg)
|
||||
if (buffer != NULL)
|
||||
{
|
||||
render_container_set_contrast(container, (float)newval * 0.001f);
|
||||
sprintf(buffer, "Screen %d %s %.3f", arg, ui_getstring(UI_contrast), render_container_get_contrast(container));
|
||||
sprintf(buffer, "Screen %d Contrast %.3f", arg, render_container_get_contrast(container));
|
||||
}
|
||||
return floor(render_container_get_contrast(container) * 1000.0f + 0.5f);
|
||||
}
|
||||
@ -1780,7 +1774,7 @@ static INT32 slider_gamma(INT32 newval, char *buffer, int arg)
|
||||
if (buffer != NULL)
|
||||
{
|
||||
render_container_set_gamma(container, (float)newval * 0.001f);
|
||||
sprintf(buffer, "Screen %d %s %.3f", arg, ui_getstring(UI_gamma), render_container_get_gamma(container));
|
||||
sprintf(buffer, "Screen %d Gamma %.3f", arg, render_container_get_gamma(container));
|
||||
}
|
||||
return floor(render_container_get_gamma(container) * 1000.0f + 0.5f);
|
||||
}
|
||||
@ -1864,7 +1858,7 @@ static INT32 slider_flicker(INT32 newval, char *buffer, int arg)
|
||||
if (buffer != NULL)
|
||||
{
|
||||
vector_set_flicker((float)newval * 0.1f);
|
||||
sprintf(buffer, "%s %1.2f", ui_getstring(UI_vectorflicker), vector_get_flicker());
|
||||
sprintf(buffer, "Vector Flicker %1.2f", vector_get_flicker());
|
||||
}
|
||||
return floor(vector_get_flicker() * 10.0f + 0.5f);
|
||||
}
|
||||
|
112
src/emu/uimenu.c
112
src/emu/uimenu.c
@ -13,7 +13,6 @@
|
||||
#include "rendutil.h"
|
||||
#include "cheat.h"
|
||||
#include "uimenu.h"
|
||||
#include "uitext.h"
|
||||
#include "audit.h"
|
||||
|
||||
#ifdef MESS
|
||||
@ -184,7 +183,7 @@ static void switches_menu_add_item(ui_menu_item *item, const input_port_entry *i
|
||||
static void switches_menu_select_previous(input_port_entry *in, int switch_entry);
|
||||
static void switches_menu_select_next(input_port_entry *in, int switch_entry);
|
||||
//static int switches_menu_compare_items(const void *i1, const void *i2);
|
||||
static void analog_menu_add_item(ui_menu_item *item, const input_port_entry *in, int append_string, int which_item);
|
||||
static void analog_menu_add_item(ui_menu_item *item, const input_port_entry *in, const char *append_string, int which_item);
|
||||
|
||||
/* DIP switch helpers */
|
||||
static void dip_switch_build_model(input_port_entry *entry, int item_is_selected);
|
||||
@ -533,7 +532,7 @@ int ui_menu_draw(const ui_menu_item *items, int numitems, int selected, const me
|
||||
|
||||
static void ui_menu_draw_text_box(const char *text)
|
||||
{
|
||||
const char *priortext = ui_getstring(UI_returntoprior);
|
||||
const char *priortext = "Return to Prior Menu";
|
||||
float line_height = ui_get_line_height();
|
||||
float lr_arrow_width = 0.4f * line_height * render_get_ui_aspect();
|
||||
float gutter_width = lr_arrow_width;
|
||||
@ -756,7 +755,7 @@ static UINT32 menu_main(UINT32 state)
|
||||
{
|
||||
#define ADD_MENU(name, _handler, _param) \
|
||||
do { \
|
||||
item_list[menu_items].text = ui_getstring(name); \
|
||||
item_list[menu_items].text = name; \
|
||||
handler_list[menu_items].handler = _handler; \
|
||||
handler_list[menu_items].state = _param; \
|
||||
menu_items++; \
|
||||
@ -790,57 +789,57 @@ do { \
|
||||
memset(item_list, 0, sizeof(item_list));
|
||||
|
||||
/* add input menu items */
|
||||
ADD_MENU(UI_inputgeneral, menu_input_groups, 0);
|
||||
ADD_MENU(UI_inputspecific, menu_input, 1000 << 16);
|
||||
ADD_MENU("Input (general)", menu_input_groups, 0);
|
||||
ADD_MENU("Input (this " CAPSTARTGAMENOUN ")", menu_input, 1000 << 16);
|
||||
|
||||
/* add optional input-related menus */
|
||||
if (has_dips)
|
||||
ADD_MENU(UI_dipswitches, menu_switches, (IPT_DIPSWITCH_NAME << 16) | (IPT_DIPSWITCH_SETTING << 24));
|
||||
ADD_MENU("Dip Switches", menu_switches, (IPT_DIPSWITCH_NAME << 16) | (IPT_DIPSWITCH_SETTING << 24));
|
||||
if (has_configs)
|
||||
ADD_MENU(UI_configuration, menu_switches, (IPT_CONFIG_NAME << 16) | (IPT_CONFIG_SETTING << 24));
|
||||
ADD_MENU("Driver Configuration", menu_switches, (IPT_CONFIG_NAME << 16) | (IPT_CONFIG_SETTING << 24));
|
||||
#ifdef MESS
|
||||
if (has_categories)
|
||||
ADD_MENU(UI_categories, menu_switches, (IPT_CATEGORY_NAME << 16) | (IPT_CATEGORY_SETTING << 24));
|
||||
ADD_MENU("Categories", menu_switches, (IPT_CATEGORY_NAME << 16) | (IPT_CATEGORY_SETTING << 24));
|
||||
#endif
|
||||
if (has_analog)
|
||||
ADD_MENU(UI_analogcontrols, menu_analog, 0);
|
||||
ADD_MENU("Analog Controls", menu_analog, 0);
|
||||
|
||||
#ifndef MESS
|
||||
/* add bookkeeping menu */
|
||||
ADD_MENU(UI_bookkeeping, menu_bookkeeping, 0);
|
||||
ADD_MENU("Bookkeeping Info", menu_bookkeeping, 0);
|
||||
#endif
|
||||
|
||||
/* add game info menu */
|
||||
ADD_MENU(UI_gameinfo, menu_game_info, 0);
|
||||
ADD_MENU(CAPSTARTGAMENOUN " Information", menu_game_info, 0);
|
||||
|
||||
#ifdef MESS
|
||||
/* add image info menu */
|
||||
ADD_MENU(UI_imageinfo, ui_menu_image_info, 0);
|
||||
ADD_MENU("Image Information", ui_menu_image_info, 0);
|
||||
|
||||
/* add image info menu */
|
||||
ADD_MENU(UI_filemanager, menu_file_manager, 1);
|
||||
ADD_MENU("File Manager", menu_file_manager, 1);
|
||||
|
||||
#if HAS_WAVE
|
||||
/* add tape control menu */
|
||||
if (device_find(Machine->devices, IO_CASSETTE))
|
||||
ADD_MENU(UI_tapecontrol, menu_tape_control, 1);
|
||||
ADD_MENU("Tape Control", menu_tape_control, 1);
|
||||
#endif /* HAS_WAVE */
|
||||
#endif /* MESS */
|
||||
|
||||
/* add video options menu */
|
||||
ADD_MENU(UI_video, menu_video, 1000 << 16);
|
||||
ADD_MENU("Video Options", menu_video, 1000 << 16);
|
||||
|
||||
/* add cheat menu */
|
||||
if (options_get_bool(mame_options(), OPTION_CHEAT))
|
||||
ADD_MENU(UI_cheat, menu_cheat, 1);
|
||||
ADD_MENU("Cheat", menu_cheat, 1);
|
||||
|
||||
/* add memory card menu */
|
||||
if (Machine->drv->memcard_handler != NULL)
|
||||
ADD_MENU(UI_memorycard, menu_memory_card, 0);
|
||||
ADD_MENU("Memory Card", menu_memory_card, 0);
|
||||
|
||||
/* add reset and exit menus */
|
||||
ADD_MENU(UI_selectgame, menu_select_game, 1 << 16);
|
||||
ADD_MENU(UI_returntogame, NULL, 0);
|
||||
ADD_MENU("Select New " CAPSTARTGAMENOUN, menu_select_game, 1 << 16);
|
||||
ADD_MENU("Return to " CAPSTARTGAMENOUN, NULL, 0);
|
||||
|
||||
/* draw the menu */
|
||||
visible_items = ui_menu_draw(item_list, menu_items, state, NULL);
|
||||
@ -867,16 +866,19 @@ static UINT32 menu_input_groups(UINT32 state)
|
||||
ui_menu_item item_list[IPG_TOTAL_GROUPS + 2];
|
||||
int menu_items = 0;
|
||||
int visible_items;
|
||||
int player;
|
||||
|
||||
/* reset the menu */
|
||||
memset(item_list, 0, sizeof(item_list));
|
||||
|
||||
/* build up the menu */
|
||||
for (menu_items = 0; menu_items < IPG_TOTAL_GROUPS; menu_items++)
|
||||
item_list[menu_items].text = ui_getstring(UI_uigroup + menu_items);
|
||||
item_list[menu_items++].text = "User Interface";
|
||||
for (player = 0; player < MAX_PLAYERS; player++)
|
||||
item_list[menu_items++].text = menu_string_pool_add("Player %d Controls", player + 1);
|
||||
item_list[menu_items++].text = "Other Controls";
|
||||
|
||||
/* add an item for the return */
|
||||
item_list[menu_items++].text = ui_getstring(UI_returntoprior);
|
||||
item_list[menu_items++].text = "Return to Prior Menu";
|
||||
|
||||
/* draw the menu */
|
||||
visible_items = ui_menu_draw(item_list, menu_items, state, NULL);
|
||||
@ -932,7 +934,7 @@ static UINT32 menu_input(UINT32 state)
|
||||
qsort(item_list, menu_items, sizeof(item_list[0]), input_menu_compare_items);
|
||||
|
||||
/* add an item to return */
|
||||
item_list[menu_items++].text = ui_getstring(UI_returntoprior);
|
||||
item_list[menu_items++].text = "Return to Prior Menu";
|
||||
|
||||
/* if we're polling, just put an empty entry and arrows for the subitem */
|
||||
if (polling)
|
||||
@ -1037,7 +1039,7 @@ static UINT32 menu_switches(UINT32 state)
|
||||
selected_in = item_list[selected].ref;
|
||||
|
||||
/* add an item to return */
|
||||
item_list[menu_items++].text = ui_getstring(UI_returntoprior);
|
||||
item_list[menu_items++].text = "Return to Prior Menu";
|
||||
|
||||
/* configure the extra menu */
|
||||
extra.top = 0;
|
||||
@ -1140,15 +1142,15 @@ static UINT32 menu_analog(UINT32 state)
|
||||
}
|
||||
|
||||
/* add the needed items for each analog input */
|
||||
analog_menu_add_item(&item_list[menu_items++], in, UI_keyjoyspeed, ANALOG_ITEM_KEYSPEED);
|
||||
analog_menu_add_item(&item_list[menu_items++], in, "Digital Speed", ANALOG_ITEM_KEYSPEED);
|
||||
if (use_autocenter)
|
||||
analog_menu_add_item(&item_list[menu_items++], in, UI_centerspeed, ANALOG_ITEM_CENTERSPEED);
|
||||
analog_menu_add_item(&item_list[menu_items++], in, UI_reverse, ANALOG_ITEM_REVERSE);
|
||||
analog_menu_add_item(&item_list[menu_items++], in, UI_sensitivity, ANALOG_ITEM_SENSITIVITY);
|
||||
analog_menu_add_item(&item_list[menu_items++], in, "Autocenter Speed", ANALOG_ITEM_CENTERSPEED);
|
||||
analog_menu_add_item(&item_list[menu_items++], in, "Reverse", ANALOG_ITEM_REVERSE);
|
||||
analog_menu_add_item(&item_list[menu_items++], in, "Sensitivity", ANALOG_ITEM_SENSITIVITY);
|
||||
}
|
||||
|
||||
/* add an item to return */
|
||||
item_list[menu_items++].text = ui_getstring(UI_returntoprior);
|
||||
item_list[menu_items++].text = "Return to Prior Menu";
|
||||
|
||||
/* draw the menu */
|
||||
visible_items = ui_menu_draw(item_list, menu_items, state, NULL);
|
||||
@ -1196,29 +1198,29 @@ static UINT32 menu_bookkeeping(UINT32 state)
|
||||
/* show total time first */
|
||||
total_time = timer_get_time();
|
||||
if (total_time.seconds >= 60 * 60)
|
||||
bufptr += sprintf(bufptr, "%s: %d:%02d:%02d\n\n", ui_getstring(UI_totaltime), total_time.seconds / (60*60), (total_time.seconds / 60) % 60, total_time.seconds % 60);
|
||||
bufptr += sprintf(bufptr, "Uptime: %d:%02d:%02d\n\n", total_time.seconds / (60*60), (total_time.seconds / 60) % 60, total_time.seconds % 60);
|
||||
else
|
||||
bufptr += sprintf(bufptr, "%s: %d:%02d\n\n", ui_getstring(UI_totaltime), (total_time.seconds / 60) % 60, total_time.seconds % 60);
|
||||
bufptr += sprintf(bufptr, "Uptime: %d:%02d\n\n", (total_time.seconds / 60) % 60, total_time.seconds % 60);
|
||||
|
||||
/* show tickets at the top */
|
||||
if (dispensed_tickets)
|
||||
bufptr += sprintf(bufptr, "%s: %d\n\n", ui_getstring(UI_tickets), dispensed_tickets);
|
||||
bufptr += sprintf(bufptr, "Tickets dispensed: %d\n\n", dispensed_tickets);
|
||||
|
||||
/* loop over coin counters */
|
||||
for (ctrnum = 0; ctrnum < COIN_COUNTERS; ctrnum++)
|
||||
{
|
||||
/* display the coin counter number */
|
||||
bufptr += sprintf(bufptr, "%s %c: ", ui_getstring(UI_coin), ctrnum + 'A');
|
||||
bufptr += sprintf(bufptr, "Coin %c: ", ctrnum + 'A');
|
||||
|
||||
/* display how many coins */
|
||||
if (!coin_count[ctrnum])
|
||||
bufptr += sprintf(bufptr, "%s", ui_getstring(UI_NA));
|
||||
bufptr += sprintf(bufptr, "NA");
|
||||
else
|
||||
bufptr += sprintf(bufptr, "%d", coin_count[ctrnum]);
|
||||
|
||||
/* display whether or not we are locked out */
|
||||
if (coinlockedout[ctrnum])
|
||||
bufptr += sprintf(bufptr, " %s", ui_getstring(UI_locked));
|
||||
bufptr += sprintf(bufptr, " (locked)");
|
||||
*bufptr++ = '\n';
|
||||
}
|
||||
*bufptr = 0;
|
||||
@ -1288,7 +1290,7 @@ static UINT32 menu_memory_card(UINT32 state)
|
||||
menu_string_pool_offset = 0;
|
||||
|
||||
/* add the card select menu */
|
||||
item_list[menu_items].text = ui_getstring(UI_selectcard);
|
||||
item_list[menu_items].text = "Card Number:";
|
||||
item_list[menu_items].subtext = menu_string_pool_add("%d", cardnum);
|
||||
if (cardnum > 0)
|
||||
item_list[menu_items].flags |= MENU_FLAG_LEFT_ARROW;
|
||||
@ -1297,13 +1299,13 @@ static UINT32 menu_memory_card(UINT32 state)
|
||||
menu_items++;
|
||||
|
||||
/* add the remaining items */
|
||||
item_list[insertindex = menu_items++].text = ui_getstring(UI_loadcard);
|
||||
item_list[insertindex = menu_items++].text = "Load Selected Card";
|
||||
if (memcard_present() != -1)
|
||||
item_list[ejectindex = menu_items++].text = ui_getstring(UI_ejectcard);
|
||||
item_list[createindex = menu_items++].text = ui_getstring(UI_createcard);
|
||||
item_list[ejectindex = menu_items++].text = "Eject Current Card";
|
||||
item_list[createindex = menu_items++].text = "Create New Card";
|
||||
|
||||
/* add an item for the return */
|
||||
item_list[menu_items++].text = ui_getstring(UI_returntoprior);
|
||||
item_list[menu_items++].text = "Return to Prior Menu";
|
||||
|
||||
/* draw the menu */
|
||||
visible_items = ui_menu_draw(item_list, menu_items, selected, NULL);
|
||||
@ -1324,28 +1326,28 @@ static UINT32 menu_memory_card(UINT32 state)
|
||||
{
|
||||
if (memcard_insert(cardnum) == 0)
|
||||
{
|
||||
popmessage("%s", ui_getstring(UI_loadok));
|
||||
popmessage("Memory card loaded");
|
||||
ui_menu_stack_reset();
|
||||
return 0;
|
||||
}
|
||||
else
|
||||
popmessage("%s", ui_getstring(UI_loadfailed));
|
||||
popmessage("Error loading memory card");
|
||||
}
|
||||
|
||||
/* handle eject */
|
||||
else if (selected == ejectindex)
|
||||
{
|
||||
memcard_eject(Machine);
|
||||
popmessage("%s", ui_getstring(UI_cardejected));
|
||||
popmessage("Memory card ejected");
|
||||
}
|
||||
|
||||
/* handle create */
|
||||
else if (selected == createindex)
|
||||
{
|
||||
if (memcard_create(cardnum, FALSE) == 0)
|
||||
popmessage("%s", ui_getstring(UI_cardcreated));
|
||||
popmessage("Memory card created");
|
||||
else
|
||||
popmessage("%s\n%s", ui_getstring(UI_cardcreatedfailed), ui_getstring(UI_cardcreatedfailed2));
|
||||
popmessage("Error creating memory card\n(Card may already exist)");
|
||||
}
|
||||
}
|
||||
|
||||
@ -1384,7 +1386,7 @@ static UINT32 menu_video(UINT32 state)
|
||||
{
|
||||
/* count up the targets, creating menu items for them */
|
||||
for (; menu_items < targets; menu_items++)
|
||||
item_list[menu_items].text = menu_string_pool_add("%s%d", ui_getstring(UI_screen), menu_items);
|
||||
item_list[menu_items].text = menu_string_pool_add("Screen #%d", menu_items);
|
||||
|
||||
/* if we only ended up with one, auto-select it */
|
||||
if (menu_items == 1)
|
||||
@ -1394,7 +1396,7 @@ static UINT32 menu_video(UINT32 state)
|
||||
item_list[menu_items++].text = "Move User Interface";
|
||||
|
||||
/* add an item to return */
|
||||
item_list[menu_items++].text = ui_getstring(UI_returntoprior);
|
||||
item_list[menu_items++].text = "Return to Prior Menu";
|
||||
|
||||
/* draw the menu */
|
||||
visible_items = ui_menu_draw(item_list, menu_items, selected, NULL);
|
||||
@ -1469,7 +1471,7 @@ static UINT32 menu_video(UINT32 state)
|
||||
item_list[menu_items++].text = "Crop to Screen";
|
||||
|
||||
/* add an item to return */
|
||||
item_list[menu_items++].text = ui_getstring(UI_returntoprior);
|
||||
item_list[menu_items++].text = "Return to Prior Menu";
|
||||
|
||||
/* draw the menu */
|
||||
visible_items = ui_menu_draw(item_list, menu_items, selected, NULL);
|
||||
@ -1604,13 +1606,13 @@ static UINT32 menu_select_game(UINT32 state)
|
||||
|
||||
/* add an item to return, but only if we're not going to pop to the quit handler */
|
||||
if (!ui_menu_is_force_game_select())
|
||||
item_list[menu_items++].text = ui_getstring(UI_returntoprior);
|
||||
item_list[menu_items++].text = "Return to Prior Menu";
|
||||
|
||||
/* otherwise, add a general input configuration and exit menus */
|
||||
else
|
||||
{
|
||||
item_list[menu_items++].text = "Configure General Inputs";
|
||||
item_list[menu_items++].text = ui_getstring(UI_exit);
|
||||
item_list[menu_items++].text = "Exit";
|
||||
}
|
||||
|
||||
/* configure the extra menu */
|
||||
@ -2025,7 +2027,7 @@ static void switches_menu_add_item(ui_menu_item *item, const input_port_entry *i
|
||||
|
||||
/* if no matches, we're invalid */
|
||||
if (!item->subtext)
|
||||
item->subtext = ui_getstring(UI_INVALID);
|
||||
item->subtext = "INVALID";
|
||||
|
||||
/* stash our reference */
|
||||
item->ref = ref;
|
||||
@ -2110,12 +2112,12 @@ static int switches_menu_compare_items(const void *i1, const void *i2)
|
||||
analog controls menu
|
||||
-------------------------------------------------*/
|
||||
|
||||
static void analog_menu_add_item(ui_menu_item *item, const input_port_entry *in, int append_string, int which_item)
|
||||
static void analog_menu_add_item(ui_menu_item *item, const input_port_entry *in, const char *append_string, int which_item)
|
||||
{
|
||||
int value, minval, maxval;
|
||||
|
||||
/* set the item text using the formatting string provided */
|
||||
item->text = menu_string_pool_add("%s %s", input_port_name(in), ui_getstring(append_string));
|
||||
item->text = menu_string_pool_add("%s %s", input_port_name(in), append_string);
|
||||
|
||||
/* set the subitem text */
|
||||
switch (which_item)
|
||||
@ -2139,7 +2141,7 @@ static void analog_menu_add_item(ui_menu_item *item, const input_port_entry *in,
|
||||
value = in->analog.reverse;
|
||||
minval = 0;
|
||||
maxval = 1;
|
||||
item->subtext = value ? ui_getstring(UI_on) : ui_getstring(UI_off);
|
||||
item->subtext = value ? "On" : "Off";
|
||||
break;
|
||||
|
||||
case ANALOG_ITEM_SENSITIVITY:
|
||||
|
356
src/emu/uitext.c
356
src/emu/uitext.c
@ -1,356 +0,0 @@
|
||||
/*********************************************************************
|
||||
|
||||
uitext.c
|
||||
|
||||
Functions used to retrieve text used by MAME, to aid in
|
||||
translation.
|
||||
|
||||
Copyright Nicola Salmoria and the MAME Team.
|
||||
Visit http://mamedev.org for licensing and usage restrictions.
|
||||
|
||||
*********************************************************************/
|
||||
|
||||
#include "driver.h"
|
||||
#include "uitext.h"
|
||||
|
||||
#ifdef MESS
|
||||
extern const char *mess_default_text[];
|
||||
#endif /* MESS */
|
||||
|
||||
|
||||
static lang_struct lang;
|
||||
|
||||
/* All entries in this table must match the enum ordering in "uitext.h" */
|
||||
static const char *const mame_default_text[] =
|
||||
{
|
||||
APPNAME,
|
||||
/* copyright stuff */
|
||||
"Usage of emulators in conjunction with ROMs you don't own is forbidden by copyright law.",
|
||||
"IF YOU ARE NOT LEGALLY ENTITLED TO PLAY \"%s\" ON THIS EMULATOR, PRESS ESC.",
|
||||
"Otherwise, type OK or move the joystick left then right to continue",
|
||||
|
||||
/* misc stuff */
|
||||
"Return to Main Menu",
|
||||
"Return to Prior Menu",
|
||||
"Press Any Key",
|
||||
"On",
|
||||
"Off",
|
||||
"NA",
|
||||
"OK",
|
||||
"INVALID",
|
||||
"(none)",
|
||||
"CPU",
|
||||
"Address",
|
||||
"Value",
|
||||
"Sound",
|
||||
"sound",
|
||||
"stereo",
|
||||
"Vector Game",
|
||||
"Screen Resolution",
|
||||
"Text",
|
||||
"Volume",
|
||||
"Relative",
|
||||
"ALL CHANNELS",
|
||||
"Brightness",
|
||||
"Contrast",
|
||||
"Gamma",
|
||||
"Vector Flicker",
|
||||
"Overclock",
|
||||
"ALL CPUS",
|
||||
HISTORYNAME " not available",
|
||||
|
||||
/* special characters */
|
||||
"\xc2\xab",
|
||||
"\xc2\xbb",
|
||||
"(more)",
|
||||
"(more)",
|
||||
"",
|
||||
"",
|
||||
|
||||
/* known problems */
|
||||
"There are known problems with this " GAMENOUN,
|
||||
"The colors aren't 100% accurate.",
|
||||
"The colors are completely wrong.",
|
||||
"The video emulation isn't 100% accurate.",
|
||||
"The sound emulation isn't 100% accurate.",
|
||||
"The game lacks sound.",
|
||||
"Screen flipping in cocktail mode is not supported.",
|
||||
"THIS " CAPGAMENOUN " DOESN'T WORK. You won't be able to make it work correctly. Don't bother.",
|
||||
"The game has protection which isn't fully emulated.",
|
||||
"There are working clones of this game. They are:",
|
||||
"One or more ROMs/CHDs for this game are incorrect. The " GAMENOUN " may not run correctly.",
|
||||
"Type OK or move the joystick left then right to continue",
|
||||
|
||||
/* main menu */
|
||||
"Input (general)",
|
||||
"Dip Switches",
|
||||
"Analog Controls",
|
||||
"Calibrate Joysticks",
|
||||
"Bookkeeping Info",
|
||||
|
||||
"Input (this " CAPSTARTGAMENOUN")",
|
||||
CAPSTARTGAMENOUN " Information",
|
||||
CAPSTARTGAMENOUN " History",
|
||||
"Reset " CAPSTARTGAMENOUN,
|
||||
"Select New " CAPSTARTGAMENOUN,
|
||||
"Return to " CAPSTARTGAMENOUN,
|
||||
"Exit",
|
||||
|
||||
"Cheat",
|
||||
"Memory Card",
|
||||
|
||||
/* input */
|
||||
"Digital Speed",
|
||||
"Autocenter Speed",
|
||||
"Reverse",
|
||||
"Sensitivity",
|
||||
|
||||
/* input groups */
|
||||
"User Interface",
|
||||
"Player 1 Controls",
|
||||
"Player 2 Controls",
|
||||
"Player 3 Controls",
|
||||
"Player 4 Controls",
|
||||
"Player 5 Controls",
|
||||
"Player 6 Controls",
|
||||
"Player 7 Controls",
|
||||
"Player 8 Controls",
|
||||
"Other Controls",
|
||||
"Return to Groups",
|
||||
|
||||
/* stats */
|
||||
"Uptime",
|
||||
"Tickets dispensed",
|
||||
"Coin",
|
||||
"(locked)",
|
||||
|
||||
/* memory card */
|
||||
"Card Number:",
|
||||
"Load Selected Card",
|
||||
"Eject Current Card",
|
||||
"Create New Card",
|
||||
"Error loading memory card",
|
||||
"Memory card loaded",
|
||||
"Memory card ejected",
|
||||
"Memory card created",
|
||||
"Error creating memory card",
|
||||
"(Card may already exist)",
|
||||
|
||||
/* cheats */
|
||||
"Enable/Disable a Cheat",
|
||||
"Add/Edit a Cheat",
|
||||
"Start a New Cheat Search",
|
||||
"Continue Search",
|
||||
"View Last Results",
|
||||
"Restore Previous Results",
|
||||
"Configure Watchpoints",
|
||||
"General Help",
|
||||
"Options",
|
||||
"Reload Database",
|
||||
"Watchpoint",
|
||||
"Disabled",
|
||||
"Cheats",
|
||||
"Watchpoints",
|
||||
"More Info",
|
||||
"More Info for",
|
||||
"Name",
|
||||
"Description",
|
||||
"Activation Key",
|
||||
"Code",
|
||||
"Max",
|
||||
"Set",
|
||||
"Cheat conflict found: disabling",
|
||||
"Help not available yet",
|
||||
|
||||
/* watchpoints */
|
||||
"Number of bytes",
|
||||
"Display Type",
|
||||
"Label Type",
|
||||
"Label",
|
||||
"X Position",
|
||||
"Y Position",
|
||||
"Watch",
|
||||
|
||||
"Hex",
|
||||
"Decimal",
|
||||
"Binary",
|
||||
|
||||
/* searching */
|
||||
"Lives (or another value)",
|
||||
"Timers (+/- some value)",
|
||||
"Energy (greater or less)",
|
||||
"Status (bits or flags)",
|
||||
"Slow But Sure (changed or not)",
|
||||
"Default Search Speed",
|
||||
"Fast",
|
||||
"Medium",
|
||||
"Slow",
|
||||
"Very Slow",
|
||||
"All Memory",
|
||||
"Select Memory Areas",
|
||||
"Matches found",
|
||||
"Search not initialized",
|
||||
"No previous values saved",
|
||||
"Previous values already restored",
|
||||
"Restoration successful",
|
||||
"Select a value",
|
||||
"All values saved",
|
||||
"One match found - added to list",
|
||||
|
||||
/* refresh rate */
|
||||
"Refresh rate",
|
||||
"Decoding Graphics",
|
||||
|
||||
"Video Options",
|
||||
"Screen #",
|
||||
"Rotate Clockwise",
|
||||
"Rotate Counter-clockwise",
|
||||
"Flip X",
|
||||
"Flip Y",
|
||||
|
||||
"Driver Configuration",
|
||||
|
||||
NULL
|
||||
};
|
||||
|
||||
|
||||
|
||||
static const char *const *const default_text[] =
|
||||
{
|
||||
mame_default_text,
|
||||
#ifdef MESS
|
||||
mess_default_text,
|
||||
#endif /* MESS */
|
||||
NULL
|
||||
};
|
||||
|
||||
|
||||
|
||||
static const char **trans_text;
|
||||
|
||||
|
||||
int uistring_init (mame_file *langfile)
|
||||
{
|
||||
/*
|
||||
TODO: This routine needs to do several things:
|
||||
- load an external font if needed
|
||||
- determine the number of characters in the font
|
||||
- deal with multibyte languages
|
||||
|
||||
*/
|
||||
|
||||
int i, j, str;
|
||||
char curline[255];
|
||||
char section[255] = "\0";
|
||||
char *ptr;
|
||||
int string_count;
|
||||
|
||||
/* count the total amount of strings */
|
||||
string_count = 0;
|
||||
for (i = 0; default_text[i]; i++)
|
||||
{
|
||||
for (j = 0; default_text[i][j]; j++)
|
||||
string_count++;
|
||||
}
|
||||
|
||||
/* allocate the translated text array, and set defaults */
|
||||
trans_text = auto_malloc(sizeof(const char *) * string_count);
|
||||
|
||||
/* copy in references to all of the strings */
|
||||
str = 0;
|
||||
for (i = 0; default_text[i]; i++)
|
||||
{
|
||||
for (j = 0; default_text[i][j]; j++)
|
||||
trans_text[str++] = default_text[i][j];
|
||||
}
|
||||
|
||||
memset(&lang, 0, sizeof(lang));
|
||||
|
||||
/* if no language file, exit */
|
||||
if (!langfile)
|
||||
return 0;
|
||||
|
||||
while (mame_fgets (curline, sizeof(curline) / sizeof(curline[0]), langfile) != NULL)
|
||||
{
|
||||
/* Ignore commented and blank lines */
|
||||
if (curline[0] == ';') continue;
|
||||
if (curline[0] == '\n') continue;
|
||||
if (curline[0] == '\r') continue;
|
||||
|
||||
if (curline[0] == '[')
|
||||
{
|
||||
ptr = strtok (&curline[1], "]");
|
||||
/* Found a section, indicate as such */
|
||||
strcpy (section, ptr);
|
||||
|
||||
/* Skip to the next line */
|
||||
continue;
|
||||
}
|
||||
|
||||
/* Parse the LangInfo section */
|
||||
if (strcmp (section, "LangInfo") == 0)
|
||||
{
|
||||
ptr = strtok (curline, "=");
|
||||
if (strcmp (ptr, "Version") == 0)
|
||||
{
|
||||
ptr = strtok (NULL, "\n\r");
|
||||
sscanf (ptr, "%d", &lang.version);
|
||||
}
|
||||
else if (strcmp (ptr, "Language") == 0)
|
||||
{
|
||||
ptr = strtok (NULL, "\n\r");
|
||||
strcpy (lang.langname, ptr);
|
||||
}
|
||||
else if (strcmp (ptr, "Author") == 0)
|
||||
{
|
||||
ptr = strtok (NULL, "\n\r");
|
||||
strcpy (lang.author, ptr);
|
||||
}
|
||||
else if (strcmp (ptr, "Font") == 0)
|
||||
{
|
||||
ptr = strtok (NULL, "\n\r");
|
||||
strcpy (lang.fontname, ptr);
|
||||
}
|
||||
}
|
||||
|
||||
/* Parse the Strings section */
|
||||
if (strcmp (section, "Strings") == 0)
|
||||
{
|
||||
/* Get all text up to the first line ending */
|
||||
ptr = strtok (curline, "\n\r");
|
||||
|
||||
/* Find a matching default string */
|
||||
str = 0;
|
||||
for (i = 0; default_text[i]; i++)
|
||||
{
|
||||
for (j = 0; default_text[i][j]; j++)
|
||||
{
|
||||
if (strcmp (curline, default_text[i][j]) == 0)
|
||||
{
|
||||
char transline[255];
|
||||
|
||||
/* Found a match, read next line as the translation */
|
||||
mame_fgets (transline, 255, langfile);
|
||||
|
||||
/* Get all text up to the first line ending */
|
||||
ptr = strtok (transline, "\n\r");
|
||||
|
||||
/* Allocate storage and copy the string */
|
||||
trans_text[str] = auto_strdup(transline);
|
||||
}
|
||||
str++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* indicate success */
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
const char * ui_getstring (int string_num)
|
||||
{
|
||||
return trans_text[string_num];
|
||||
}
|
233
src/emu/uitext.h
233
src/emu/uitext.h
@ -1,233 +0,0 @@
|
||||
/***************************************************************************
|
||||
|
||||
uitext.h
|
||||
|
||||
Functions used to retrieve text used by MAME, to aid in
|
||||
translation.
|
||||
|
||||
Copyright Nicola Salmoria and the MAME Team.
|
||||
Visit http://mamedev.org for licensing and usage restrictions.
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifndef __uitext_H__
|
||||
#define __uitext_H__
|
||||
|
||||
#include "mamecore.h"
|
||||
|
||||
/* Important: this must match the default_text list in uitext.c! */
|
||||
enum
|
||||
{
|
||||
UI_mame = 0,
|
||||
|
||||
/* copyright stuff */
|
||||
UI_copyright1,
|
||||
UI_copyright2,
|
||||
UI_copyright3,
|
||||
|
||||
/* misc menu stuff */
|
||||
UI_returntomain,
|
||||
UI_returntoprior,
|
||||
UI_anykey,
|
||||
UI_on,
|
||||
UI_off,
|
||||
UI_NA,
|
||||
UI_OK,
|
||||
UI_INVALID,
|
||||
UI_none,
|
||||
UI_cpu,
|
||||
UI_address,
|
||||
UI_value,
|
||||
UI_sound,
|
||||
UI_sound_lc, /* lower-case version */
|
||||
UI_stereo,
|
||||
UI_vectorgame,
|
||||
UI_screenres,
|
||||
uitext,
|
||||
UI_volume,
|
||||
UI_relative,
|
||||
UI_allchannels,
|
||||
UI_brightness,
|
||||
UI_contrast,
|
||||
UI_gamma,
|
||||
UI_vectorflicker,
|
||||
UI_overclock,
|
||||
UI_allcpus,
|
||||
UI_historymissing,
|
||||
|
||||
/* special characters */
|
||||
UI_leftarrow,
|
||||
UI_rightarrow,
|
||||
UI_uparrow,
|
||||
UI_downarrow,
|
||||
UI_lefthilight,
|
||||
UI_righthilight,
|
||||
|
||||
/* warnings */
|
||||
UI_knownproblems,
|
||||
UI_imperfectcolors,
|
||||
UI_wrongcolors,
|
||||
UI_imperfectgraphics,
|
||||
UI_imperfectsound,
|
||||
UI_nosound,
|
||||
UI_nococktail,
|
||||
UI_brokengame,
|
||||
UI_brokenprotection,
|
||||
UI_workingclones,
|
||||
UI_incorrectroms,
|
||||
UI_typeok,
|
||||
|
||||
/* main menu */
|
||||
UI_inputgeneral,
|
||||
UI_dipswitches,
|
||||
UI_analogcontrols,
|
||||
UI_calibrate,
|
||||
UI_bookkeeping,
|
||||
UI_inputspecific,
|
||||
UI_gameinfo,
|
||||
UI_history,
|
||||
UI_resetgame,
|
||||
UI_selectgame,
|
||||
UI_returntogame,
|
||||
UI_exit,
|
||||
UI_cheat,
|
||||
UI_memorycard,
|
||||
|
||||
/* input stuff */
|
||||
UI_keyjoyspeed,
|
||||
UI_centerspeed,
|
||||
UI_reverse,
|
||||
UI_sensitivity,
|
||||
|
||||
/* input groups */
|
||||
UI_uigroup,
|
||||
UI_p1group,
|
||||
UI_p2group,
|
||||
UI_p3group,
|
||||
UI_p4group,
|
||||
UI_p5group,
|
||||
UI_p6group,
|
||||
UI_p7group,
|
||||
UI_p8group,
|
||||
UI_othergroup,
|
||||
UI_returntogroup,
|
||||
|
||||
/* stats */
|
||||
UI_totaltime,
|
||||
UI_tickets,
|
||||
UI_coin,
|
||||
UI_locked,
|
||||
|
||||
/* memory card */
|
||||
UI_selectcard,
|
||||
UI_loadcard,
|
||||
UI_ejectcard,
|
||||
UI_createcard,
|
||||
UI_loadfailed,
|
||||
UI_loadok,
|
||||
UI_cardejected,
|
||||
UI_cardcreated,
|
||||
UI_cardcreatedfailed,
|
||||
UI_cardcreatedfailed2,
|
||||
|
||||
/* cheat stuff */
|
||||
UI_enablecheat,
|
||||
UI_addeditcheat,
|
||||
UI_startcheat,
|
||||
UI_continuesearch,
|
||||
UI_viewresults,
|
||||
UI_restoreresults,
|
||||
UI_memorywatch,
|
||||
UI_generalhelp,
|
||||
UI_options,
|
||||
UI_reloaddatabase,
|
||||
UI_watchpoint,
|
||||
UI_disabled,
|
||||
UI_cheats,
|
||||
UI_watchpoints,
|
||||
UI_moreinfo,
|
||||
UI_moreinfoheader,
|
||||
UI_cheatname,
|
||||
UI_cheatdescription,
|
||||
UI_cheatactivationkey,
|
||||
UI_code,
|
||||
UI_max,
|
||||
UI_set,
|
||||
UI_conflict_found,
|
||||
UI_no_help_available,
|
||||
|
||||
/* watchpoint stuff */
|
||||
UI_watchlength,
|
||||
UI_watchdisplaytype,
|
||||
UI_watchlabeltype,
|
||||
UI_watchlabel,
|
||||
UI_watchx,
|
||||
UI_watchy,
|
||||
UI_watch,
|
||||
|
||||
UI_hex,
|
||||
UI_decimal,
|
||||
UI_binary,
|
||||
|
||||
/* search stuff */
|
||||
UI_search_lives,
|
||||
UI_search_timers,
|
||||
UI_search_energy,
|
||||
UI_search_status,
|
||||
UI_search_slow,
|
||||
UI_search_speed,
|
||||
UI_search_speed_fast,
|
||||
UI_search_speed_medium,
|
||||
UI_search_speed_slow,
|
||||
UI_search_speed_veryslow,
|
||||
UI_search_speed_allmemory,
|
||||
UI_search_select_memory_areas,
|
||||
UI_search_matches_found,
|
||||
UI_search_noinit,
|
||||
UI_search_nosave,
|
||||
UI_search_done,
|
||||
UI_search_OK,
|
||||
UI_search_select_value,
|
||||
UI_search_all_values_saved,
|
||||
UI_search_one_match_found_added,
|
||||
|
||||
/* refresh rate */
|
||||
UI_refresh_rate,
|
||||
UI_decoding_gfx,
|
||||
|
||||
UI_video,
|
||||
UI_screen,
|
||||
UI_rotate_clockwise,
|
||||
UI_rotate_counterclockwise,
|
||||
UI_flip_x,
|
||||
UI_flip_y,
|
||||
|
||||
UI_configuration,
|
||||
|
||||
UI_last_mame_entry
|
||||
};
|
||||
|
||||
#ifdef MESS
|
||||
#include "muitext.h"
|
||||
#endif
|
||||
|
||||
struct _lang_struct
|
||||
{
|
||||
int version;
|
||||
int multibyte; /* UNUSED: 1 if this is a multibyte font/language */
|
||||
UINT8 *fontdata; /* pointer to the raw font data to be decoded */
|
||||
UINT16 fontglyphs; /* total number of glyps in the external font - 1 */
|
||||
char langname[255];
|
||||
char fontname[255];
|
||||
char author[255];
|
||||
};
|
||||
typedef struct _lang_struct lang_struct;
|
||||
|
||||
int uistring_init (mame_file *language_file);
|
||||
|
||||
const char * ui_getstring (int string_num);
|
||||
|
||||
#endif /* __uitext_H__ */
|
||||
|
@ -15,7 +15,6 @@
|
||||
#include "hash.h"
|
||||
#include <ctype.h>
|
||||
#include <stdarg.h>
|
||||
#include "uitext.h"
|
||||
#include "unicode.h"
|
||||
#include <zlib.h>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user