summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/goldstar.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/goldstar.c')
-rw-r--r--src/mame/drivers/goldstar.c994
1 files changed, 693 insertions, 301 deletions
diff --git a/src/mame/drivers/goldstar.c b/src/mame/drivers/goldstar.c
index 87351140d3c..493bce76dbf 100644
--- a/src/mame/drivers/goldstar.c
+++ b/src/mame/drivers/goldstar.c
@@ -20,6 +20,24 @@
Game notes:
-----------
+ * Wing Game Boards & Games (Originals):
+
+ Various types
+ - older pcbs can be green, blue or black
+ - newer pcbs are green
+ - might also be short & long types of each
+
+ Sub-boards are connected into the Z80 socket and all appear to be bootleg
+ upgrades/conversions/hacks. Are any of them legit?
+
+ W-4 New Lucky 8 Lines
+ Bingo - supposed to be a W-4 but unverified
+ F-5 New Lucky 8 Lines w/ Witch Bonus - bootleg/hack??
+ W-6 Fever Chance
+ W-7 Skill Chance
+ W-8 Bonus Chance
+ W-11 Lucky Star
+
* New Lucky 8 Lines:
@@ -99,6 +117,16 @@
Nominated for the *WORST* hacked gambling game EVER!
+ * Crazy Bonus (crazybon):
+
+ Appears to be from a bootleg conversion set for Poker Master (pokrmast). There
+ is another undumped bootleg conversion set advertised that displays Spirit or
+ Dyna copyright depending on DIP settings and has both poker and slots games (the
+ set in MAME displays "Crazy Co." copyright and only has a slots game).
+
+ Hold Settings button (9) during boot to access switch test.
+
+
***************************************************************************/
@@ -1085,7 +1113,7 @@ static INPUT_PORTS_START( cmv4_coins )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) PORT_NAME("Coin B")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) PORT_NAME("Coin B") /* Service coin in some cases */
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) PORT_NAME("Coin D")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_NAME("Coin C")
@@ -1811,7 +1839,7 @@ static INPUT_PORTS_START( cmasterc )
PORT_DIPNAME( 0x20, 0x00, "Display Of Doll At All Fr. Bonus" ) PORT_DIPLOCATION("DSW5:6") /* not checked */
PORT_DIPSETTING( 0x20, DEF_STR( Low ) )
PORT_DIPSETTING( 0x00, DEF_STR( High ) )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW5:7") /* listed as unused */
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) PORT_DIPLOCATION("DSW5:7") /* listed as unused */
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, "Test Mode For Disp. Of Doll" ) PORT_DIPLOCATION("DSW5:8") /* not checked */
@@ -1944,12 +1972,12 @@ static INPUT_PORTS_START( cmast91 )
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW5:1") /* no whores here */
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x06, 0x06, "Coin In Limit" ) PORT_DIPLOCATION("DSW5:2,3") /* not checked */
+ PORT_DIPNAME( 0x06, 0x06, "Coin In Limit" ) PORT_DIPLOCATION("DSW5:2,3") /* OK */
PORT_DIPSETTING( 0x06, "1,000" )
PORT_DIPSETTING( 0x04, "5,000" )
PORT_DIPSETTING( 0x02, "10,000" )
PORT_DIPSETTING( 0x00, "20,000" )
- PORT_DIPNAME( 0x18, 0x18, "Condition For 3 Kind Of Bonus" ) PORT_DIPLOCATION("DSW5:4,5") /* not checked */
+ PORT_DIPNAME( 0x18, 0x18, "Condition For 3 Kind Of Bonus" ) PORT_DIPLOCATION("DSW5:4,5") /* not checked */
PORT_DIPSETTING( 0x18, "12-7-1" )
PORT_DIPSETTING( 0x10, "9-5-1" )
PORT_DIPSETTING( 0x08, "6-3-1" )
@@ -2396,6 +2424,369 @@ static INPUT_PORTS_START( chryangl )
PORT_DIPSETTING( 0xc0, "1 Coin/10 Credits" )
INPUT_PORTS_END
+/* no manual - best guesses */
+static INPUT_PORTS_START( tonypok )
+ PORT_START("IN0")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Hold 2 / Big / Red")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Hold 3 / W-Up")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) PORT_NAME("Hold 4 / Take")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) PORT_NAME("Hold 5 / Bet")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1 / Small / Black")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Deal")
+
+ PORT_INCLUDE( cmv4_coins )
+
+ PORT_INCLUDE( cmv4_service )
+
+ PORT_START("DSW1") /* needs to be mapped correctly */
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:1") /* unknown */
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:2") /* unknown */
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:3") /* unknown */
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:4") /* unknown */
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:5") /* unknown */
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:6") /* unknown */
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:7") /* unknown */
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:8") /* unknown */
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ PORT_START("DSW2")
+ PORT_DIPNAME( 0x07, 0x07, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
+ PORT_DIPSETTING( 0x00, "40%" )
+ PORT_DIPSETTING( 0x01, "45%" )
+ PORT_DIPSETTING( 0x02, "50%" )
+ PORT_DIPSETTING( 0x03, "60%" )
+ PORT_DIPSETTING( 0x04, "65%" )
+ PORT_DIPSETTING( 0x05, "70%" )
+ PORT_DIPSETTING( 0x06, "75%" )
+ PORT_DIPSETTING( 0x07, "80%" )
+ PORT_DIPNAME( 0x18, 0x18, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5") /* not checked */
+ PORT_DIPSETTING( 0x18, "300" )
+ PORT_DIPSETTING( 0x10, "500" )
+ PORT_DIPSETTING( 0x08, "1000" )
+ PORT_DIPSETTING( 0x00, "Unlimited" )
+ PORT_DIPNAME( 0x20, 0x20, "100 Odds Sound" ) PORT_DIPLOCATION("DSW2:6") /* not checked */
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, "Key In Type" ) PORT_DIPLOCATION("DSW2:7") /* OK */
+ PORT_DIPSETTING( 0x40, "A-Type" )
+ PORT_DIPSETTING( 0x00, "B-Type" )
+ PORT_DIPNAME( 0x80, 0x80, "Coin D Rate" ) PORT_DIPLOCATION("DSW2:8") /* OK */
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0x80, DEF_STR( 1C_5C ) )
+
+ PORT_START("DSW3")
+ PORT_DIPNAME( 0x03, 0x03, "Key In Rate" ) PORT_DIPLOCATION("DSW3:1,2") /* OK */
+ PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x40) /* A-Type */
+ PORT_DIPSETTING( 0x01, "1 Coin/20 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x40)
+ PORT_DIPSETTING( 0x02, "1 Coin/50 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x40)
+ PORT_DIPSETTING( 0x03, "1 Coin/100 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x40)
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_5C ) ) PORT_CONDITION("DSW2",0x40,EQUALS,0x00) /* B-Type */
+ PORT_DIPSETTING( 0x01, "1 Coin/10 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x00)
+ PORT_DIPSETTING( 0x02, "1 Coin/25 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x00)
+ PORT_DIPSETTING( 0x03, "1 Coin/50 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x00)
+ PORT_DIPNAME( 0x04, 0x04, "Coin A Rate" ) PORT_DIPLOCATION("DSW3:3") /* OK */
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:4") /* unknown */
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:5") /* unknown */
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:6") /* unknown */
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:7") /* unknown */
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:8") /* unknown */
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ PORT_START("DSW4")
+ PORT_DIPNAME( 0x07, 0x07, "Coin In Limit" ) PORT_DIPLOCATION("DSW4:1,2,3") /* OK */
+ PORT_DIPSETTING( 0x07, "1,000" )
+ PORT_DIPSETTING( 0x05, "5,000" )
+ PORT_DIPSETTING( 0x02, "10,000" )
+ PORT_DIPSETTING( 0x00, "20,000" )
+ PORT_DIPNAME( 0x08, 0x08, "Instant W-Up Game" ) PORT_DIPLOCATION("DSW4:4") /* OK */
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) ) /* play W-up game right away from bet screen! */
+ PORT_DIPNAME( 0x10, 0x10, "Attract Mode Demo" ) PORT_DIPLOCATION("DSW4:5") /* OK */
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) /* Title screen only */
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) ) /* Title screen and demo */
+ PORT_DIPNAME( 0x20, 0x20, "Bonus Game Type" ) PORT_DIPLOCATION("DSW4:6") /* OK */
+ PORT_DIPSETTING( 0x20, "Big / Small" )
+ PORT_DIPSETTING( 0x00, "Black / Red" )
+ PORT_DIPNAME( 0x40, 0x40, "Card Type" ) PORT_DIPLOCATION("DSW4:7") /* OK */
+ PORT_DIPSETTING( 0x40, "Standard" )
+ PORT_DIPSETTING( 0x00, "Jets" )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:8") /* OK */
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ PORT_START("DSW5")
+ PORT_DIPNAME( 0x07, 0x07, "Lowest Winning Hand" ) PORT_DIPLOCATION("DSW5:1,2,3") /* OK */
+ PORT_DIPSETTING( 0x07, "2 Pair" )
+ PORT_DIPSETTING( 0x06, "Any Pair" )
+ PORT_DIPSETTING( 0x05, "6s Or Higher" )
+ PORT_DIPSETTING( 0x04, "10s Or Higher" )
+ PORT_DIPSETTING( 0x03, "Jacks Or Higher" )
+ PORT_DIPSETTING( 0x02, "Queens Or Higher" )
+ PORT_DIPSETTING( 0x01, "Kings Or Higher" )
+ PORT_DIPSETTING( 0x00, "Ace Pair" )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW5:4") /* unknown */
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, "Number Of Draws" ) PORT_DIPLOCATION("DSW5:5") /* OK */
+ PORT_DIPSETTING( 0x10, "1" )
+ PORT_DIPSETTING( 0x00, "2" )
+ PORT_DIPNAME( 0x20, 0x00, "Joker In Deck" ) PORT_DIPLOCATION("DSW5:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( No ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
+ PORT_DIPNAME( 0xc0, 0xc0, "Minimum Bet" ) PORT_DIPLOCATION("DSW5:7,8") /* OK */
+ PORT_DIPSETTING( 0x00, "1" )
+ PORT_DIPSETTING( 0xc0, "10" )
+ PORT_DIPSETTING( 0x80, "20")
+ PORT_DIPSETTING( 0x40, "30" )
+INPUT_PORTS_END
+
+/* taken from manual - (it's a starting point)
+ consider everything unverified
+ not all DIP banks are actually hooked up as I/O map is currently based on what crazybon actually reads
+*/
+static INPUT_PORTS_START( pkrmast )
+ PORT_START("IN0")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_V) PORT_NAME("Bet Red / 2")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SLOT_STOP3 ) PORT_CODE(KEYCODE_C) PORT_NAME("Stop 3 / Small / 1 / Info")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_B) PORT_NAME("Bet Blue / D-UP / 3")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SLOT_STOP1 ) PORT_CODE(KEYCODE_Z) PORT_NAME("Stop 1 / Take")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SLOT_STOP2 ) PORT_CODE(KEYCODE_X) PORT_NAME("Stop 2 / Big / Ticket")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_CODE(KEYCODE_N) PORT_NAME("Start / Stop All / 4")
+
+ PORT_START("IN1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_Q) PORT_NAME("IN1:1")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_W) PORT_NAME("IN1:2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_E) PORT_NAME("IN1:3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_R) PORT_NAME("IN1:4")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_T) PORT_NAME("IN1:5")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_Y) PORT_NAME("IN1:6")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_U) PORT_NAME("IN1:7")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_I) PORT_NAME("IN1:8")
+
+ PORT_START("IN2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_A) PORT_NAME("IN2:1")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_S) PORT_NAME("IN2:2")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_D) PORT_NAME("IN2:3")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_F) PORT_NAME("IN2:4")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_G) PORT_NAME("IN2:5")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_H) PORT_NAME("IN2:6")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_J) PORT_NAME("IN2:7")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_K) PORT_NAME("IN2:8")
+
+ PORT_START("DSW1")
+ PORT_DIPNAME( 0x01, 0x00, "Freeze Pair On Line" ) PORT_DIPLOCATION("DSW1:1")
+ PORT_DIPSETTING( 0x01, "Off" )
+ PORT_DIPSETTING( 0x00, "On" )
+ PORT_DIPNAME( 0x02, 0x02, "Hopper Out" ) PORT_DIPLOCATION("DSW1:2")
+ PORT_DIPSETTING( 0x02, "Active Low" )
+ PORT_DIPSETTING( 0x00, "Active High" )
+ PORT_DIPNAME( 0x04, 0x04, "Type Of Payout" ) PORT_DIPLOCATION("DSW1:3")
+ PORT_DIPSETTING( 0x04, "Switch" )
+ PORT_DIPSETTING( 0x00, "Automatic" )
+ PORT_DIPNAME( 0x08, 0x00, "W-Up '7'" ) PORT_DIPLOCATION("DSW1:4")
+ PORT_DIPSETTING( 0x08, "Loss" )
+ PORT_DIPSETTING( 0x00, "Even" )
+ PORT_DIPNAME( 0x10, 0x10, "W-Up Pay Rate" ) PORT_DIPLOCATION("DSW1:5")
+ PORT_DIPSETTING( 0x10, "70%" )
+ PORT_DIPSETTING( 0x00, "80%" )
+ PORT_DIPNAME( 0x20, 0x20, "W-Up Game" ) PORT_DIPLOCATION("DSW1:6")
+ PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x20, DEF_STR( On ) )
+ PORT_DIPNAME( 0xc0, 0x00, "Bet Max" ) PORT_DIPLOCATION("DSW1:7,8")
+ PORT_DIPSETTING( 0xc0, "16" )
+ PORT_DIPSETTING( 0x80, "32" )
+ PORT_DIPSETTING( 0x40, "64" )
+ PORT_DIPSETTING( 0x00, "96" )
+
+ PORT_START("DSW2")
+ PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3")
+ PORT_DIPSETTING( 0x07, "30%" )
+ PORT_DIPSETTING( 0x06, "40%" )
+ PORT_DIPSETTING( 0x05, "45%" )
+ PORT_DIPSETTING( 0x04, "50%" )
+ PORT_DIPSETTING( 0x03, "55%" )
+ PORT_DIPSETTING( 0x02, "60%" )
+ PORT_DIPSETTING( 0x01, "65%" )
+ PORT_DIPSETTING( 0x00, "70%" )
+ PORT_DIPNAME( 0x18, 0x00, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5")
+ PORT_DIPSETTING( 0x18, "300" )
+ PORT_DIPSETTING( 0x10, "500" )
+ PORT_DIPSETTING( 0x08, "1000" )
+ PORT_DIPSETTING( 0x00, "Unlimited" )
+ PORT_DIPNAME( 0x20, 0x00, "100 Odds Sound" ) PORT_DIPLOCATION("DSW2:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x00, "Key In Type" ) PORT_DIPLOCATION("DSW2:7")
+ PORT_DIPSETTING( 0x00, "A-Type" )
+ PORT_DIPSETTING( 0x40, "B-Type" )
+ PORT_DIPNAME( 0x80, 0x00, "Type Of Coin D" ) PORT_DIPLOCATION("DSW2:8")
+ PORT_DIPSETTING( 0x00, "C Type" )
+ PORT_DIPSETTING( 0x80, "D Type" )
+
+ PORT_START("DSW3-0")
+ PORT_DIPNAME( 0x03, 0x00, "Key In Rate" ) PORT_DIPLOCATION("DSW3:1,2")
+ PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x00) /* A Type */
+ PORT_DIPSETTING( 0x01, "1 Coin/20 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x00)
+ PORT_DIPSETTING( 0x02, "1 Coin/50 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x00)
+ PORT_DIPSETTING( 0x03, "1 Coin/100 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x00)
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_5C) ) PORT_CONDITION("DSW2",0x40,EQUALS,0x40) /* B Type */
+ PORT_DIPSETTING( 0x01, "1 Coin/10 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x40)
+ PORT_DIPSETTING( 0x02, "1 Coin/25 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x40)
+ PORT_DIPSETTING( 0x03, "1 Coin/50 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x40)
+ PORT_DIPNAME( 0x0c, 0x00, "Coin A Rate" ) PORT_DIPLOCATION("DSW3:3,4")
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0x08, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0x0c, "1 Coin/10 Credits" )
+ PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
+
+ PORT_START("DSW3-1")
+ PORT_DIPNAME( 0x03, 0x00, "Coin D Rate" ) PORT_DIPLOCATION("DSW3:5,6")
+ PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" ) PORT_CONDITION("DSW2",0x80,EQUALS,0x00) /* C Type */
+ PORT_DIPSETTING( 0x01, "1 Coin/20 Credits" ) PORT_CONDITION("DSW2",0x80,EQUALS,0x00)
+ PORT_DIPSETTING( 0x02, "1 Coin/50 Credits" ) PORT_CONDITION("DSW2",0x80,EQUALS,0x00)
+ PORT_DIPSETTING( 0x03, "1 Coin/100 Credits" ) PORT_CONDITION("DSW2",0x80,EQUALS,0x00)
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_5C) ) PORT_CONDITION("DSW2",0x80,EQUALS,0x80) /* D Type */
+ PORT_DIPSETTING( 0x01, "1 Coin/10 Credits" ) PORT_CONDITION("DSW2",0x80,EQUALS,0x80)
+ PORT_DIPSETTING( 0x02, "1 Coin/25 Credits" ) PORT_CONDITION("DSW2",0x80,EQUALS,0x80)
+ PORT_DIPSETTING( 0x03, "1 Coin/50 Credits" ) PORT_CONDITION("DSW2",0x80,EQUALS,0x80)
+ PORT_DIPNAME( 0x0c, 0x00, "Coin C Rate" ) PORT_DIPLOCATION("DSW3:7,8")
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0x08, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0x0c, "1 Coin/10 Credits" )
+ PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
+
+ PORT_START("DSW4")
+ PORT_DIPNAME( 0x07, 0x00, "Credit Limit" ) PORT_DIPLOCATION("DSW4:1,2,3")
+ PORT_DIPSETTING( 0x07, "5000" )
+ PORT_DIPSETTING( 0x06, "10000" )
+ PORT_DIPSETTING( 0x05, "20000" )
+ PORT_DIPSETTING( 0x04, "30000" )
+ PORT_DIPSETTING( 0x03, "40000" )
+ PORT_DIPSETTING( 0x02, "50000" )
+ PORT_DIPSETTING( 0x01, "100000" )
+ PORT_DIPSETTING( 0x00, "Unlimited" )
+ PORT_DIPNAME( 0x08, 0x00, "Display Credit Limit" ) PORT_DIPLOCATION("DSW4:4")
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x00, "Bet Limit For Center Super 7" ) PORT_DIPLOCATION("DSW4:5")
+ PORT_DIPSETTING( 0x10, "Limited" )
+ PORT_DIPSETTING( 0x00, "Unlimited" )
+ PORT_DIPNAME( 0x20, 0x00, "Bonus Play Min Bet" ) PORT_DIPLOCATION("DSW4:6")
+ PORT_DIPSETTING( 0x00, "8" )
+ PORT_DIPSETTING( 0x20, "16" )
+ PORT_DIPNAME( 0x40, 0x40, "Reel Speed" ) PORT_DIPLOCATION("DSW4:7")
+ PORT_DIPSETTING( 0x40, DEF_STR( Low ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( High ) )
+ PORT_DIPNAME( 0x80, 0x00, "Hopper Out By Coin A" ) PORT_DIPLOCATION("DSW4:8")
+ PORT_DIPSETTING( 0x80, "On" )
+ PORT_DIPSETTING( 0x00, "Off" )
+
+ PORT_START("DSW5")
+ PORT_DIPNAME( 0x01, 0x00, "Display Doll On Demo" ) PORT_DIPLOCATION("DSW5:1")
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x06, 0x06, "Coin In Limit" ) PORT_DIPLOCATION("DSW5:2,3")
+ PORT_DIPSETTING( 0x00, "1000" )
+ PORT_DIPSETTING( 0x02, "5000" )
+ PORT_DIPSETTING( 0x04, "10000" )
+ PORT_DIPSETTING( 0x06, "20000" )
+ PORT_DIPNAME( 0x18, 0x18, "Condition For 3 Kind Bonus" ) PORT_DIPLOCATION("DSW5:4,5")
+ PORT_DIPSETTING( 0x18, "3-2-1" )
+ PORT_DIPSETTING( 0x10, "6-3-1" )
+ PORT_DIPSETTING( 0x08, "9-5-1" )
+ PORT_DIPSETTING( 0x00, "12-7-1" )
+ PORT_DIPNAME( 0x20, 0x00, "Display Doll On Fruit & Cherry Bonus" ) PORT_DIPLOCATION("DSW5:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x00, "Coin Out Rate" ) PORT_DIPLOCATION("DSW5:7")
+ PORT_DIPSETTING( 0x00, "1" )
+ PORT_DIPSETTING( 0x40, "10" )
+ PORT_DIPNAME( 0x80, 0x00, "Run Cards In W-Up" ) PORT_DIPLOCATION("DSW5:8")
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+
+ PORT_START("DSW6")
+ PORT_DIPNAME( 0x01, 0x00, "Card Type" ) PORT_DIPLOCATION("DSW6:1")
+ PORT_DIPSETTING( 0x01, "Cards" )
+ PORT_DIPSETTING( 0x00, "Missiles" )
+ PORT_DIPNAME( 0x02, 0x02, "Type Of W-Up Game" ) PORT_DIPLOCATION("DSW6:2")
+ PORT_DIPSETTING( 0x00, "Big / Small" )
+ PORT_DIPSETTING( 0x02, "Red / Black" )
+ PORT_DIPNAME( 0x04, 0x00, "Hold After 1st Hold" ) PORT_DIPLOCATION("DSW6:3")
+ PORT_DIPSETTING( 0x04, "Off" )
+ PORT_DIPSETTING( 0x00, "On" )
+ PORT_DIPNAME( 0x08, 0x00, "Royal Win" ) PORT_DIPLOCATION("DSW6:4")
+ PORT_DIPSETTING( 0x08, "Off" )
+ PORT_DIPSETTING( 0x00, "On" )
+ PORT_DIPNAME( 0x10, 0x00, "Joker" ) PORT_DIPLOCATION("DSW6:5")
+ PORT_DIPSETTING( 0x10, "Off" )
+ PORT_DIPSETTING( 0x00, "On" )
+ PORT_DIPNAME( 0xe0, 0x00, "One Pair Win Type" ) PORT_DIPLOCATION("DSW6:6,7,8")
+ PORT_DIPSETTING( 0x80, "No Win" )
+ PORT_DIPSETTING( 0x60, "Any Pair" )
+ PORT_DIPSETTING( 0x40, "6s & Better" )
+ PORT_DIPSETTING( 0xe0, "10s & Beter" )
+ PORT_DIPSETTING( 0xc0, "Jacks & Better" )
+ PORT_DIPSETTING( 0xa0, "Queens & Better" )
+ PORT_DIPSETTING( 0x20, "Kings & Better" )
+ PORT_DIPSETTING( 0x00, "Ace Pair" )
+
+ PORT_START("DSW7")
+ PORT_DIPNAME( 0x03, 0x01, "Minimum Bet To Play" ) PORT_DIPLOCATION("DSW7:1,2")
+ PORT_DIPSETTING( 0x01, "1" )
+ PORT_DIPSETTING( 0x02, "5" )
+ PORT_DIPSETTING( 0x03, "8" )
+ PORT_DIPSETTING( 0x00, "10" )
+ PORT_DIPNAME( 0x0c, 0x04, "Keys Panel Type" ) PORT_DIPLOCATION("DSW7:3,4")
+ PORT_DIPSETTING( 0x04, "A Type" )
+ PORT_DIPSETTING( 0x0c, "B Type" )
+ PORT_DIPSETTING( 0x08, "C Type" )
+ PORT_DIPSETTING( 0x00, "D Type" )
+ PORT_DIPNAME( 0x10, 0x00, "Chance Bonus" ) PORT_DIPLOCATION("DSW7:5")
+ PORT_DIPSETTING( 0x10, DEF_STR( No ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
+ PORT_DIPNAME( 0x20, 0x00, "Sound At Run & Open Cards" ) PORT_DIPLOCATION("DSW7:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( No ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
+ PORT_DIPNAME( 0xc0, 0x80, "Main Game Type" ) PORT_DIPLOCATION("DSW7:7,8")
+ PORT_DIPSETTING( 0x40, "Cherry Master Only - Full Demo" )
+ PORT_DIPSETTING( 0xc0, "Poker Only - Full Demo" )
+ PORT_DIPSETTING( 0x80, "Full Demo Of Both Games" )
+ PORT_DIPSETTING( 0x00, "Logo Only Demo Of Both Games" )
+INPUT_PORTS_END
+
static INPUT_PORTS_START( chry10 )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2897,12 +3288,12 @@ static INPUT_PORTS_START( lucky8 )
PORT_START("IN3") /* d810 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) // Coin1?
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) PORT_NAME("Coin B")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) // Coin2?
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) // Coin3?
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) PORT_NAME("Coin D")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_NAME("Coin C")
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) // Coin4?
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) PORT_NAME("Coin A")
PORT_START("IN4") /* d811 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -2927,7 +3318,7 @@ static INPUT_PORTS_START( lucky8 )
PORT_DIPNAME( 0x08, 0x00, "W-UP '7'" ) PORT_DIPLOCATION("DSW1:4")
PORT_DIPSETTING( 0x08, "Lose" )
PORT_DIPSETTING( 0x00, "Even" )
- PORT_DIPNAME( 0x10, 0x10, "W-UP Pay Rate" ) PORT_DIPLOCATION("DSW1:5") /* not used in set 1 */
+ PORT_DIPNAME( 0x10, 0x10, "W-UP Pay Rate" ) PORT_DIPLOCATION("DSW1:5") /* OK */
PORT_DIPSETTING( 0x10, "80%" )
PORT_DIPSETTING( 0x00, "90%" )
PORT_DIPNAME( 0x20, 0x20, "W-UP Game" ) PORT_DIPLOCATION("DSW1:6")
@@ -2964,57 +3355,55 @@ static INPUT_PORTS_START( lucky8 )
PORT_DIPSETTING( 0x80, "Reels (automatic)" )
PORT_DIPSETTING( 0x00, "Cards (Big/Small)" )
- PORT_START("DSW3")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:1")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:2")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:3")
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:4")
- PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:5")
- PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:6")
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_START("DSW3") /* marked as DSW4 in manual */
+ PORT_DIPNAME( 0x0f, 0x07, "Coin D Rate" ) PORT_DIPLOCATION("DSW4:1,2,3,4") /* OK - all other values are 10C/1C */
+ PORT_DIPSETTING( 0x0f, "10 Coins/1 Credit" )
+ PORT_DIPSETTING( 0x01, DEF_STR( 5C_1C ) )
+ PORT_DIPSETTING( 0x02, "5 Coins/2 Credits" )
+ PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) )
+ PORT_DIPSETTING( 0x05, DEF_STR( 2C_1C ) )
+ PORT_DIPSETTING( 0x06, DEF_STR( 2C_3C ) )
+ PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0x09, DEF_STR( 1C_3C ) )
+ PORT_DIPSETTING( 0x0a, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0x0b, "1 Coin/10 Credits" )
+ PORT_DIPNAME( 0x70, 0x60, "Coin C Rate" ) PORT_DIPLOCATION("DSW4:5,6,7") /* OK - all other values are 10C/1C */
+ PORT_DIPSETTING( 0x70, "10 Coins/1 Credit" )
+ PORT_DIPSETTING( 0x10, "9 Coins/1 Credit" )
+ PORT_DIPSETTING( 0x20, DEF_STR( 6C_1C ) )
+ PORT_DIPSETTING( 0x30, DEF_STR( 5C_1C ) )
+ PORT_DIPSETTING( 0x40, DEF_STR( 3C_1C ) )
+ PORT_DIPSETTING( 0x50, DEF_STR( 2C_1C ) )
+ PORT_DIPSETTING( 0x60, DEF_STR( 1C_1C ) )
+ PORT_DIPNAME( 0x80, 0x80, "4th Coin" ) PORT_DIPLOCATION("DSW4:8") /* OK */
+ PORT_DIPSETTING( 0x80, "As Coin A" )
+ PORT_DIPSETTING( 0x00, "As Hopper Line" )
+
+ PORT_START("DSW4") /* marked as DSW3 in manual */
+ PORT_DIPNAME( 0x07, 0x07, "Key In Rate" ) PORT_DIPLOCATION("DSW3:1,2,3") /* OK */
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0x01, "1 Coin/10 Credits" )
+ PORT_DIPSETTING( 0x02, "1 Coin/20 Credits" )
+ PORT_DIPSETTING( 0x03, "1 Coin/25 Credits" )
+ PORT_DIPSETTING( 0x04, "1 Coin/40 Credits" )
+ PORT_DIPSETTING( 0x05, "1 Coin/50 Credits" )
+ PORT_DIPSETTING( 0x06, "1 Coin/60 Credits" )
+ PORT_DIPSETTING( 0x07, "1 Coin/100 Credits" )
+ PORT_DIPNAME( 0x38, 0x38, "Coin A Rate" ) PORT_DIPLOCATION("DSW3:4,5,6") /* OK */
+ PORT_DIPSETTING( 0x38, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0x10, DEF_STR( 1C_4C ) )
+ PORT_DIPSETTING( 0x18, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0x20, DEF_STR( 1C_6C ) ) /* manual says 1C/8C */
+ PORT_DIPSETTING( 0x28, "1 Coin/10 Credits" )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:7")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
-
- PORT_START("DSW4")
- PORT_DIPNAME( 0x07, 0x07, "Key In Coin" ) PORT_DIPLOCATION("DSW4:1,2,3")
- PORT_DIPSETTING( 0x00, "5" )
- PORT_DIPSETTING( 0x01, "10" )
- PORT_DIPSETTING( 0x02, "20" )
- PORT_DIPSETTING( 0x03, "25" )
- PORT_DIPSETTING( 0x04, "40" )
- PORT_DIPSETTING( 0x05, "50" )
- PORT_DIPSETTING( 0x06, "60" )
- PORT_DIPSETTING( 0x07, "100" )
- PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:4")
- PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:5")
- PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:6")
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:7")
- PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:8")
- PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
static INPUT_PORTS_START( lucky8a )
@@ -3128,107 +3517,106 @@ static INPUT_PORTS_START( ns8linew )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_NAME("Key Out / Attendant")
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_CODE(KEYCODE_8_PAD) PORT_NAME("Hopper")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_NAME("Key Out / Attendant")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_CODE(KEYCODE_8_PAD) PORT_NAME("Hopper")
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_SERVICE ) PORT_NAME("Settings")
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Stats")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Stats")
PORT_START("DSW1")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:1")
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:1")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:2")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:3")
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:4")
- PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "W-UP Pay Rate" ) PORT_DIPLOCATION("DSW1:5")
- PORT_DIPSETTING( 0x10, "60%" )
- PORT_DIPSETTING( 0x00, "80%" )
- PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:6")
+ PORT_DIPNAME( 0x02, 0x02, "Hopper Coin Switch" ) PORT_DIPLOCATION("DSW1:2") /* not checked */
+ PORT_DIPSETTING( 0x02, "Active Low" )
+ PORT_DIPSETTING( 0x00, "Active High" )
+ PORT_DIPNAME( 0x04, 0x04, "Payout Mode" ) PORT_DIPLOCATION("DSW1:3") /* not checked */
+ PORT_DIPSETTING( 0x04, "Payout Switch" )
+ PORT_DIPSETTING( 0x00, "Automatic" )
+ PORT_DIPNAME( 0x18, 0x18, "Double-Up Pay Rate" ) PORT_DIPLOCATION("DSW1:4,5") /* OK */
+ PORT_DIPSETTING( 0x18, "60%" )
+ PORT_DIPSETTING( 0x10, "70%" )
+ PORT_DIPSETTING( 0x08, "80%" )
+ PORT_DIPSETTING( 0x00, "90%" )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:6")
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:7")
- PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:8")
- PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0xc0, 0x00, "Special Odds" ) PORT_DIPLOCATION("DSW1:7,8") /* not checked */
+ PORT_DIPSETTING( 0xc0, "None" )
+ PORT_DIPSETTING( 0xb0, "Limited to x300 (x1000)" )
+ PORT_DIPSETTING( 0x40, "Limited to x500 (x5000)" )
+ PORT_DIPSETTING( 0x00, "Limited to x1000 (x10000)" )
PORT_START("DSW2")
- PORT_DIPNAME( 0x03, 0x01, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2")
+ PORT_DIPNAME( 0x03, 0x01, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2") /* OK */
PORT_DIPSETTING( 0x03, "60%" )
PORT_DIPSETTING( 0x02, "70%" )
PORT_DIPSETTING( 0x01, "80%" )
PORT_DIPSETTING( 0x00, "90%" )
- PORT_DIPNAME( 0x04, 0x04, "Double-Up Game" ) PORT_DIPLOCATION("DSW2:3")
+ PORT_DIPNAME( 0x04, 0x04, "Double-Up Game" ) PORT_DIPLOCATION("DSW2:3") /* OK */
PORT_DIPSETTING( 0x00, DEF_STR( No ) )
PORT_DIPSETTING( 0x04, DEF_STR( Yes ) )
- PORT_DIPNAME( 0x18, 0x00, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5") // unverified
+ PORT_DIPNAME( 0x18, 0x00, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5") /* not checked */
PORT_DIPSETTING( 0x18, "300" )
PORT_DIPSETTING( 0x10, "500" )
PORT_DIPSETTING( 0x08, "1000" )
PORT_DIPSETTING( 0x00, "Unlimited" )
- PORT_DIPNAME( 0x20, 0x20, "Over 100 Bet Sound" ) PORT_DIPLOCATION("DSW2:6") // unverified
+ PORT_DIPNAME( 0x20, 0x20, "Over 100 Bet Sound" ) PORT_DIPLOCATION("DSW2:6") /* not checked */
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, "Odds Table" ) PORT_DIPLOCATION("DSW2:7") // unverified
+ PORT_DIPNAME( 0x40, 0x40, "Odds Table" ) PORT_DIPLOCATION("DSW2:7") /* not checked */
PORT_DIPSETTING( 0x40, "A - Low" )
PORT_DIPSETTING( 0x00, "B - High" )
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:8")
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:8") /* not working */
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW3")
- PORT_DIPNAME( 0x0f, 0x07, "Coin D" ) PORT_DIPLOCATION("DSW3:1,2,3,4")
- PORT_DIPSETTING( 0x00, "10 Coins/1 Credit" )
+ PORT_DIPNAME( 0x0f, 0x07, "Coin D Rate" ) PORT_DIPLOCATION("DSW3:1,2,3,4") /* OK - all other values are all 10C/1C */
+ PORT_DIPSETTING( 0x0f, "10 Coins/1 Credit" )
PORT_DIPSETTING( 0x01, DEF_STR( 5C_1C ) )
PORT_DIPSETTING( 0x02, "5 Coins/2 Credits" )
PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) )
+ PORT_DIPSETTING( 0x05, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x06, DEF_STR( 2C_3C ) )
PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x09, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x0a, DEF_STR( 1C_5C ) )
- PORT_DIPSETTING( 0x0b, "1 Coin/10 Credits" )
- PORT_DIPNAME( 0x70, 0x60, "Coin C" ) PORT_DIPLOCATION("DSW3:5,6,7")
+ PORT_DIPSETTING( 0x0b, "1 Coin/10 Credits" )
+ PORT_DIPNAME( 0x70, 0x60, "Coin C Rate" ) PORT_DIPLOCATION("DSW3:5,6,7") /* OK - all other values are 10C/1C */
PORT_DIPSETTING( 0x70, "10 Coins/1 Credit" )
PORT_DIPSETTING( 0x10, "9 Coins/1 Credit" )
- PORT_DIPSETTING( 0x20, "6 Coins/1 Credit" )
+ PORT_DIPSETTING( 0x20, DEF_STR( 6C_1C ) )
PORT_DIPSETTING( 0x30, DEF_STR( 5C_1C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x50, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x60, DEF_STR( 1C_1C ) )
- PORT_DIPNAME( 0x80, 0x80, "4th Coin" ) PORT_DIPLOCATION("DSW3:8")
- PORT_DIPSETTING( 0x80, "As Coin D" )
+ PORT_DIPNAME( 0x80, 0x80, "4th Coin" ) PORT_DIPLOCATION("DSW3:8") /* OK */
+ PORT_DIPSETTING( 0x80, "As Coin A" )
PORT_DIPSETTING( 0x00, "As Hopper Line" )
PORT_START("DSW4")
- PORT_DIPNAME( 0x07, 0x07, "Key In Coin" ) PORT_DIPLOCATION("DSW4:1,2,3")
- PORT_DIPSETTING( 0x00, "5" )
- PORT_DIPSETTING( 0x01, "10" )
- PORT_DIPSETTING( 0x02, "20" )
- PORT_DIPSETTING( 0x03, "25" )
- PORT_DIPSETTING( 0x04, "40" )
- PORT_DIPSETTING( 0x05, "50" )
- PORT_DIPSETTING( 0x06, "60" )
- PORT_DIPSETTING( 0x07, "100" )
- PORT_DIPNAME( 0x38, 0x00, "Coin A" ) PORT_DIPLOCATION("DSW4:4,5,6")
+ PORT_DIPNAME( 0x07, 0x07, "Key In Rate" ) PORT_DIPLOCATION("DSW4:1,2,3") /* OK */
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0x01, "1 Coin /10 Credits" )
+ PORT_DIPSETTING( 0x02, "1 Coin /20 Credits" )
+ PORT_DIPSETTING( 0x03, "1 Coin /25 Credits" )
+ PORT_DIPSETTING( 0x04, "1 Coin /40 Credits" )
+ PORT_DIPSETTING( 0x05, "1 Coin /50 Credits" )
+ PORT_DIPSETTING( 0x06, "1 Coin /60 Credits" )
+ PORT_DIPSETTING( 0x07, "1 Coin /100 Credits" )
+ PORT_DIPNAME( 0x38, 0x00, "Coin A Rate" ) PORT_DIPLOCATION("DSW4:4,5,6") /* OK */
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x10, DEF_STR( 1C_4C ) )
PORT_DIPSETTING( 0x18, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0x20, DEF_STR( 1C_6C ) ) // manual says 1c/8c
PORT_DIPSETTING( 0x28, "1 Coin/10 Credits" )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:7") // unverified
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:7") /* not checked */
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:8") // unverified
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:8") /* not checked */
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@@ -3564,12 +3952,12 @@ static INPUT_PORTS_START( bingowng )
PORT_START("IN3") /* d810 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) // Coin1?
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) // Coin2?
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) // Coin3?
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN ) PORT_IMPULSE(2)
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) // Coin4?
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) PORT_NAME( "Coin D" )
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_NAME( "Coin C" )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) PORT_NAME( "Coin B" )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) PORT_NAME( "Coin A" )
PORT_START("IN4") /* d811 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3582,16 +3970,16 @@ static INPUT_PORTS_START( bingowng )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Stats")
PORT_START("DSW1")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:1")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:2")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:3")
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x18, 0x18, "W-UP Pay Rate" ) PORT_DIPLOCATION("DSW1:4,5")
+ PORT_DIPNAME( 0x01, 0x01, "Cabinet Style" ) PORT_DIPLOCATION("DSW1:1") /* not checked */
+ PORT_DIPSETTING( 0x00, "Cocktail" )
+ PORT_DIPSETTING( 0x01, "Upright" )
+ PORT_DIPNAME( 0x02, 0x02, "Hopper Coin Switch") PORT_DIPLOCATION("DSW1:2") /* not checked */
+ PORT_DIPSETTING( 0x00, "Active Low" )
+ PORT_DIPSETTING( 0x02, "Active High" )
+ PORT_DIPNAME( 0x04, 0x04, "Payout Type" ) PORT_DIPLOCATION("DSW1:3") /* not checked */
+ PORT_DIPSETTING( 0x04, "Take Button" )
+ PORT_DIPSETTING( 0x00, "Automatic" )
+ PORT_DIPNAME( 0x18, 0x18, "W-UP Pay Rate" ) PORT_DIPLOCATION("DSW1:4,5") /* OK */
PORT_DIPSETTING( 0x18, "75%" )
PORT_DIPSETTING( 0x10, "80%" )
PORT_DIPSETTING( 0x08, "85%" )
@@ -3605,87 +3993,117 @@ static INPUT_PORTS_START( bingowng )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+/* On a W-4 PCB these are used as: "Special Odds-Prohibition Of Winning...(Odds B)" - see DSW2-7
+ PORT_DIPNAME( 0x80, 0x00, "Special Odds" ) PORT_DIPLOCATION("DSW1:7,8")
+ PORT_DIPSETTING( 0x00, "None" )
+ PORT_DIPSETTING( 0x40, "x300 (x1000)" )
+ PORT_DIPSETTING( 0x80, "x500 (x5000" )
+ PORT_DIPSETTING( 0xc0, "x1000 (x10000)
+*/
PORT_START("DSW2")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:1")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:2")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:3")
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:4")
- PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:5")
- PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:6")
+ PORT_DIPNAME( 0x03, 0x02, "Main Game Rate" ) PORT_DIPLOCATION("DSW2:1,2") /* OK */
+ PORT_DIPSETTING( 0x03, "Very Easy" )
+ PORT_DIPSETTING( 0x02, "Easy" )
+ PORT_DIPSETTING( 0x01, "Hard" )
+ PORT_DIPSETTING( 0x00, "Very Hard" )
+ PORT_DIPNAME( 0x04, 0x00, "W-Up Game" ) PORT_DIPLOCATION("DSW2:3") /* OK */
+ PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( On ) )
+ PORT_DIPNAME( 0x18, 0x18, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5") /* not checked */
+ PORT_DIPSETTING( 0x18, "300" )
+ PORT_DIPSETTING( 0x10, "1000" )
+ PORT_DIPSETTING( 0x08, "500" )
+ PORT_DIPSETTING( 0x00, "Unlimited" )
+ PORT_DIPNAME( 0x20, 0x20, "Sound for 100+ Bet" ) PORT_DIPLOCATION("DSW2:6") /* not checked */
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:7")
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:7")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:8")
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+/* On a W-4 PCB these are used as:
+ PORT_DIPNAME( 0x40, 0x40, "Odds" ) PORT_DIPLOCATION("DSW2:7")
+ PORT_DIPSETTING( 0x40, "Type A" )
+ PORT_DIPSETTING( 0x00, "Type B" )
+ PORT_DIPNAME( 0x80, 0x80, "Type Of W-Up Game" ) PORT_DIPLOCATION("DSW2:8")
+ PORT_DIPSETTING( 0x80, "Slots" )
+ PORT_DIPSETTING( 0x00, "Big/Small Card" )
+*/
+ /* On a W-4 PCB DSW3 & DSW4 are reversed and all dips on DSW4 are set to off! */
PORT_START("DSW3")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:1")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:2")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:3")
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:4")
- PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:5")
- PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:6")
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:7")
- PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:8")
+ PORT_DIPNAME( 0x0f, 0x07, "Coin D Rate" ) PORT_DIPLOCATION("DSW3:1,2,3,4") /* OK - other values are all 10C/1C */
+ PORT_DIPSETTING( 0x0f, "10 Coins/1 Credit" )
+ PORT_DIPSETTING( 0x01, DEF_STR( 5C_1C ) )
+ PORT_DIPSETTING( 0x02, "5 Coins/2 Credits" )
+ PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) )
+ PORT_DIPSETTING( 0x05, DEF_STR( 2C_1C ) )
+ PORT_DIPSETTING( 0x06, DEF_STR( 2C_3C ) )
+ PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0x09, DEF_STR( 1C_3C ) )
+ PORT_DIPNAME( 0x70, 0x60, "Coin C Rate" ) PORT_DIPLOCATION("DSW3:5,6,7") /* OK - other values are 10C/1C */
+ PORT_DIPSETTING( 0x70, "10 Coins/1 Credit" )
+ PORT_DIPSETTING( 0x10, "9 Coins/1 Credit" )
+ PORT_DIPSETTING( 0x20, DEF_STR( 6C_1C ) )
+ PORT_DIPSETTING( 0x30, DEF_STR( 5C_1C ) )
+ PORT_DIPSETTING( 0x40, DEF_STR( 3C_1C ) )
+ PORT_DIPSETTING( 0x50, DEF_STR( 2C_1C ) )
+ PORT_DIPSETTING( 0x60, DEF_STR( 1C_1C ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW4")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:1")
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:1")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:2")
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:2")
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:3")
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:3")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:4")
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:4")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:5")
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:5")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:6")
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:6")
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:7")
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:7")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:8")
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
-/* not verified */
+INPUT_PORTS_START( bingownga )
+ PORT_INCLUDE( bingowng )
+
+ PORT_MODIFY("DSW4")
+ PORT_DIPNAME( 0x07, 0x07, "Coin B Rate" ) PORT_DIPLOCATION("DSW4:1,2,3") /* OK - all other values are 2C/1C */
+ PORT_DIPSETTING( 0x07, DEF_STR( 2C_1C ) )
+ PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0x03, DEF_STR( 1C_3C ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( 1C_5C ) )
+ PORT_DIPNAME( 0x38, 0x38, "Coin A Rate" ) PORT_DIPLOCATION("DSW4:4,5,6") /* OK - all other values are 1C/1C, manual says 0x30 = 1C/100C but it doesn't work */
+ PORT_DIPSETTING( 0x38, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0x10, DEF_STR( 1C_4C ) )
+ PORT_DIPSETTING( 0x18, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0x20, DEF_STR( 1C_6C ) )
+ PORT_DIPSETTING( 0x28, "1 Coin/10 Credits" )
+INPUT_PORTS_END
+
static INPUT_PORTS_START( magodds )
PORT_START("IN0") /* d800 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -3738,32 +4156,32 @@ static INPUT_PORTS_START( magodds )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Stats")
PORT_START("DSW1")
- PORT_DIPNAME( 0x07, 0x00, "Coin A Rate" ) PORT_DIPLOCATION("DSW1:1,2,3")
- PORT_DIPSETTING( 0x05, "1" )
- PORT_DIPSETTING( 0x06, "2" )
- PORT_DIPSETTING( 0x07, "5" )
- PORT_DIPSETTING( 0x04, "10" )
- PORT_DIPSETTING( 0x03, "20" )
- PORT_DIPSETTING( 0x02, "30" )
- PORT_DIPSETTING( 0x01, "40" )
- PORT_DIPSETTING( 0x00, "50" )
- PORT_DIPNAME( 0x38, 0x00, "Key In Coin" ) PORT_DIPLOCATION("DSW1:4,5,6") // aka 'Coin B'
- PORT_DIPSETTING( 0x10, "5" )
- PORT_DIPSETTING( 0x18, "10" )
- PORT_DIPSETTING( 0x20, "20" )
- PORT_DIPSETTING( 0x28, "25" )
- PORT_DIPSETTING( 0x30, "40" )
- PORT_DIPSETTING( 0x38, "50" )
- PORT_DIPSETTING( 0x08, "60" )
- PORT_DIPSETTING( 0x00, "100" )
- PORT_DIPNAME( 0xc0, 0x00, "Coin C Rate" ) PORT_DIPLOCATION("DSW1:7,8")
- PORT_DIPSETTING( 0x40, "5" )
- PORT_DIPSETTING( 0x80, "10" )
- PORT_DIPSETTING( 0xc0, "25" )
- PORT_DIPSETTING( 0x00, "50" )
+ PORT_DIPNAME( 0x07, 0x00, "Coin A Rate" ) PORT_DIPLOCATION("DSW1:1,2,3") /* OK */
+ PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0x06, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0x07, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0x04, "1 Coin/10 Credits" )
+ PORT_DIPSETTING( 0x03, "1 Coin/20 Credits" )
+ PORT_DIPSETTING( 0x02, "1 Coin/30 Credits" )
+ PORT_DIPSETTING( 0x01, "1 Coin/40 Credits" )
+ PORT_DIPSETTING( 0x00, "1 Coin/50 Credits" )
+ PORT_DIPNAME( 0x38, 0x00, "Key In Rate" ) PORT_DIPLOCATION("DSW1:4,5,6") /* OK - aka Coin B */
+ PORT_DIPSETTING( 0x10, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0x18, "1 Coin/10 Credits" )
+ PORT_DIPSETTING( 0x20, "1 Coin/20 Credits" )
+ PORT_DIPSETTING( 0x28, "1 Coin/25 Credits" )
+ PORT_DIPSETTING( 0x30, "1 Coin/40 Credits" )
+ PORT_DIPSETTING( 0x38, "1 Coin/50 Credits" )
+ PORT_DIPSETTING( 0x08, "1 Coin/60 Credits" )
+ PORT_DIPSETTING( 0x00, "1 Coin/100 Credits" )
+ PORT_DIPNAME( 0xc0, 0x00, "Coin C Rate" ) PORT_DIPLOCATION("DSW1:7,8") /* OK */
+ PORT_DIPSETTING( 0x40, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0x80, "1 Coin/10 Credits" )
+ PORT_DIPSETTING( 0xc0, "1 Coin/25 Credits" )
+ PORT_DIPSETTING( 0x00, "1 Coin/50 Credits" )
PORT_START("DSW2")
- PORT_DIPNAME( 0x07, 0x04, "Main Game Level" ) PORT_DIPLOCATION("DSW2:1,2,3")
+ PORT_DIPNAME( 0x07, 0x04, "Main Game Level" ) PORT_DIPLOCATION("DSW2:1,2,3")
PORT_DIPSETTING( 0x00, "+4 - 56%" )
PORT_DIPSETTING( 0x01, "+3 - 60%" )
PORT_DIPSETTING( 0x02, "+2 - 64%" )
@@ -3772,7 +4190,7 @@ static INPUT_PORTS_START( magodds )
PORT_DIPSETTING( 0x05, "-1 - 76%" )
PORT_DIPSETTING( 0x06, "-2 - 80%" )
PORT_DIPSETTING( 0x07, "-3 - 84%" )
- PORT_DIPNAME( 0x08, 0x08, "Nudity / Strip" ) PORT_DIPLOCATION("DSW2:4") // verified
+ PORT_DIPNAME( 0x08, 0x08, "Nudity / Strip" ) PORT_DIPLOCATION("DSW2:4") /* OK */
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:5")
@@ -3788,58 +4206,57 @@ static INPUT_PORTS_START( magodds )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_START("DSW3")
- PORT_DIPNAME( 0x03, 0x03, "Credit Limit" ) PORT_DIPLOCATION("DSW3:1,2")
+ PORT_START("DSW3") /* marked as DSW4 */
+ PORT_DIPNAME( 0x03, 0x03, "Coin In Limit" ) PORT_DIPLOCATION("DSW4:1,2") /* OK */
PORT_DIPSETTING( 0x00, "1000" )
PORT_DIPSETTING( 0x01, "2000" )
PORT_DIPSETTING( 0x02, "3000" )
- PORT_DIPSETTING( 0x03, "Unlimited?" )
- PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:3")
+ PORT_DIPSETTING( 0x03, "Unlimited" )
+ PORT_DIPNAME( 0x04, 0x00, "Hopper Switch" ) PORT_DIPLOCATION("DSW4:3") /* not checked */
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:4")
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:4")
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0xf0, 0xf0, "Coin D Rate" ) PORT_DIPLOCATION("DSW3:5,6,7,8")
- PORT_DIPSETTING( 0x00, "10-1" )
- PORT_DIPSETTING( 0x10, "5-1" )
- PORT_DIPSETTING( 0x20, "5-2" )
- PORT_DIPSETTING( 0x30, "4-1" )
- PORT_DIPSETTING( 0x40, "4-3" )
- PORT_DIPSETTING( 0x50, "3-2" )
- PORT_DIPSETTING( 0x60, "3-1" )
- PORT_DIPSETTING( 0x70, "2-1" )
- PORT_DIPSETTING( 0x80, "2-3" )
- PORT_DIPSETTING( 0x90, "2-5" )
- PORT_DIPSETTING( 0xf0, "1-1" )
- PORT_DIPSETTING( 0xe0, "1-2" )
- PORT_DIPSETTING( 0xd0, "1-3" )
- PORT_DIPSETTING( 0xc0, "1-4" )
- PORT_DIPSETTING( 0xb0, "1-5" )
- PORT_DIPSETTING( 0xa0, "1-10" )
-
- PORT_START("DSW4")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:1")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:2")
- PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x0c, 0x0c, "Max Bet" ) PORT_DIPLOCATION("DSW4:3,4")
+ PORT_DIPNAME( 0xf0, 0xf0, "Coin D Rate" ) PORT_DIPLOCATION("DSW4:5,6,7,8") /* OK */
+ PORT_DIPSETTING( 0x00, "10 Coins/1 Credit" )
+ PORT_DIPSETTING( 0x10, DEF_STR( 5C_1C ) )
+ PORT_DIPSETTING( 0x20, "5 Coins/2 Credits" )
+ PORT_DIPSETTING( 0x30, DEF_STR( 4C_1C ) )
+ PORT_DIPSETTING( 0x40, DEF_STR( 4C_3C ) )
+ PORT_DIPSETTING( 0x60, DEF_STR( 3C_1C ) )
+ PORT_DIPSETTING( 0x50, DEF_STR( 3C_2C ) )
+ PORT_DIPSETTING( 0x70, DEF_STR( 2C_1C ) )
+ PORT_DIPSETTING( 0x80, DEF_STR( 2C_3C ) )
+ PORT_DIPSETTING( 0x90, DEF_STR( 2C_5C ) )
+ PORT_DIPSETTING( 0xf0, DEF_STR( 1C_1C ) )
+ PORT_DIPSETTING( 0xe0, DEF_STR( 1C_2C ) )
+ PORT_DIPSETTING( 0xd0, DEF_STR( 1C_3C ) )
+ PORT_DIPSETTING( 0xc0, DEF_STR( 1C_4C ) )
+ PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) )
+ PORT_DIPSETTING( 0xa0, "1 Coin/10 Credits" )
+
+ PORT_START("DSW4") /* marked as DSW3 */
+ PORT_DIPNAME( 0x03, 0x00, "Hopper Limit" ) PORT_DIPLOCATION("DSW3:1,2") /* not checked */
+ PORT_DIPSETTING( 0x03, "1000" )
+ PORT_DIPSETTING( 0x02, "500" )
+ PORT_DIPSETTING( 0x01, "300" )
+ PORT_DIPSETTING( 0x00, "Unlimited" )
+ PORT_DIPNAME( 0x0c, 0x0c, "Max Bet" ) PORT_DIPLOCATION("DSW3:3,4") /* OK */
PORT_DIPSETTING( 0x00, "8" )
PORT_DIPSETTING( 0x04, "16" )
PORT_DIPSETTING( 0x08, "32" )
PORT_DIPSETTING( 0x0c, "64" )
- PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:5")
- PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:6")
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:7")
- PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW4:8")
+ PORT_DIPNAME( 0x70, 0x00, "Credit Limit" ) PORT_DIPLOCATION("DSW3:5,6,7") /* OK */
+ PORT_DIPSETTING( 0x70, "5000" )
+ PORT_DIPSETTING( 0x60, "10000" )
+ PORT_DIPSETTING( 0x50, "20000" )
+ PORT_DIPSETTING( 0x40, "30000" )
+ PORT_DIPSETTING( 0x30, "40000" )
+ PORT_DIPSETTING( 0x20, "50000" )
+ PORT_DIPSETTING( 0x10, "90000" )
+ PORT_DIPSETTING( 0x00, "Unlimited" )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW3:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@@ -3859,7 +4276,7 @@ static INPUT_PORTS_START( schery97 )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_E) PORT_NAME("Display Pts/Ticket") /* undocumented - works when credited */
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) PORT_NAME("Note In")
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN )
@@ -4031,7 +4448,7 @@ static INPUT_PORTS_START( nfb96 )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_E) PORT_NAME("Display Pts/Ticket") /* undocumented - works when credited */
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) PORT_NAME("Note In")
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN )
@@ -4562,11 +4979,11 @@ static INPUT_PORTS_START( pokonl97 )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_E) PORT_NAME("Display Pts/Ticket") /* OK - works when credited */
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Note In") /* Note In */
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) /* Coin A */
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_NAME("Note In")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2)
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -4597,20 +5014,20 @@ static INPUT_PORTS_START( pokonl97 )
PORT_DIPSETTING( 0x28, "60" )
PORT_DIPSETTING( 0x30, "70" )
PORT_DIPSETTING( 0x38, "80" )
- PORT_DIPNAME( 0xc0, 0x80, "Minimum Play for Bonus" ) PORT_DIPLOCATION("DSW1:7,8") /* OK */
- PORT_DIPSETTING( 0x00, "8" )
- PORT_DIPSETTING( 0x40, "16" )
- PORT_DIPSETTING( 0x80, "24" )
- PORT_DIPSETTING( 0xc0, "32" )
+ PORT_DIPNAME( 0xc0, 0x80, "Big Hands Frequency" ) PORT_DIPLOCATION("DSW1:7,8") /* OK - hit frequency of 4/5-of a kind & flushes */
+ PORT_DIPSETTING( 0x00, "Level 1 - Lowest" )
+ PORT_DIPSETTING( 0x40, "Level 2" )
+ PORT_DIPSETTING( 0x80, "Level 3" )
+ PORT_DIPSETTING( 0xc0, "Level 4 - Highest" )
PORT_START("DSW2")
- PORT_DIPNAME( 0x01, 0x01, "Double-Up Game" ) PORT_DIPLOCATION("DSW2:1")
+ PORT_DIPNAME( 0x01, 0x01, "Double-Up Game" ) PORT_DIPLOCATION("DSW2:1")
PORT_DIPSETTING( 0x00, DEF_STR( No ) )
PORT_DIPSETTING( 0x01, DEF_STR( Yes ) )
PORT_DIPNAME( 0x02, 0x00, "Use Printer" ) PORT_DIPLOCATION("DSW2:2")
PORT_DIPSETTING( 0x00, "No (TDDD)" ) /* (Ticket Dispenser Direct Drive) */
- PORT_DIPSETTING( 0x02, "Yes" ) /* Use AUTO TKT DISPENSE only */
- PORT_DIPNAME( 0x1c, 0x10, "Coin In" ) PORT_DIPLOCATION("DSW2:3,4,5") /* OK */
+ PORT_DIPSETTING( 0x02, DEF_STR( Yes ) ) /* Use AUTO TKT DISPENSE only */
+ PORT_DIPNAME( 0x1c, 0x10, "Coin In Rate" ) PORT_DIPLOCATION("DSW2:3,4,5") /* OK */
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x08, DEF_STR( 1C_4C ) )
@@ -4619,7 +5036,7 @@ static INPUT_PORTS_START( pokonl97 )
PORT_DIPSETTING( 0x14, "1 Coin/20 Credits" )
PORT_DIPSETTING( 0x18, "1 Coin/25 Credits" )
PORT_DIPSETTING( 0x1c, "1 Coin/100 Credits" )
- PORT_DIPNAME( 0x60, 0x00, "Note In Value" ) PORT_DIPLOCATION("DSW2:6,7") /* OK */
+ PORT_DIPNAME( 0x60, 0x00, "Note In Value" ) PORT_DIPLOCATION("DSW2:6,7") /* OK */
PORT_DIPSETTING( 0x00, "100" )
PORT_DIPSETTING( 0x20, "200" )
PORT_DIPSETTING( 0x40, "500" )
@@ -4977,17 +5394,13 @@ INPUT_PORTS_END
static INPUT_PORTS_START( unkch )
PORT_START("IN0")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_N) PORT_NAME("Bet A / STOP 2")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2)
- PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
- PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
- PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_C) PORT_NAME("Take / STOP1")
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_M) PORT_NAME("Bet B / D-UP")
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_V) PORT_NAME("Small / STOP 3")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SLOT_STOP2 ) PORT_NAME("Bet A / Stop 2")
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE ) PORT_NAME("Cash Out")
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SLOT_STOP1 ) PORT_NAME("Take / Stop 1")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_M) PORT_NAME("Bet B / D-Up")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SLOT_STOP3 ) PORT_NAME("Small / Stop 3")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_B) PORT_NAME("Big")
PORT_START("IN1")
@@ -5895,12 +6308,12 @@ static INPUT_PORTS_START( crazybon )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_GAMBLE_HIGH ) PORT_NAME("Big")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SLOT_STOP_ALL ) PORT_NAME("Stop All / Take Score")
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SLOT_STOP_ALL ) PORT_NAME("Stop All / Take Score")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_GAMBLE_BET )
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small / Info")
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Start")
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small / Info")
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Start")
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
@@ -5912,15 +6325,7 @@ static INPUT_PORTS_START( crazybon )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) PORT_NAME("Coin A")
- PORT_START("IN2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_NAME("Key Out / Attendant")
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_SERVICE ) PORT_NAME("Settings")
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Stats")
+ PORT_INCLUDE( cmv4_service )
PORT_START("DSW1")
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:1")
@@ -5963,9 +6368,9 @@ static INPUT_PORTS_START( crazybon )
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:5")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:6")
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x00, "Mode" ) PORT_DIPLOCATION("DSW2:6")
+ PORT_DIPSETTING( 0x00, "Game" )
+ PORT_DIPSETTING( 0x20, "Desktop" ) /* displays a fake Windows ME desktop - wtf */
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:7")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -6063,25 +6468,13 @@ static INPUT_PORTS_START( cmpacman )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SLOT_STOP3 ) PORT_CODE(KEYCODE_C) PORT_NAME("Stop 3 / Small / Info")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_RIGHT) PORT_NAME("Start / Right")
- PORT_START("IN1")
+ PORT_INCLUDE( cmv4_coins )
+ PORT_MODIFY("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_K) PORT_NAME("Hidden switch for change games")
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) /* Coin B / Coin Service */
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) /* Coin D */
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) /* Coin C */
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) /* Coin A */
- PORT_START("IN2")
+ PORT_INCLUDE( cmv4_service )
+ PORT_MODIFY("IN2")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* Tied to GND and to the hidden switch that change games. (PC0+GND) -+-> PB0 */
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_GAMBLE_KEYOUT ) PORT_NAME("Key Out / Attendant")
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_SERVICE ) PORT_NAME("Settings")
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Stats")
PORT_START("DSW1")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW1:!1") /* OK */
@@ -6190,10 +6583,10 @@ static INPUT_PORTS_START( cmpacman )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW5")
- PORT_DIPNAME( 0x01, 0x00, "Display Of Doll On Demo" ) PORT_DIPLOCATION("DSW5:1") /* not working */
+ PORT_DIPNAME( 0x01, 0x00, "Display Of Doll On Demo" ) PORT_DIPLOCATION("DSW5:1") /* only affects payout table screen */
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x06, 0x06, "Coin In Limit" ) PORT_DIPLOCATION("DSW5:2,3") /* not checked */
+ PORT_DIPNAME( 0x06, 0x06, "Coin In Limit" ) PORT_DIPLOCATION("DSW5:2,3") /* OK */
PORT_DIPSETTING( 0x06, "1,000" )
PORT_DIPSETTING( 0x04, "5,000" )
PORT_DIPSETTING( 0x02, "10,000" )
@@ -6229,11 +6622,11 @@ static INPUT_PORTS_START( cmtetris )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_K) PORT_NAME("Hidden switch for Cherry Master")
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_L) PORT_NAME("Hidden switch for Tetris")
- PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) /* Coin Service (tied to PPI u34 PB3 to also coin Tetris game) */
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) /* Coin D */
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) /* Coin C */
+ PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) PORT_NAME("Coin B") /* Coin Service (tied to PPI u34 PB3 to also coin Tetris game) */
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) PORT_NAME("Coin D")
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_NAME("Coin B")
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN )
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) /* Coin A */
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) PORT_NAME("Coin A")
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* Tied to GND and to the hidden switch that change games. (PC0+GND) -+-> (PB0|PB1) */
@@ -8385,7 +8778,6 @@ ROM_END
This dump is not from the original Sang Ho board, it's from a Poker Master conversion kit
Plug-in daughterboard dated 1997
This set displays Crazy Co. copyright
- There is supposedly an undumped bootleg conversion set that displays Spirit or Dyna copyright depending on DIPs
*/
ROM_START( crazybon )
@@ -13583,10 +13975,10 @@ GAME( 1991, cmastere, cmaster, cm, cmasterb, goldstar_state, cmv4,
GAME( 1991, cmasterf, cmaster, cm, cmasterb, goldstar_state, cmv4, ROT0, "Dyna", "Cherry Master I (ver.1.01, set 7)", 0 )
-GAME( 1991, tonypok, 0, cm, cmv801, goldstar_state, tonypok, ROT0, "Corsica", "Poker Master (Tony-Poker V3.A, hack?)", 0 )
-GAME( 199?, jkrmast, 0, pkrmast, crazybon, goldstar_state, cmv4, ROT0, "<unknown>", "Joker Master", GAME_NOT_WORKING ) // encrypted?
-GAME( 199?, pkrmast, jkrmast, pkrmast, crazybon, goldstar_state, cmv4, ROT0, "<unknown>", "Poker Master (set 1)", GAME_NOT_WORKING ) // incomplete dump + encrypted?
-GAME( 199?, pkrmasta, jkrmast, pkrmast, crazybon, goldstar_state, cmv4, ROT0, "<unknown>", "Poker Master (set 2)", GAME_NOT_WORKING ) // incomplete dump + encrypted?
+GAME( 1991, tonypok, 0, cm, tonypok, goldstar_state, tonypok, ROT0, "Corsica", "Poker Master (Tony-Poker V3.A, hack?)", 0 )
+GAME( 199?, jkrmast, 0, pkrmast, pkrmast, goldstar_state, cmv4, ROT0, "<unknown>", "Joker Master", GAME_NOT_WORKING ) // encrypted?
+GAME( 199?, pkrmast, jkrmast, pkrmast, pkrmast, goldstar_state, cmv4, ROT0, "<unknown>", "Poker Master (ED-1993 set 1)", GAME_NOT_WORKING ) // incomplete dump + encrypted?
+GAME( 1993, pkrmasta, jkrmast, pkrmast, pkrmast, goldstar_state, cmv4, ROT0, "<unknown>", "Poker Master (ED-1993 set 2)", GAME_NOT_WORKING ) // incomplete dump + encrypted?
GAME( 1991, cmast91, 0, cmast91, cmast91, goldstar_state, cmast91, ROT0, "Dyna", "Cherry Master '91 (ver.1.30)", 0 )
@@ -13612,7 +14004,7 @@ GAME( 1990, bonusch, 0, bonusch, bonusch, driver_device, 0,
GAMEL( 1993, bingowng, 0, bingowng, bingowng, driver_device, 0, ROT0, "Wing Co., Ltd.", "Bingo (set 1)", 0, layout_bingowng )
-GAMEL( 1993, bingownga, bingowng, bingownga,bingowng, driver_device, 0, ROT0, "Wing Co., Ltd.", "Bingo (set 2)", 0, layout_bingowng )
+GAMEL( 1993, bingownga, bingowng, bingownga,bingownga,driver_device, 0, ROT0, "Wing Co., Ltd.", "Bingo (set 2)", 0, layout_bingowng )
GAME( 1992, magodds, 0, magodds, magodds, driver_device, 0, ROT0, "Pal Company / Micro Manufacturing Inc.", "Magical Odds (set 1)", GAME_WRONG_COLORS | GAME_IMPERFECT_GRAPHICS )
GAME( 1992, magoddsa, magodds, magodds, magodds, driver_device, 0, ROT0, "Pal Company / Micro Manufacturing Inc.", "Magical Odds (set 2)", GAME_WRONG_COLORS | GAME_IMPERFECT_GRAPHICS )