diff --git a/src/emu/gamedrv.h b/src/emu/gamedrv.h index b28b4ddae70..1a983dfe843 100644 --- a/src/emu/gamedrv.h +++ b/src/emu/gamedrv.h @@ -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 diff --git a/src/emu/ui.c b/src/emu/ui.c index ae5bac00e17..d1c6c3d9a74 100644 --- a/src/emu/ui.c +++ b/src/emu/ui.c @@ -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");