dynax/dynax.cpp: Improved DIP switches for mjelctrn and majxtal7.

This commit is contained in:
Vas Crabb 2025-04-10 05:50:39 +10:00
parent dcd6c81a78
commit f0b88787fb

View File

@ -3120,63 +3120,31 @@ static INPUT_PORTS_START( mjelctrn )
PORT_DIPUNKNOWN_DIPLOC(0x02, 0x02, "SW1:2")
PORT_START("DSW0") /* 7c21 (select = 00) */
PORT_DIPNAME( 0x03, 0x03, "Difficulty?" ) PORT_DIPLOCATION("SW3:1,2")
PORT_DIPSETTING( 0x03, "0" ) // 20
PORT_DIPSETTING( 0x00, "1" ) // 32
PORT_DIPSETTING( 0x01, "2" ) // 64
PORT_DIPSETTING( 0x02, "3" ) // c8
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR(Coinage) ) PORT_DIPLOCATION("SW3:3,4")
PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0x00, "1 Coin/10 Credits" )
MAHJONG_ODDS_RATE(0, "SW3:1,2");
MAHJONG_COINAGE(2, "SW3:3,4")
PORT_DIPNAME( 0x30, 0x30, "Minimum Bet" ) PORT_DIPLOCATION("SW3:5,6")
PORT_DIPSETTING( 0x30, "1" )
PORT_DIPSETTING( 0x20, "2" )
PORT_DIPSETTING( 0x10, "3" )
PORT_DIPSETTING( 0x00, "5" )
PORT_DIPNAME( 0x40, 0x40, "Allow Coin Out" ) PORT_DIPLOCATION("SW3:7")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x40, DEF_STR( On ) )
PORT_DIPNAME( 0x40, 0x40, "Payout Mode" ) PORT_DIPLOCATION("SW3:7")
PORT_DIPSETTING( 0x40, "Key-out" )
PORT_DIPSETTING( 0x00, "Hopper" )
PORT_DIPNAME( 0x80, 0x80, "Win A Prize?" ) PORT_DIPLOCATION("SW3:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW1") /* 7c20 (select = 40) */
PORT_DIPNAME( 0x0f, 0x07, "Payout Rate" ) PORT_DIPLOCATION("SW4:1,2,3,4")
PORT_DIPSETTING( 0x00, "50%" )
PORT_DIPSETTING( 0x01, "53%" )
PORT_DIPSETTING( 0x02, "56%" )
PORT_DIPSETTING( 0x03, "59%" )
PORT_DIPSETTING( 0x04, "62%" )
PORT_DIPSETTING( 0x05, "65%" )
PORT_DIPSETTING( 0x06, "68%" )
PORT_DIPSETTING( 0x07, "71%" )
PORT_DIPSETTING( 0x08, "75%" )
PORT_DIPSETTING( 0x09, "78%" )
PORT_DIPSETTING( 0x0a, "81%" )
PORT_DIPSETTING( 0x0b, "84%" )
PORT_DIPSETTING( 0x0c, "87%" )
PORT_DIPSETTING( 0x0d, "90%" )
PORT_DIPSETTING( 0x0e, "93%" )
PORT_DIPSETTING( 0x0f, "96%" )
MAHJONG_PAYOUT_RATE(0, "SW4:1,2,3,4")
PORT_DIPNAME( 0x30, 0x10, "Maximum Bet" ) PORT_DIPLOCATION("SW4:5,6")
PORT_DIPSETTING( 0x30, "1" )
PORT_DIPSETTING( 0x20, "5" )
PORT_DIPSETTING( 0x10, "10" )
PORT_DIPSETTING( 0x00, "20" )
PORT_DIPNAME( 0x40, 0x00, "Credits Per Note" ) PORT_DIPLOCATION("SW4:7")
PORT_DIPSETTING( 0x40, "5" ) PORT_CONDITION("DSW0", 0x0c, EQUALS, 0x0c)
PORT_DIPSETTING( 0x40, "10" ) PORT_CONDITION("DSW0", 0x0c, EQUALS, 0x08)
PORT_DIPSETTING( 0x40, "25" ) PORT_CONDITION("DSW0", 0x0c, EQUALS, 0x04)
PORT_DIPSETTING( 0x40, "50" ) PORT_CONDITION("DSW0", 0x0c, EQUALS, 0x00)
PORT_DIPSETTING( 0x00, "10" ) PORT_CONDITION("DSW0", 0x0c, EQUALS, 0x0c)
PORT_DIPSETTING( 0x00, "20" ) PORT_CONDITION("DSW0", 0x0c, EQUALS, 0x08)
PORT_DIPSETTING( 0x00, "50" ) PORT_CONDITION("DSW0", 0x0c, EQUALS, 0x04)
PORT_DIPSETTING( 0x00, "100" ) PORT_CONDITION("DSW0", 0x0c, EQUALS, 0x00)
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW4:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
MAHJONG_NOTE_CREDITS(6, "SW4:7", "DSW0", 2)
PORT_DIPNAME( 0x80, 0x80, DEF_STR(Flip_Screen) ) PORT_DIPLOCATION("SW4:8")
PORT_DIPSETTING( 0x80, DEF_STR(Off) )
PORT_DIPSETTING( 0x00, DEF_STR(On) )
PORT_START("DSW2") /* 7c22 (select = 80) */
MAHJONG_YAKUMAN_BONUS(0, 0x04, "SW2:1,2,3")
@ -3186,38 +3154,38 @@ static INPUT_PORTS_START( mjelctrn )
PORT_DIPNAME( 0x10, 0x10, "Win Rate?" ) PORT_DIPLOCATION("SW2:5")
PORT_DIPSETTING( 0x10, DEF_STR( High ) )
PORT_DIPSETTING( 0x00, DEF_STR( Low ) )
PORT_DIPNAME( 0x20, 0x20, "Draw New Tile (Part 4 Only)" ) PORT_DIPLOCATION("SW2:6")
PORT_DIPSETTING( 0x00, "Automatic" )
PORT_DIPSETTING( 0x20, "Manual" )
PORT_DIPNAME( 0x40, 0x40, "DonDen Key" ) PORT_DIPLOCATION("SW2:7")
PORT_DIPNAME( 0x20, 0x20, "Draw Automatically (Part 4)" ) PORT_DIPLOCATION("SW2:6")
PORT_DIPSETTING( 0x20, DEF_STR(Off) )
PORT_DIPSETTING( 0x00, DEF_STR(On) )
PORT_DIPNAME( 0x40, 0x00, "Don Den Button" ) PORT_DIPLOCATION("SW2:7")
PORT_DIPSETTING( 0x40, "A" )
PORT_DIPSETTING( 0x00, "Flip Flop" )
PORT_DIPNAME( 0x80, 0x00, "Subtitle" ) PORT_DIPLOCATION("SW2:8")
PORT_DIPSETTING( 0x80, "None (Part 2)" )
PORT_DIPSETTING( 0x00, "???? (Part 4)" )
PORT_DIPNAME( 0x80, 0x00, "Game Type" ) PORT_DIPLOCATION("SW2:8")
PORT_DIPSETTING( 0x80, "Part 2" )
PORT_DIPSETTING( 0x00, "Part 4 (Choukyuu)" )
PORT_START("DSW3") /* 7c23 (select = c0) */
PORT_DIPNAME( 0x01, 0x01, "Last Chance" ) PORT_DIPLOCATION("SW5:1")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x01, DEF_STR( On ) )
PORT_DIPSETTING( 0x01, "Free" )
PORT_DIPSETTING( 0x00, "Paid" )
PORT_DIPNAME( 0x02, 0x02, "Pay Rate?" ) PORT_DIPLOCATION("SW5:2")
PORT_DIPSETTING( 0x02, DEF_STR( High ) )
PORT_DIPSETTING( 0x00, DEF_STR( Low ) )
PORT_DIPNAME( 0x04, 0x04, "Choose Bonus" ) PORT_DIPLOCATION("SW5:3")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x08, 0x08, "In-Game Bet?" ) PORT_DIPLOCATION("SW5:4")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x08, DEF_STR( On ) )
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW5:5")
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x04, 0x04, "Auto Reach" ) PORT_DIPLOCATION("SW5:3")
PORT_DIPSETTING( 0x04, DEF_STR(Off) )
PORT_DIPSETTING( 0x00, DEF_STR(On) )
PORT_DIPNAME( 0x08, 0x00, "Double Bet" ) PORT_DIPLOCATION("SW5:4")
PORT_DIPSETTING( 0x08, DEF_STR(Off) )
PORT_DIPSETTING( 0x00, DEF_STR(On) )
PORT_DIPNAME( 0x10, 0x00, DEF_STR(Demo_Sounds) ) PORT_DIPLOCATION("SW5:5")
PORT_DIPSETTING( 0x10, DEF_STR(Off) )
PORT_DIPSETTING( 0x00, DEF_STR(On) )
PORT_DIPNAME( 0x20, 0x00, "In-Game Music" ) PORT_DIPLOCATION("SW5:6")
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x40, 0x40, "Select Girl" ) PORT_DIPLOCATION("SW5:7")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPSETTING( 0x20, DEF_STR(Off) )
PORT_DIPSETTING( 0x00, DEF_STR(On) )
PORT_DIPNAME( 0x40, 0x40, "Gal Select" ) PORT_DIPLOCATION("SW5:7")
PORT_DIPSETTING( 0x40, DEF_STR(Off) )
PORT_DIPSETTING( 0x00, DEF_STR(On) )
PORT_DIPNAME( 0x80, 0x00, "Girls" ) PORT_DIPLOCATION("SW5:8")
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -3292,12 +3260,12 @@ static INPUT_PORTS_START( majxtal7 )
PORT_DIPNAME( 0x01, 0x01, "Last Chance" ) PORT_DIPLOCATION("DIP4:1")
PORT_DIPSETTING( 0x01, "Free" )
PORT_DIPSETTING( 0x00, "Paid" )
PORT_DIPNAME( 0x02, 0x02, "Pay Rate?" ) PORT_DIPLOCATION("DIP4:2")
PORT_DIPSETTING( 0x02, DEF_STR( High ) )
PORT_DIPSETTING( 0x00, DEF_STR( Low ) )
PORT_DIPNAME( 0x04, 0x04, "Choose Bonus" ) PORT_DIPLOCATION("DIP4:3")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x02, "Renchan Rate" ) PORT_DIPLOCATION("DIP4:2")
PORT_DIPSETTING( 0x02, DEF_STR(Off) )
PORT_DIPSETTING( 0x00, DEF_STR(On) )
PORT_DIPNAME( 0x04, 0x04, "Auto Reach" ) PORT_DIPLOCATION("DIP4:3")
PORT_DIPSETTING( 0x04, DEF_STR(Off) )
PORT_DIPSETTING( 0x00, DEF_STR(On) )
PORT_DIPNAME( 0x08, 0x08, DEF_STR(Unknown) ) PORT_DIPLOCATION("DIP4:4")
PORT_DIPSETTING( 0x00, DEF_STR(Off) )
PORT_DIPSETTING( 0x08, DEF_STR(On) )