Added GAME_IMPERFECT_KEYBOARD flag and changed ui.c to use that instead of displaying message for each driver with keyboard (no whatsnew)

This commit is contained in:
Miodrag Milanovic 2012-08-06 07:51:28 +00:00
parent e34d774806
commit 5c1ae623d5
2 changed files with 4 additions and 2 deletions

View File

@ -71,6 +71,7 @@ const UINT32 GAME_TYPE_ARCADE = 0x00040000; // arcade machine (coin operated
const UINT32 GAME_TYPE_CONSOLE = 0x00080000; // console system
const UINT32 GAME_TYPE_COMPUTER = 0x00100000; // any kind of computer including home computers, minis, calcs,...
const UINT32 GAME_TYPE_OTHER = 0x00200000; // any other emulated system that doesn't fit above (ex. clock, satelite receiver,...)
const UINT32 GAME_IMPERFECT_KEYBOARD = 0x00400000; // keyboard is known to be wrong
// useful combinations of flags
const UINT32 GAME_IS_SKELETON = GAME_NO_SOUND | GAME_NOT_WORKING; // mask for skelly games

View File

@ -303,7 +303,7 @@ int ui_display_startup_screens(running_machine &machine, int first_time, int sho
if (show_warnings && warnings_string(machine, messagebox_text).len() > 0)
{
ui_set_handler(handler_messagebox_ok, 0);
if (machine.system().flags & (GAME_WRONG_COLORS | GAME_IMPERFECT_COLORS | GAME_REQUIRES_ARTWORK | GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_NO_SOUND))
if (machine.system().flags & (GAME_WRONG_COLORS | GAME_IMPERFECT_COLORS | GAME_REQUIRES_ARTWORK | GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND | GAME_IMPERFECT_KEYBOARD | GAME_NO_SOUND))
messagebox_backcolor = UI_YELLOW_COLOR;
if (machine.system().flags & (GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_MECHANICAL))
messagebox_backcolor = UI_RED_COLOR;
@ -903,6 +903,7 @@ static astring &warnings_string(running_machine &machine, astring &string)
GAME_NO_SOUND | \
GAME_IMPERFECT_SOUND | \
GAME_IMPERFECT_GRAPHICS | \
GAME_IMPERFECT_KEYBOARD | \
GAME_NO_COCKTAIL)
string.reset();
@ -935,7 +936,7 @@ static astring &warnings_string(running_machine &machine, astring &string)
string.cat(" have not been correctly dumped.\n");
}
/* add one line per warning flag */
if (machine.ioport().has_keyboard())
if (machine.system().flags & GAME_IMPERFECT_KEYBOARD)
string.cat("The keyboard emulation may not be 100% accurate.\n");
if (machine.system().flags & GAME_IMPERFECT_COLORS)
string.cat("The colors aren't 100% accurate.\n");