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.c742
1 files changed, 219 insertions, 523 deletions
diff --git a/src/mame/drivers/goldstar.c b/src/mame/drivers/goldstar.c
index bad1ec20763..bd1918f8eca 100644
--- a/src/mame/drivers/goldstar.c
+++ b/src/mame/drivers/goldstar.c
@@ -1134,6 +1134,33 @@ static INPUT_PORTS_START( cmv4_service )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK ) PORT_NAME("Stats")
INPUT_PORTS_END
+static INPUT_PORTS_START( cmv4_dsw2 )
+ PORT_START("DSW2")
+ PORT_DIPNAME( 0x07, 0x07, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3")
+ PORT_DIPSETTING( 0x07, "1 (Lowest)" )
+ PORT_DIPSETTING( 0x06, "2" )
+ PORT_DIPSETTING( 0x05, "3" )
+ PORT_DIPSETTING( 0x04, "4" )
+ PORT_DIPSETTING( 0x03, "5" )
+ PORT_DIPSETTING( 0x02, "6" )
+ PORT_DIPSETTING( 0x01, "7" )
+ PORT_DIPSETTING( 0x00, "8 (Highest)" )
+ PORT_DIPNAME( 0x18, 0x18, "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, 0x02, "100+ Odds Sound" ) PORT_DIPLOCATION("DSW2:6")
+ PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x20, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, "Key In Type" ) PORT_DIPLOCATION("DSW2:7")
+ PORT_DIPSETTING( 0x40, "A-Type" )
+ PORT_DIPSETTING( 0x00, "B-Type" )
+ PORT_DIPNAME( 0x80, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8")
+ PORT_DIPSETTING( 0x80, "Unlimited" )
+ PORT_DIPSETTING( 0x00, "Limited" )
+INPUT_PORTS_END
+
static INPUT_PORTS_START( cmv4_dsw3 )
PORT_START("DSW3")
PORT_DIPNAME( 0x03, 0x03, "Key In Rate" ) PORT_DIPLOCATION("DSW3:1,2")
@@ -1168,7 +1195,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( cmv4_dsw4 )
PORT_START("DSW4")
- PORT_DIPNAME( 0x07, 0x06, "Credit Limit" ) PORT_DIPLOCATION("DSW4:1,2,3")
+ PORT_DIPNAME( 0x07, 0x07, "Credit Limit" ) PORT_DIPLOCATION("DSW4:1,2,3")
PORT_DIPSETTING( 0x07, "5,000" )
PORT_DIPSETTING( 0x06, "10,000" )
PORT_DIPSETTING( 0x05, "20,000" )
@@ -1184,8 +1211,8 @@ static INPUT_PORTS_START( cmv4_dsw4 )
PORT_DIPSETTING( 0x10, "C-Type" )
PORT_DIPSETTING( 0x00, "D-Type" )
PORT_DIPNAME( 0x20, 0x20, "Min. Bet For Bonus Play" ) PORT_DIPLOCATION("DSW4:6")
- PORT_DIPSETTING( 0x20, "16 Bet" )
PORT_DIPSETTING( 0x00, "8 Bet" )
+ PORT_DIPSETTING( 0x20, "16 Bet" )
PORT_DIPNAME( 0x40, 0x40, "Reel Speed" ) PORT_DIPLOCATION("DSW4:7")
PORT_DIPSETTING( 0x40, DEF_STR( Low ) )
PORT_DIPSETTING( 0x00, DEF_STR( High ) )
@@ -1196,7 +1223,7 @@ INPUT_PORTS_END
INPUT_PORTS_START( cmv4_dsw5 )
PORT_START("DSW5")
- PORT_DIPNAME( 0x01, 0x00, "Display Of Doll On Demo" ) PORT_DIPLOCATION("DSW5:1")
+ PORT_DIPNAME( 0x01, 0x01, "Display Of 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")
@@ -1209,7 +1236,7 @@ INPUT_PORTS_START( cmv4_dsw5 )
PORT_DIPSETTING( 0x10, "9-5-1" )
PORT_DIPSETTING( 0x08, "6-3-1" )
PORT_DIPSETTING( 0x00, "3-2-1" )
- PORT_DIPNAME( 0x20, 0x00, "Display Of Doll At All Fr. Bonus" ) PORT_DIPLOCATION("DSW5:6")
+ PORT_DIPNAME( 0x20, 0x20, "Display Of Doll At All Fr. Bonus" ) PORT_DIPLOCATION("DSW5:6")
PORT_DIPSETTING( 0x20, DEF_STR( Low ) )
PORT_DIPSETTING( 0x00, DEF_STR( High ) )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) PORT_DIPLOCATION("DSW5:7")
@@ -1221,6 +1248,66 @@ INPUT_PORTS_START( cmv4_dsw5 )
INPUT_PORTS_END
+static INPUT_PORTS_START( cb3_dsw3 )
+ PORT_INCLUDE( cmv4_dsw3 )
+ PORT_MODIFY("DSW3")
+ PORT_DIPNAME( 0x03, 0x03, "Key In Rate" ) PORT_DIPLOCATION("DSW3:1,2")
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_5C ) ) PORT_CONDITION("DSW2",0x40,EQUALS,0x40) /* A-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_DIPSETTING( 0x00, "1 Coin/10 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x00) /* B-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_DIPNAME( 0x30, 0x30, "Coin D Rate" ) PORT_DIPLOCATION("DSW3:5,6")
+ PORT_DIPSETTING( 0x30, DEF_STR( 5C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10) /* C-Type */
+ PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
+ PORT_DIPSETTING( 0x10, DEF_STR( 1C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
+ PORT_DIPSETTING( 0x00, "1 Ticket/5 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00) /* D-Type */
+ PORT_DIPSETTING( 0x10, "1 Ticket/10 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
+ PORT_DIPSETTING( 0x20, "1 Ticket/25 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
+ PORT_DIPSETTING( 0x30, "1 Ticket/50 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
+INPUT_PORTS_END
+
+static INPUT_PORTS_START( cb3_dsw4 )
+ PORT_INCLUDE( cmv4_dsw4 )
+ PORT_MODIFY("DSW4")
+ PORT_DIPNAME( 0x10, 0x10, "Coin D Type" ) PORT_DIPLOCATION("DSW4:5")
+ PORT_DIPSETTING( 0x10, "C-Type (Tokens)" )
+ PORT_DIPSETTING( 0x00, "D-Type (Tickets)" )
+ PORT_DIPNAME( 0x80, 0x80, "Coin A Mode" ) PORT_DIPLOCATION("DSW4:8")
+ PORT_DIPSETTING( 0x80, "Unexchange" )
+ PORT_DIPSETTING( 0x00, "Exchange" )
+INPUT_PORTS_END
+
+static INPUT_PORTS_START( cb3_dsw5 )
+ PORT_START("DSW5")
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) PORT_DIPLOCATION("DSW5:1") /* not checked */
+ 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 working */
+ PORT_DIPSETTING( 0x06, "1,000" )
+ PORT_DIPSETTING( 0x04, "5,000" )
+ PORT_DIPSETTING( 0x02, "10,000" )
+ PORT_DIPSETTING( 0x00, "20,000" )
+ PORT_DIPNAME( 0x18, 0x10, "Coin Out Rate" ) PORT_DIPLOCATION("DSW5:4,5") /* not checked */
+ PORT_DIPSETTING( 0x00, "100 Credits / 1 Pulse" )
+ PORT_DIPSETTING( 0x08, "100 Credits / 5 Pulses" )
+ PORT_DIPSETTING( 0x10, "100 Credits / 10 Pulses" )
+ PORT_DIPSETTING( 0x18, "100 Credits / 100 Pulses" )
+ PORT_DIPNAME( 0x20, 0x20, "W-Up Girl" ) PORT_DIPLOCATION("DSW5:6") /* not working */
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0xc0, 0xc0, "Coin In Rate" ) PORT_DIPLOCATION("DSW5:7,8") /* not checked */
+ PORT_DIPSETTING( 0xc0, "100 Credits / 1 Pulse" )
+ PORT_DIPSETTING( 0x40, "100 Credits / 5 Pulses" )
+ PORT_DIPSETTING( 0x80, "100 Credits / 10 Pulses" )
+ PORT_DIPSETTING( 0x00, "100 Credits / 100 Pulses" )
+INPUT_PORTS_END
+
+
static INPUT_PORTS_START( cmv801 )
PORT_INCLUDE( cmv4_player )
@@ -1253,7 +1340,8 @@ static INPUT_PORTS_START( cmv801 )
PORT_DIPSETTING( 0x80, "64" )
PORT_DIPSETTING( 0xc0, "96" )
- PORT_START("DSW2")
+ PORT_INCLUDE( cmv4_dsw2 )
+ PORT_MODIFY("DSW2")
PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
PORT_DIPSETTING( 0x07, "35%" )
PORT_DIPSETTING( 0x06, "40%" )
@@ -1263,20 +1351,10 @@ static INPUT_PORTS_START( cmv801 )
PORT_DIPSETTING( 0x02, "60%" )
PORT_DIPSETTING( 0x01, "65%" )
PORT_DIPSETTING( 0x00, "70%" )
- PORT_DIPNAME( 0x18, 0x00, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5") /* OK */
- 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") /* not checked */
- PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x20, 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, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8") /* related with DSW 4-6 */
- PORT_DIPSETTING( 0x80, "Unlimited" )
- PORT_DIPSETTING( 0x00, "Limited" )
+ /* Hopper Limit OK */
+ /* 100+ Odds Sound not checked */
+ /* Key In Type OK */
+ /* Center Super 7 Bet Limit related with Min. Bet For Bonus Play (DSW4-6) */
PORT_INCLUDE( cmv4_dsw3 ) /* all OK */
@@ -1323,8 +1401,9 @@ static INPUT_PORTS_START( cmv4 )
PORT_DIPSETTING( 0x80, "32" )
PORT_DIPSETTING( 0xc0, "64" )
- PORT_START("DSW2")
- PORT_DIPNAME( 0x07, 0x03, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
+ PORT_INCLUDE( cmv4_dsw2 )
+ PORT_MODIFY("DSW2")
+ PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
PORT_DIPSETTING( 0x07, "30%" )
PORT_DIPSETTING( 0x06, "38%" )
PORT_DIPSETTING( 0x05, "46%" )
@@ -1333,20 +1412,10 @@ static INPUT_PORTS_START( cmv4 )
PORT_DIPSETTING( 0x02, "70%" )
PORT_DIPSETTING( 0x01, "78%" )
PORT_DIPSETTING( 0x00, "86%" )
- PORT_DIPNAME( 0x18, 0x00, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5") /* OK */
- 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") /* not checked */
- PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x20, 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, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8") /* related with DSW 4-6 */
- PORT_DIPSETTING( 0x80, "Unlimited" )
- PORT_DIPSETTING( 0x00, "Limited" )
+ /* Hopper Limit OK */
+ /* 100+ Odds Sound not checked */
+ /* Key In Type OK */
+ /* Center Super 7 Bet Limit related with Min. Bet For Bonus Play (DSW4-6) */
PORT_INCLUDE( cmv4_dsw3 ) /* all OK */
@@ -1401,8 +1470,9 @@ static INPUT_PORTS_START( cmaster )
PORT_DIPSETTING( 0x80, "32" )
PORT_DIPSETTING( 0xc0, "64" )
- PORT_START("DSW2")
- PORT_DIPNAME( 0x07, 0x03, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
+ PORT_INCLUDE( cmv4_dsw2 )
+ PORT_MODIFY("DSW2")
+ PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
PORT_DIPSETTING( 0x07, "45%" )
PORT_DIPSETTING( 0x06, "50%" )
PORT_DIPSETTING( 0x05, "55%" )
@@ -1411,20 +1481,10 @@ static INPUT_PORTS_START( cmaster )
PORT_DIPSETTING( 0x02, "70%" )
PORT_DIPSETTING( 0x01, "75%" )
PORT_DIPSETTING( 0x00, "80%" )
- PORT_DIPNAME( 0x18, 0x00, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5") /* OK */
- 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") /* not checked */
- PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x20, 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, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8") /* related with DSW 4-6 */
- PORT_DIPSETTING( 0x80, "Unlimited" )
- PORT_DIPSETTING( 0x00, "Limited" )
+ /* Hopper Limit OK */
+ /* 100+ Odds Sound not checked */
+ /* Key In Type OK */
+ /* Center Super 7 Bet Limit related with Min. Bet For Bonus Play (DSW4-6) */
PORT_INCLUDE( cmv4_dsw3 ) /* all OK */
@@ -1479,8 +1539,9 @@ static INPUT_PORTS_START( cmasterb )
PORT_DIPSETTING( 0x80, "32" )
PORT_DIPSETTING( 0xc0, "64" )
- PORT_START("DSW2")
- PORT_DIPNAME( 0x07, 0x03, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
+ PORT_INCLUDE( cmv4_dsw2 )
+ PORT_MODIFY("DSW2")
+ PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
PORT_DIPSETTING( 0x07, "55%" )
PORT_DIPSETTING( 0x06, "60%" )
PORT_DIPSETTING( 0x05, "65%" )
@@ -1489,20 +1550,10 @@ static INPUT_PORTS_START( cmasterb )
PORT_DIPSETTING( 0x02, "80%" )
PORT_DIPSETTING( 0x01, "85%" )
PORT_DIPSETTING( 0x00, "90%" )
- PORT_DIPNAME( 0x18, 0x00, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5") /* OK */
- 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") /* not checked */
- PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x20, 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, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8") /* related with DSW 4-6 */
- PORT_DIPSETTING( 0x80, "Unlimited" )
- PORT_DIPSETTING( 0x00, "Limited" )
+ /* Hopper Limit OK */
+ /* 100+ Odds Sound not checked */
+ /* Key In Type OK */
+ /* Center Super 7 Bet Limit related with Min. Bet For Bonus Play (DSW4-6) */
PORT_INCLUDE( cmv4_dsw3 ) /* all OK */
@@ -1557,8 +1608,9 @@ static INPUT_PORTS_START( cmasterc )
PORT_DIPSETTING( 0x80, "32" )
PORT_DIPSETTING( 0xc0, "64" )
- PORT_START("DSW2")
- PORT_DIPNAME( 0x07, 0x03, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
+ PORT_INCLUDE( cmv4_dsw2 )
+ PORT_MODIFY("DSW2")
+ PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
PORT_DIPSETTING( 0x07, "55%" )
PORT_DIPSETTING( 0x06, "60%" )
PORT_DIPSETTING( 0x05, "65%" )
@@ -1567,20 +1619,10 @@ static INPUT_PORTS_START( cmasterc )
PORT_DIPSETTING( 0x02, "80%" )
PORT_DIPSETTING( 0x01, "85%" )
PORT_DIPSETTING( 0x00, "90%" )
- PORT_DIPNAME( 0x18, 0x00, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5") /* OK */
- 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") /* not checked */
- PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x20, 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, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8") /* related with DSW 4-6 */
- PORT_DIPSETTING( 0x80, "Unlimited" )
- PORT_DIPSETTING( 0x00, "Limited" )
+ /* Hopper Limit OK */
+ /* 100+ Odds Sound not checked */
+ /* Key In Type OK */
+ /* Center Super 7 Bet Limit related with Min. Bet For Bonus Play (DSW4-6) */
PORT_INCLUDE( cmv4_dsw3 ) /* all OK */
@@ -1635,8 +1677,9 @@ static INPUT_PORTS_START( cmast91 )
PORT_DIPSETTING( 0x80, "32" )
PORT_DIPSETTING( 0xc0, "64" )
- PORT_START("DSW2")
- PORT_DIPNAME( 0x07, 0x03, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
+ PORT_INCLUDE( cmv4_dsw2 )
+ PORT_MODIFY("DSW2")
+ PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
PORT_DIPSETTING( 0x07, "45%" )
PORT_DIPSETTING( 0x06, "50%" )
PORT_DIPSETTING( 0x05, "55%" )
@@ -1645,20 +1688,10 @@ static INPUT_PORTS_START( cmast91 )
PORT_DIPSETTING( 0x02, "70%" )
PORT_DIPSETTING( 0x01, "75%" )
PORT_DIPSETTING( 0x00, "80%" )
- PORT_DIPNAME( 0x18, 0x00, "Hopper Limit" ) PORT_DIPLOCATION("DSW2:4,5") /* OK */
- 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") /* not checked */
- PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x20, 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, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8") /* related with DSW 4-6 */
- PORT_DIPSETTING( 0x80, "Unlimited" )
- PORT_DIPSETTING( 0x00, "Limited" )
+ /* Hopper Limit OK */
+ /* 100+ Odds Sound not checked */
+ /* Key In Type OK */
+ /* Center Super 7 Bet Limit related with Min. Bet For Bonus Play (DSW4-6) */
PORT_INCLUDE( cmv4_dsw3 ) /* all OK */
@@ -1858,8 +1891,9 @@ static INPUT_PORTS_START( chrygld )
PORT_DIPSETTING( 0x40, "32" )
PORT_DIPSETTING( 0x00, "50" )
- PORT_START("DSW2")
- PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3")
+ PORT_INCLUDE( cmv4_dsw2 )
+ PORT_MODIFY("DSW2")
+ PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
PORT_DIPSETTING( 0x00, "55%" )
PORT_DIPSETTING( 0x01, "60%" )
PORT_DIPSETTING( 0x02, "65%" )
@@ -1868,100 +1902,41 @@ static INPUT_PORTS_START( chrygld )
PORT_DIPSETTING( 0x05, "80%" )
PORT_DIPSETTING( 0x06, "85%" )
PORT_DIPSETTING( 0x07, "90%" )
- 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( 0x00, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x20, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x00, "Key-In Type" ) PORT_DIPLOCATION("DSW2:7")
- PORT_DIPSETTING( 0x40, "B-Type" )
- PORT_DIPSETTING( 0x00, "A-Type" )
- PORT_DIPNAME( 0x80, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8") /* related with DSW 4-6 */
- PORT_DIPSETTING( 0x80, "Unlimited" )
- PORT_DIPSETTING( 0x00, "Limited" )
+ /* Hopper limit not checked */
+ /* 100+ Odds Sound not checked */
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("DSW2:7") /* normally Key In Type but doesn't affect rate for this game */
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ /* Center Super 7 Bet Limit related with Min. Bet For Bonus Play (DSW4-6) */
- PORT_START("DSW3") /* some of these could be wrong */
- PORT_DIPNAME( 0x03, 0x03, "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, 0x0c, "Coin A Rate" ) PORT_DIPLOCATION("DSW3:3,4")
+ PORT_START("DSW3")
+ PORT_DIPNAME( 0x03, 0x03, "Key In Rate" ) PORT_DIPLOCATION("DSW3:1,2") /* OK */
PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" )
+ PORT_DIPSETTING( 0x01, "1 Coin/20 Credits" )
+ PORT_DIPSETTING( 0x02, "1 Coin/50 Credits" )
+ PORT_DIPSETTING( 0x03, "1 Coin/100 Credits" )
+ PORT_DIPNAME( 0x0c, 0x0c, "Coin A Rate" ) PORT_DIPLOCATION("DSW3:3,4") /* OK - unused value also produces 1C/10C */
+ PORT_DIPSETTING( 0x0c, "1 Coin/10 Credits" )
PORT_DIPSETTING( 0x04, "1 Coin/20 Credits" )
PORT_DIPSETTING( 0x08, "1 Coin/50 Credits" )
- PORT_DIPSETTING( 0x0c, "1 Coin/10 Credits" )
- PORT_DIPNAME( 0x30, 0x30, "Coin D Rate" ) PORT_DIPLOCATION("DSW3:5,6")
- PORT_DIPSETTING( 0x30, DEF_STR( 5C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10) // C-Type
- PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x10, DEF_STR( 1C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x30, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00) // D-Type
- PORT_DIPSETTING( 0x20, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPSETTING( 0x10, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPSETTING( 0x00, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPNAME( 0xc0, 0xc0, "Coin C Rate" ) PORT_DIPLOCATION("DSW3:7,8")
+ PORT_DIPNAME( 0x30, 0x30, "Coin D Rate" ) PORT_DIPLOCATION("DSW3:5,6") /* OK */
+ PORT_DIPSETTING( 0x30, DEF_STR( 5C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10) /* C-Type */
+ PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
+ PORT_DIPSETTING( 0x10, DEF_STR( 1C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
+ PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
+ PORT_DIPSETTING( 0x00, "1 Ticket/5 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00) /* D-Type */
+ PORT_DIPSETTING( 0x10, "1 Ticket/10 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
+ PORT_DIPSETTING( 0x20, "1 Ticket/20 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
+ PORT_DIPSETTING( 0x30, "1 Ticket/50 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
+ PORT_DIPNAME( 0xc0, 0xc0, "Coin C Rate" ) PORT_DIPLOCATION("DSW3:7,8") /* OK */
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0xc0, "1 Coin/10 Credits" )
- PORT_START("DSW4")
- PORT_DIPNAME( 0x07, 0x06, "Credit Limit" ) PORT_DIPLOCATION("DSW4:1,2,3")
- PORT_DIPSETTING( 0x07, "5,000" )
- PORT_DIPSETTING( 0x06, "10,000" )
- PORT_DIPSETTING( 0x05, "20,000" )
- PORT_DIPSETTING( 0x04, "30,000" )
- PORT_DIPSETTING( 0x03, "40,000" )
- PORT_DIPSETTING( 0x02, "50,000" )
- PORT_DIPSETTING( 0x01, "100,000" )
- PORT_DIPSETTING( 0x00, "Unlimited" )
- PORT_DIPNAME( 0x08, 0x00, "Display Of Credit Limit" ) PORT_DIPLOCATION("DSW4:4")
- PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "Type Of Coin D" ) PORT_DIPLOCATION("DSW4:5")
- PORT_DIPSETTING( 0x10, "D-Type (Tokens)" )
- PORT_DIPSETTING( 0x00, "C-Type (Ticket)" )
- PORT_DIPNAME( 0x20, 0x00, "Bonus Play Min.Bet" ) PORT_DIPLOCATION("DSW4:6")
- PORT_DIPSETTING( 0x20, "16 Bet" )
- PORT_DIPSETTING( 0x00, "8 Bet" )
- PORT_DIPNAME( 0x40, 0x00, "Reel Speed" ) PORT_DIPLOCATION("DSW4:7")
- PORT_DIPSETTING( 0x40, DEF_STR( Low ) )
- PORT_DIPSETTING( 0x00, DEF_STR( High ) )
- PORT_DIPNAME( 0x80, 0x80, "Coin A Mode" ) PORT_DIPLOCATION("DSW4:8")
- PORT_DIPSETTING( 0x80, "Unexchange" )
- PORT_DIPSETTING( 0x00, "Exchange" )
+ PORT_INCLUDE( cb3_dsw4 ) /* all OK */
- /* DSW5 is not connected yet. Where the hell is connected? */
- PORT_START("DSW5")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) PORT_DIPLOCATION("DSW5:1")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x06, 0x00, "Coin In Limit" ) PORT_DIPLOCATION("DSW5:2,3")
- PORT_DIPSETTING( 0x06, "1000" )
- PORT_DIPSETTING( 0x04, "5000" )
- PORT_DIPSETTING( 0x02, "10000" )
- PORT_DIPSETTING( 0x00, "20000" )
- PORT_DIPNAME( 0x18, 0x10, "Coin Out Rate" ) PORT_DIPLOCATION("DSW5:4,5")
- PORT_DIPSETTING( 0x00, "100 Credits / 1 Pulse" )
- PORT_DIPSETTING( 0x08, "100 Credits / 5 Pulses" )
- PORT_DIPSETTING( 0x10, "100 Credits / 10 Pulses" )
- PORT_DIPSETTING( 0x18, "100 Credits / 100 Pulses" )
- PORT_DIPNAME( 0x20, 0x00, "W-UP Girl" ) PORT_DIPLOCATION("DSW5:6")
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0xc0, 0x40, "Coin In Rate" ) PORT_DIPLOCATION("DSW5:7,8")
- PORT_DIPSETTING( 0xc0, "100 Credits / 1 Pulse" )
- PORT_DIPSETTING( 0x40, "100 Credits / 5 Pulses" )
- PORT_DIPSETTING( 0x80, "100 Credits / 10 Pulses" )
- PORT_DIPSETTING( 0x00, "100 Credits / 100 Pulses" )
+ PORT_INCLUDE( cb3_dsw5 ) /* DSW5 is not connected yet. Where the hell is connected? */
INPUT_PORTS_END
// dip switches from manual, values & inputs are a guess from cmasterb
@@ -2524,8 +2499,9 @@ static INPUT_PORTS_START( chry10 )
PORT_DIPSETTING( 0x40, "32" )
PORT_DIPSETTING( 0x00, "64" )
- PORT_START("DSW2")
- PORT_DIPNAME( 0x07, 0x04, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
+ PORT_INCLUDE( cmv4_dsw2 )
+ PORT_MODIFY("DSW2")
+ PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
PORT_DIPSETTING( 0x00, "40%" )
PORT_DIPSETTING( 0x01, "45%" )
PORT_DIPSETTING( 0x02, "50%" )
@@ -2534,99 +2510,49 @@ static INPUT_PORTS_START( chry10 )
PORT_DIPSETTING( 0x05, "65%" )
PORT_DIPSETTING( 0x06, "70%" )
PORT_DIPSETTING( 0x07, "80%" )
- 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( 0x00, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x20, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x00, "Key-In Type" ) PORT_DIPLOCATION("DSW2:7") /* OK */
- PORT_DIPSETTING( 0x40, "B-Type" )
- PORT_DIPSETTING( 0x00, "A-Type" )
- PORT_DIPNAME( 0x80, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8") /* related with DSW 4-6 */
- PORT_DIPSETTING( 0x80, "Unlimited" )
- PORT_DIPSETTING( 0x00, "Limited" )
+ /* Hopper Limit not checked */
+ /* 100+ Odds Sound not checked */
+ /* Key In Type OK - note that definition of A-Type and B-Type are reversed compared to cmv4 */
+ /* Center Super 7 Bet Limit related with Min. Bet For Bonus Play (DSW4-6) */
- PORT_START("DSW3") /* seems ok */
+ 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,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( 0x00, DEF_STR( 1C_5C ) ) PORT_CONDITION("DSW2",0x40,EQUALS,0x40) /* A-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_DIPSETTING( 0x00, "1 Coin/10 Credits" ) PORT_CONDITION("DSW2",0x40,EQUALS,0x00) /* B-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_DIPNAME( 0x0c, 0x0c, "Coin A Rate" ) PORT_DIPLOCATION("DSW3:3,4") /* OK */
PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" )
PORT_DIPSETTING( 0x04, "1 Coin/20 Credits" )
PORT_DIPSETTING( 0x08, "1 Coin/50 Credits" )
PORT_DIPSETTING( 0x0c, "1 Coin/100 Credits" )
PORT_DIPNAME( 0x30, 0x30, "Coin D Rate" ) PORT_DIPLOCATION("DSW3:5,6") /* OK */
- PORT_DIPSETTING( 0x30, "5 Coin/10 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10) // C-Type
- PORT_DIPSETTING( 0x20, "2 Coin/10 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x10, "1 Coin/10 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x00, "1 Coin/20 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x00, "1 Ticket/Coin / 50 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPSETTING( 0x10, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPSETTING( 0x20, "1 Ticket/Coin / 200 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPSETTING( 0x30, "1 Ticket/Coin / 500 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00) // D-Type
+ PORT_DIPSETTING( 0x30, DEF_STR( 5C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10) /* C-Type */
+ PORT_DIPSETTING( 0x20, "2 Coins/10 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
+ PORT_DIPSETTING( 0x10, "1 Coin/10 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
+ PORT_DIPSETTING( 0x00, "1 Coin/20 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
+ PORT_DIPSETTING( 0x00, "1 Ticket/50 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00) /* D-Type */
+ PORT_DIPSETTING( 0x10, "1 Ticket/100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
+ PORT_DIPSETTING( 0x20, "1 Ticket/200 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
+ PORT_DIPSETTING( 0x30, "1 Ticket/500 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
PORT_DIPNAME( 0xc0, 0xc0, "Coin C Rate" ) PORT_DIPLOCATION("DSW3:7,8") /* OK */
PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" )
PORT_DIPSETTING( 0x40, "1 Coin/20 Credits" )
PORT_DIPSETTING( 0x80, "1 Coin/50 Credits" )
PORT_DIPSETTING( 0xc0, "1 Coin/100 Credits" )
- PORT_START("DSW4")
- PORT_DIPNAME( 0x07, 0x06, "Credit Limit" ) PORT_DIPLOCATION("DSW4:1,2,3") /* OK */
- PORT_DIPSETTING( 0x07, "5,000" )
- PORT_DIPSETTING( 0x06, "10,000" )
- PORT_DIPSETTING( 0x05, "20,000" )
- PORT_DIPSETTING( 0x04, "30,000" )
- PORT_DIPSETTING( 0x03, "40,000" )
- PORT_DIPSETTING( 0x02, "50,000" )
- PORT_DIPSETTING( 0x01, "100,000" )
- PORT_DIPSETTING( 0x00, "Unlimited" )
- PORT_DIPNAME( 0x08, 0x00, "Display Of Credit Limit" ) PORT_DIPLOCATION("DSW4:4") /* OK */
- PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "Type Of Coin D" ) PORT_DIPLOCATION("DSW4:5") /* OK */
- PORT_DIPSETTING( 0x10, "D-Type (Tokens)" )
- PORT_DIPSETTING( 0x00, "C-Type (Ticket)" )
- PORT_DIPNAME( 0x20, 0x00, "Bonus Play Min.Bet" ) PORT_DIPLOCATION("DSW4:6") /* OK */
- PORT_DIPSETTING( 0x20, "16 Bet" )
- PORT_DIPSETTING( 0x00, "8 Bet" )
- PORT_DIPNAME( 0x40, 0x00, "Reel Speed" ) PORT_DIPLOCATION("DSW4:7") /* OK */
- PORT_DIPSETTING( 0x40, DEF_STR( Low ) )
- PORT_DIPSETTING( 0x00, DEF_STR( High ) )
- PORT_DIPNAME( 0x80, 0x80, "Coin A Mode" ) PORT_DIPLOCATION("DSW4:8") /* OK */
- PORT_DIPSETTING( 0x80, "Unexchange" )
- PORT_DIPSETTING( 0x00, "Exchange" )
+ PORT_INCLUDE( cb3_dsw4 ) /* all OK */
- PORT_START("DSW5")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) PORT_DIPLOCATION("DSW5:1")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x06, 0x00, "Coin In Limit" ) PORT_DIPLOCATION("DSW5:2,3")
- PORT_DIPSETTING( 0x06, "1000" )
- PORT_DIPSETTING( 0x04, "5000" )
- PORT_DIPSETTING( 0x02, "10000" )
- PORT_DIPSETTING( 0x00, "20000" )
- PORT_DIPNAME( 0x18, 0x10, "Coin Out Rate" ) PORT_DIPLOCATION("DSW5:4,5")
- PORT_DIPSETTING( 0x00, "100 Credits / 1 Pulse" )
- PORT_DIPSETTING( 0x08, "100 Credits / 5 Pulses" )
- PORT_DIPSETTING( 0x10, "100 Credits / 10 Pulses" )
- PORT_DIPSETTING( 0x18, "100 Credits / 100 Pulses" )
- PORT_DIPNAME( 0x20, 0x00, "W-UP Girl" ) PORT_DIPLOCATION("DSW5:6")
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0xc0, 0x40, "Coin In Rate" ) PORT_DIPLOCATION("DSW5:7,8")
- PORT_DIPSETTING( 0xc0, "100 Credits / 1 Pulse" )
- PORT_DIPSETTING( 0x40, "100 Credits / 5 Pulses" )
- PORT_DIPSETTING( 0x80, "100 Credits / 10 Pulses" )
- PORT_DIPSETTING( 0x00, "100 Credits / 100 Pulses" )
+ PORT_INCLUDE( cb3_dsw5 )
+ /* DSW5-1 not checked */
+ /* Coin In Limit not working */
+ /* Coin Out Rate not checked */
+ /* W-Up Girl not working */
+ /* Coin In Rate not checked */
INPUT_PORTS_END
static INPUT_PORTS_START( ncb3 )
@@ -2680,8 +2606,9 @@ static INPUT_PORTS_START( ncb3 )
PORT_DIPSETTING( 0x40, "32" )
PORT_DIPSETTING( 0x00, "64" )
- PORT_START("DSW2")
- PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3")
+ PORT_INCLUDE( cmv4_dsw2 )
+ PORT_MODIFY("DSW2")
+ PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3") /* OK */
PORT_DIPSETTING( 0x00, "55%" )
PORT_DIPSETTING( 0x01, "60%" )
PORT_DIPSETTING( 0x02, "65%" )
@@ -2690,255 +2617,30 @@ static INPUT_PORTS_START( ncb3 )
PORT_DIPSETTING( 0x05, "80%" )
PORT_DIPSETTING( 0x06, "85%" )
PORT_DIPSETTING( 0x07, "90%" )
- 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( 0x00, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x20, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x00, "Key-In Type" ) PORT_DIPLOCATION("DSW2:7")
- PORT_DIPSETTING( 0x40, "B-Type" )
- PORT_DIPSETTING( 0x00, "A-Type" )
- PORT_DIPNAME( 0x80, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8") /* related with DSW 4-6 */
- PORT_DIPSETTING( 0x80, "Unlimited" )
- PORT_DIPSETTING( 0x00, "Limited" )
+ /* Hopper Limit not checked */
+ /* 100+ Odds Sound not checked */
+ /* Key In Type OK - note that definition of A-Type and B-Type are reversed compared to cmv4 */
+ /* Center Super 7 Bet Limit related with Min. Bet For Bonus Play (DSW4-6) */
- PORT_START("DSW3") /* some of these are wrong */
- PORT_DIPNAME( 0x03, 0x03, "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, 0x0c, "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_DIPNAME( 0x30, 0x30, "Coin D Rate" ) PORT_DIPLOCATION("DSW3:5,6")
- PORT_DIPSETTING( 0x30, DEF_STR( 5C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10) // C-Type
- PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x10, DEF_STR( 1C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x30, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00) // D-Type
- PORT_DIPSETTING( 0x20, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPSETTING( 0x10, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPSETTING( 0x00, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPNAME( 0xc0, 0xc0, "Coin C Rate" ) PORT_DIPLOCATION("DSW3:7,8")
- PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
- PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ) )
- PORT_DIPSETTING( 0x80, DEF_STR( 1C_5C ) )
- PORT_DIPSETTING( 0xc0, "1 Coin/10 Credits" )
+ PORT_INCLUDE( cb3_dsw3 ) /* all OK */
- PORT_START("DSW4")
- PORT_DIPNAME( 0x07, 0x06, "Credit Limit" ) PORT_DIPLOCATION("DSW4:1,2,3")
- PORT_DIPSETTING( 0x07, "5,000" )
- PORT_DIPSETTING( 0x06, "10,000" )
- PORT_DIPSETTING( 0x05, "20,000" )
- PORT_DIPSETTING( 0x04, "30,000" )
- PORT_DIPSETTING( 0x03, "40,000" )
- PORT_DIPSETTING( 0x02, "50,000" )
- PORT_DIPSETTING( 0x01, "100,000" )
- PORT_DIPSETTING( 0x00, "Unlimited" )
- PORT_DIPNAME( 0x08, 0x00, "Display Of Credit Limit" ) PORT_DIPLOCATION("DSW4:4")
- PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "Type Of Coin D" ) PORT_DIPLOCATION("DSW4:5")
- PORT_DIPSETTING( 0x10, "D-Type (Tokens)" )
- PORT_DIPSETTING( 0x00, "C-Type (Ticket)" )
- PORT_DIPNAME( 0x20, 0x00, "Bonus Play Min.Bet" ) PORT_DIPLOCATION("DSW4:6")
- PORT_DIPSETTING( 0x20, "16 Bet" )
- PORT_DIPSETTING( 0x00, "8 Bet" )
- PORT_DIPNAME( 0x40, 0x00, "Reel Speed" ) PORT_DIPLOCATION("DSW4:7")
- PORT_DIPSETTING( 0x40, DEF_STR( Low ) )
- PORT_DIPSETTING( 0x00, DEF_STR( High ) )
- PORT_DIPNAME( 0x80, 0x80, "Coin A Mode" ) PORT_DIPLOCATION("DSW4:8")
- PORT_DIPSETTING( 0x80, "Unexchange" )
- PORT_DIPSETTING( 0x00, "Exchange" )
+ PORT_INCLUDE( cb3_dsw4 ) /* all OK */
- PORT_START("DSW5")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) PORT_DIPLOCATION("DSW5:1")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x06, 0x00, "Coin In Limit" ) PORT_DIPLOCATION("DSW5:2,3")
- PORT_DIPSETTING( 0x06, "1000" )
- PORT_DIPSETTING( 0x04, "5000" )
- PORT_DIPSETTING( 0x02, "10000" )
- PORT_DIPSETTING( 0x00, "20000" )
- PORT_DIPNAME( 0x18, 0x10, "Coin Out Rate" ) PORT_DIPLOCATION("DSW5:4,5")
- PORT_DIPSETTING( 0x00, "100 Credits / 1 Pulse" )
- PORT_DIPSETTING( 0x08, "100 Credits / 5 Pulses" )
- PORT_DIPSETTING( 0x10, "100 Credits / 10 Pulses" )
- PORT_DIPSETTING( 0x18, "100 Credits / 100 Pulses" )
- PORT_DIPNAME( 0x20, 0x00, "W-UP Girl" ) PORT_DIPLOCATION("DSW5:6")
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0xc0, 0x40, "Coin In Rate" ) PORT_DIPLOCATION("DSW5:7,8")
- PORT_DIPSETTING( 0xc0, "100 Credits / 1 Pulse" )
- PORT_DIPSETTING( 0x40, "100 Credits / 5 Pulses" )
- PORT_DIPSETTING( 0x80, "100 Credits / 10 Pulses" )
- PORT_DIPSETTING( 0x00, "100 Credits / 100 Pulses" )
+ PORT_INCLUDE( cb3_dsw5 )
+ /* DSW5-1 not checked */
+ /* Coin In Limit not working */
+ /* Coin Out Rate not checked */
+ /* W-Up Girl not working */
+ /* Coin In Rate not checked */
INPUT_PORTS_END
static INPUT_PORTS_START( cb3a )
- 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_BUTTON2 ) PORT_CODE(KEYCODE_X) PORT_NAME("P1 - Stop 2 / Big / Bonus Game / Switch Controls")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_CODE(KEYCODE_B) PORT_NAME("P1 - Blue Bet / D-UP / Card 3")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_Z) PORT_NAME("P1 - Stop 1 / Take")
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_CODE(KEYCODE_V) PORT_NAME("P1 - Red Bet / Card 2")
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_CODE(KEYCODE_C) PORT_NAME("P1 - Stop 3 / Small / Info / Card 1")
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_CODE(KEYCODE_N) PORT_NAME("P1 - Start / Stop All / Card 4")
-
- PORT_INCLUDE( cmv4_coins )
-
- PORT_INCLUDE( cmv4_service )
-
- PORT_START("IN3")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_CODE(KEYCODE_S) PORT_NAME("P2 - Stop 2 / Big / Bonus Game / Switch Controls")
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_CODE(KEYCODE_G) PORT_NAME("P2 - Blue Bet / D-UP / Card 3")
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_CODE(KEYCODE_A) PORT_NAME("P2 - Stop 1 / Take")
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_CODE(KEYCODE_F) PORT_NAME("P2 - Red Bet / Card 2")
- PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_CODE(KEYCODE_D) PORT_NAME("P2 - Stop 3 / Small / Info / Card 1")
- PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_CODE(KEYCODE_H) PORT_NAME("P2 - Start / Stop All / Card 4")
+ PORT_INCLUDE( ncb3 )
- /* to check DIP switches... */
- PORT_START("DSW1")
- PORT_DIPNAME( 0x01, 0x01, "Game Style" ) PORT_DIPLOCATION("DSW1:1")
- PORT_DIPSETTING( 0x01, "Tokens" )
- PORT_DIPSETTING( 0x00, "Ticket" )
- PORT_DIPNAME( 0x02, 0x02, "Hopper Out Switch" ) PORT_DIPLOCATION("DSW1:2")
- PORT_DIPSETTING( 0x02, "Active Low" )
- PORT_DIPSETTING( 0x00, "Active High" )
- PORT_DIPNAME( 0x04, 0x04, "Payout Mode" ) PORT_DIPLOCATION("DSW1:3")
- PORT_DIPSETTING( 0x04, "Payout 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_MODIFY("DSW1")
+ PORT_DIPNAME( 0x10, 0x10, "W-Up Pay Rate" ) PORT_DIPLOCATION("DSW1:5") /* OK */
PORT_DIPSETTING( 0x00, "50%" )
PORT_DIPSETTING( 0x10, "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, "8" )
- PORT_DIPSETTING( 0x80, "16" )
- PORT_DIPSETTING( 0x40, "32" )
- PORT_DIPSETTING( 0x00, "64" )
-
- PORT_START("DSW2")
- PORT_DIPNAME( 0x07, 0x00, "Main Game Pay Rate" ) PORT_DIPLOCATION("DSW2:1,2,3")
- PORT_DIPSETTING( 0x00, "55%" )
- PORT_DIPSETTING( 0x01, "60%" )
- PORT_DIPSETTING( 0x02, "65%" )
- PORT_DIPSETTING( 0x03, "70%" )
- PORT_DIPSETTING( 0x04, "75%" )
- PORT_DIPSETTING( 0x05, "80%" )
- PORT_DIPSETTING( 0x06, "85%" )
- PORT_DIPSETTING( 0x07, "90%" )
- 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( 0x00, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x20, DEF_STR( On ) )
- PORT_DIPNAME( 0x40, 0x00, "Key-In Type" ) PORT_DIPLOCATION("DSW2:7")
- PORT_DIPSETTING( 0x40, "B-Type" )
- PORT_DIPSETTING( 0x00, "A-Type" )
- PORT_DIPNAME( 0x80, 0x00, "Center Super 7 Bet Limit" ) PORT_DIPLOCATION("DSW2:8") /* related with DSW 4-6 */
- PORT_DIPSETTING( 0x80, "Unlimited" )
- PORT_DIPSETTING( 0x00, "Limited" )
-
- PORT_START("DSW3") /* some of these are wrong */
- PORT_DIPNAME( 0x03, 0x03, "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, 0x0c, "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_DIPNAME( 0x30, 0x30, "Coin D Rate" ) PORT_DIPLOCATION("DSW3:5,6")
- PORT_DIPSETTING( 0x30, DEF_STR( 5C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10) // C-Type
- PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x10, DEF_STR( 1C_1C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x00, DEF_STR( 1C_2C ) ) PORT_CONDITION("DSW4",0x10,EQUALS,0x10)
- PORT_DIPSETTING( 0x30, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00) // D-Type
- PORT_DIPSETTING( 0x20, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPSETTING( 0x10, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPSETTING( 0x00, "1 Ticket/Coin / 100 Credits" ) PORT_CONDITION("DSW4",0x10,EQUALS,0x00)
- PORT_DIPNAME( 0xc0, 0xc0, "Coin C Rate" ) PORT_DIPLOCATION("DSW3:7,8")
- PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
- PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ) )
- PORT_DIPSETTING( 0x80, DEF_STR( 1C_5C ) )
- PORT_DIPSETTING( 0xc0, "1 Coin/10 Credits" )
-
- PORT_START("DSW4")
- PORT_DIPNAME( 0x07, 0x06, "Credit Limit" ) PORT_DIPLOCATION("DSW4:1,2,3")
- PORT_DIPSETTING( 0x07, "5,000" )
- PORT_DIPSETTING( 0x06, "10,000" )
- PORT_DIPSETTING( 0x05, "20,000" )
- PORT_DIPSETTING( 0x04, "30,000" )
- PORT_DIPSETTING( 0x03, "40,000" )
- PORT_DIPSETTING( 0x02, "50,000" )
- PORT_DIPSETTING( 0x01, "100,000" )
- PORT_DIPSETTING( 0x00, "Unlimited" )
- PORT_DIPNAME( 0x08, 0x00, "Display Of Credit Limit" ) PORT_DIPLOCATION("DSW4:4")
- PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x10, 0x10, "Type Of Coin D" ) PORT_DIPLOCATION("DSW4:5")
- PORT_DIPSETTING( 0x10, "D-Type (Tokens)" )
- PORT_DIPSETTING( 0x00, "C-Type (Ticket)" )
- PORT_DIPNAME( 0x20, 0x00, "Bonus Play Min.Bet" ) PORT_DIPLOCATION("DSW4:6")
- PORT_DIPSETTING( 0x20, "16 Bet" )
- PORT_DIPSETTING( 0x00, "8 Bet" )
- PORT_DIPNAME( 0x40, 0x00, "Reel Speed" ) PORT_DIPLOCATION("DSW4:7")
- PORT_DIPSETTING( 0x40, DEF_STR( Low ) )
- PORT_DIPSETTING( 0x00, DEF_STR( High ) )
- PORT_DIPNAME( 0x80, 0x80, "Coin A Mode" ) PORT_DIPLOCATION("DSW4:8")
- PORT_DIPSETTING( 0x80, "Unexchange" )
- PORT_DIPSETTING( 0x00, "Exchange" )
-
- PORT_START("DSW5")
- PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) PORT_DIPLOCATION("DSW5:1")
- PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x06, 0x00, "Coin In Limit" ) PORT_DIPLOCATION("DSW5:2,3")
- PORT_DIPSETTING( 0x06, "1000" )
- PORT_DIPSETTING( 0x04, "5000" )
- PORT_DIPSETTING( 0x02, "10000" )
- PORT_DIPSETTING( 0x00, "20000" )
- PORT_DIPNAME( 0x18, 0x10, "Coin Out Rate" ) PORT_DIPLOCATION("DSW5:4,5")
- PORT_DIPSETTING( 0x00, "100 Credits / 1 Pulse" )
- PORT_DIPSETTING( 0x08, "100 Credits / 5 Pulses" )
- PORT_DIPSETTING( 0x10, "100 Credits / 10 Pulses" )
- PORT_DIPSETTING( 0x18, "100 Credits / 100 Pulses" )
- PORT_DIPNAME( 0x20, 0x00, "W-UP Girl" ) PORT_DIPLOCATION("DSW5:6")
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0xc0, 0x40, "Coin In Rate" ) PORT_DIPLOCATION("DSW5:7,8")
- PORT_DIPSETTING( 0xc0, "100 Credits / 1 Pulse" )
- PORT_DIPSETTING( 0x40, "100 Credits / 5 Pulses" )
- PORT_DIPSETTING( 0x80, "100 Credits / 10 Pulses" )
- PORT_DIPSETTING( 0x00, "100 Credits / 100 Pulses" )
INPUT_PORTS_END
static INPUT_PORTS_START( lucky8 )
@@ -6482,19 +6184,13 @@ static INPUT_PORTS_START( cmtetris )
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) 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( 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_COIN1 ) PORT_IMPULSE(2) PORT_NAME("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|PB1) */
- 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 */
@@ -7377,7 +7073,7 @@ PALETTE_INIT_MEMBER(goldstar_state, lucky8)
}
-static MACHINE_CONFIG_START( chrygld, goldstar_state )
+static MACHINE_CONFIG_START( chrygld, cb3_state )
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, CPU_CLOCK)
@@ -12764,7 +12460,7 @@ DRIVER_INIT_MEMBER(goldstar_state,goldstar)
// this block swapping is the same for chry10, chrygld and cb3
// the underlying bitswaps / xors are different however
-void goldstar_state::do_blockswaps(UINT8* ROM)
+void cb3_state::do_blockswaps(UINT8* ROM)
{
int A;
@@ -12792,7 +12488,7 @@ void goldstar_state::do_blockswaps(UINT8* ROM)
}
}
-void goldstar_state::dump_to_file( UINT8* ROM)
+void cb3_state::dump_to_file( UINT8* ROM)
{
#if 0
{
@@ -12809,7 +12505,7 @@ void goldstar_state::dump_to_file( UINT8* ROM)
#endif
}
-UINT8 cb3_state::decrypt(UINT8 cipherText, UINT16 address)
+UINT8 cb3_state::cb3_decrypt(UINT8 cipherText, UINT16 address)
{
int idx;
UINT8 output;
@@ -12826,12 +12522,12 @@ UINT8 cb3_state::decrypt(UINT8 cipherText, UINT16 address)
return output ^ sbox[idx];
}
-UINT8 chrygld_state::chry10_decrypt(UINT8 cipherText)
+UINT8 cb3_state::chry10_decrypt(UINT8 cipherText)
{
return cipherText ^ (BIT(cipherText, 4) << 3) ^ (BIT(cipherText, 1) << 5) ^ (BIT(cipherText, 6) << 7);
}
-DRIVER_INIT_MEMBER(chrygld_state, chry10)
+DRIVER_INIT_MEMBER(cb3_state, chry10)
{
UINT8 *ROM = memregion("maincpu")->base();
int size = memregion("maincpu")->bytes();
@@ -12865,7 +12561,7 @@ DRIVER_INIT_MEMBER(cb3_state, cb3)
for (i = start; i < size; i++)
{
- ROM[i] = decrypt(ROM[i], i);
+ ROM[i] = cb3_decrypt(ROM[i], i);
}
do_blockswaps(ROM);
@@ -12873,7 +12569,7 @@ DRIVER_INIT_MEMBER(cb3_state, cb3)
}
-DRIVER_INIT_MEMBER(chrygld_state, chrygld)
+DRIVER_INIT_MEMBER(cb3_state, chrygld)
{
int A;
UINT8 *ROM = memregion("maincpu")->base();
@@ -13371,8 +13067,8 @@ DRIVER_INIT_MEMBER(goldstar_state, wcherry)
GAMEL( 199?, goldstar, 0, goldstar, goldstar, goldstar_state, goldstar, ROT0, "IGS", "Golden Star", 0, layout_goldstar )
GAMEL( 199?, goldstbl, goldstar, goldstbl, goldstar, driver_device, 0, ROT0, "IGS", "Golden Star (Blue version)", 0, layout_goldstar )
GAME( 199?, moonlght, goldstar, moonlght, goldstar, driver_device, 0, ROT0, "bootleg", "Moon Light (bootleg of Golden Star)", 0 )
-GAME( 199?, chrygld, 0, chrygld, chrygld, chrygld_state, chrygld, ROT0, "bootleg", "Cherry Gold I", 0 )
-GAME( 199?, chry10, 0, chrygld, chry10, chrygld_state, chry10, ROT0, "bootleg", "Cherry 10 (bootleg with PIC16F84)", 0 )
+GAME( 199?, chrygld, 0, chrygld, chrygld, cb3_state, chrygld, ROT0, "bootleg", "Cherry Gold I", 0 )
+GAME( 199?, chry10, 0, chrygld, chry10, cb3_state, chry10, ROT0, "bootleg", "Cherry 10 (bootleg with PIC16F84)", 0 )
GAME( 199?, goldfrui, goldstar, goldfrui, goldstar, driver_device, 0, ROT0, "bootleg", "Gold Fruit", 0 ) // maybe fullname should be 'Gold Fruit (main 40%)'
GAME( 2001, super9, goldstar, super9, goldstar, goldstar_state, super9, ROT0, "Playmark", "Super Nove (Playmark)", GAME_NOT_WORKING ) // need to decode gfx and see the program loops/reset...
GAME( 2001, wcherry, 0, wcherry, chrygld, goldstar_state, wcherry, ROT0, "bootleg", "Win Cherry (ver 0.16 - 19990219)", GAME_NOT_WORKING )