summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--docs/config.txt10
-rw-r--r--src/emu/emuopts.c1
-rw-r--r--src/emu/emuopts.h1
-rw-r--r--src/emu/inptport.c2
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;