Added option -[no]coin_lockout (-[no]coinlock) to control coin lockout behavior.

This commit is contained in:
Aaron Giles 2008-06-12 17:06:49 +00:00
parent e62e3229d3
commit c10b238896
4 changed files with 13 additions and 1 deletions

View File

@ -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

View File

@ -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" },

View File

@ -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"

View File

@ -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;