diff options
-rw-r--r-- | docs/config.txt | 10 | ||||
-rw-r--r-- | src/emu/emuopts.c | 1 | ||||
-rw-r--r-- | src/emu/emuopts.h | 1 | ||||
-rw-r--r-- | src/emu/inptport.c | 2 |
4 files changed, 13 insertions, 1 deletions
diff --git a/docs/config.txt b/docs/config.txt index f3e580dec8f..0df7775758d 100644 --- a/docs/config.txt +++ b/docs/config.txt @@ -718,6 +718,16 @@ Core sound options Core input options ------------------ +-[no]coin_lockout / -[no]coinlock + + Enables simulation of the "coin lockout" feature that is implmeneted + on a number of game PCBs. It was up to the operator whether or not + the coin lockout outputs were actually connected to the coin + mechanisms. If this feature is enabled, then attempts to enter a coin + while the lockout is active will fail and will display a popup message + in the user interface. If this feature is disabled, the coin lockout + signal will be ignored. The default is ON (-coin_lockout). + -ctrlr <controller> Enables support for special controllers. Configuration files are diff --git a/src/emu/emuopts.c b/src/emu/emuopts.c index d93b6c34728..0c8568e0935 100644 --- a/src/emu/emuopts.c +++ b/src/emu/emuopts.c @@ -118,6 +118,7 @@ const options_entry mame_core_options[] = /* input options */ { NULL, NULL, OPTION_HEADER, "CORE INPUT OPTIONS" }, + { "coin_lockout;coinlock", "1", OPTION_BOOLEAN, "enable coin lockouts to actually lock out coins" }, { "ctrlr", NULL, 0, "preconfigure for specified controller" }, { "mouse", "0", OPTION_BOOLEAN, "enable mouse input" }, { "joystick;joy", "1", OPTION_BOOLEAN, "enable joystick input" }, diff --git a/src/emu/emuopts.h b/src/emu/emuopts.h index dc9d07cd07c..6b64baa6072 100644 --- a/src/emu/emuopts.h +++ b/src/emu/emuopts.h @@ -110,6 +110,7 @@ #define OPTION_VOLUME "volume" /* core input options */ +#define OPTION_COIN_LOCKOUT "coin_lockout" #define OPTION_CTRLR "ctrlr" #define OPTION_MOUSE "mouse" #define OPTION_JOYSTICK "joystick" diff --git a/src/emu/inptport.c b/src/emu/inptport.c index 97fefd428c3..d7ba349762d 100644 --- a/src/emu/inptport.c +++ b/src/emu/inptport.c @@ -2348,7 +2348,7 @@ static int frame_get_digital_field_state(const input_field_config *field) } /* skip locked-out coin inputs */ - if (curstate && field->type >= IPT_COIN1 && field->type <= IPT_COIN8 && coinlockedout[field->type - IPT_COIN1]) + if (curstate && field->type >= IPT_COIN1 && field->type <= IPT_COIN8 && coinlockedout[field->type - IPT_COIN1] && options_get_bool(mame_options(), OPTION_COIN_LOCKOUT)) { ui_popup_time(3, "Coinlock disabled %s.", input_field_name(field)); return FALSE; |