Previous 199869 Revisions Next

r36373 Wednesday 11th March, 2015 at 08:57:45 UTC by Vasantha Crabb
Add crazybon coin counters
Figure out another crazybon DIP switch
Verify and factor out more chrygld/chry10/ncb3/cb3a DIP switches
[src/mame/drivers]goldstar.c
[src/mame/includes]goldstar.h

trunk/src/mame/drivers/goldstar.c
r244884r244885
705705      popmessage("lamps: %02X", data);
706706}
707707
708WRITE8_MEMBER(goldstar_state::pkrmast_coincount_w)
709{
710/*  bits
711  7654 3210
712  ---- ---x  Coin Out counter
713  ---- x---  Coin D counter
714  ---x ----  Coin C counter
715  --x- ----  Key In counter
716  -x-- ----  Coin A counter
717  x--- -xx-  Unused in Crazy Bonus
718*/
719
720   coin_counter_w(machine(), 0, data & 0x40);  /* Counter 1 Coin A */
721   coin_counter_w(machine(), 1, data & 0x20);  /* Counter 2 Key In */
722   coin_counter_w(machine(), 2, data & 0x10);  /* Counter 3 Coin C */
723   coin_counter_w(machine(), 3, data & 0x08);  /* Counter 4 Coin D */
724   coin_counter_w(machine(), 4, data & 0x01);  /* Counter 5 Payout */
725
726   if (data & 0x86)
727      popmessage("counters: %02X", data);
728}
729
708730static ADDRESS_MAP_START( pkrmast_portmap, AS_IO, 8, goldstar_state )
709731   ADDRESS_MAP_GLOBAL_MASK(0xff)
710732
r244884r244885
720742   AM_RANGE(0x21, 0x21) AM_READ_PORT("DSW3-1")
721743   AM_RANGE(0x22, 0x22) AM_WRITE(pkrmast_lamps_w)
722744
745   AM_RANGE(0x24, 0x24) AM_WRITE(pkrmast_coincount_w)
723746   AM_RANGE(0x25, 0x25) AM_READ_PORT("DSW1")
724747   AM_RANGE(0x26, 0x26) AM_READ_PORT("DSW2")
725748ADDRESS_MAP_END
r244884r244885
12481271INPUT_PORTS_END
12491272
12501273
1274static INPUT_PORTS_START( cb3_dsw1 )
1275   PORT_START("DSW1")
1276   PORT_DIPNAME( 0x01, 0x01, "Game Style" )                PORT_DIPLOCATION("DSW1:1")
1277   PORT_DIPSETTING(    0x01, "Tokens" )
1278   PORT_DIPSETTING(    0x00, "Ticket" )
1279   PORT_DIPNAME( 0x02, 0x02, "Hopper Out Switch" )         PORT_DIPLOCATION("DSW1:2")
1280   PORT_DIPSETTING(    0x02, "Active Low" )
1281   PORT_DIPSETTING(    0x00, "Active High" )
1282   PORT_DIPNAME( 0x04, 0x04, "Payout Mode" )               PORT_DIPLOCATION("DSW1:3")
1283   PORT_DIPSETTING(    0x04, "Payout Switch" )
1284   PORT_DIPSETTING(    0x00, "Automatic" )
1285   PORT_DIPNAME( 0x08, 0x08, "'7' In Double Up Game" )     PORT_DIPLOCATION("DSW1:4")
1286   PORT_DIPSETTING(    0x08, "Loss" )
1287   PORT_DIPSETTING(    0x00, "Even" )
1288   PORT_DIPNAME( 0x10, 0x10, "Double Up Game Pay Rate" )   PORT_DIPLOCATION("DSW1:5")
1289   PORT_DIPSETTING(    0x10, "80%" )
1290   PORT_DIPSETTING(    0x00, "90%" )
1291   PORT_DIPNAME( 0x20, 0x20, "Double Up Game" )            PORT_DIPLOCATION("DSW1:6")
1292   PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
1293   PORT_DIPSETTING(    0x20, DEF_STR( On ) )
1294   PORT_DIPNAME( 0xc0, 0xc0, "Bet Max" )                   PORT_DIPLOCATION("DSW1:7,8")
1295   PORT_DIPSETTING(    0xc0, "8" )
1296   PORT_DIPSETTING(    0x80, "16" )
1297   PORT_DIPSETTING(    0x40, "32" )
1298   PORT_DIPSETTING(    0x00, "64" )
1299INPUT_PORTS_END
1300
12511301static INPUT_PORTS_START( cb3_dsw3 )
12521302   PORT_INCLUDE( cmv4_dsw3 )
12531303   PORT_MODIFY("DSW3")
r244884r244885
12841334
12851335static INPUT_PORTS_START( cb3_dsw5 )
12861336   PORT_START("DSW5")
1287   PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )   PORT_DIPLOCATION("DSW5:1")      /* not checked */
1337   PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )   PORT_DIPLOCATION("DSW5:1")
12881338   PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
12891339   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1290   PORT_DIPNAME( 0x06, 0x06, "Coin In Limit" )     PORT_DIPLOCATION("DSW5:2,3")    /* not working */
1340   PORT_DIPNAME( 0x06, 0x06, "Coin In Limit" )     PORT_DIPLOCATION("DSW5:2,3")
12911341   PORT_DIPSETTING(    0x06, "1,000" )
12921342   PORT_DIPSETTING(    0x04, "5,000" )
12931343   PORT_DIPSETTING(    0x02, "10,000" )
12941344   PORT_DIPSETTING(    0x00, "20,000" )
1295   PORT_DIPNAME( 0x18, 0x10, "Coin Out Rate" )     PORT_DIPLOCATION("DSW5:4,5")    /* not checked */
1345   PORT_DIPNAME( 0x18, 0x10, "Coin Out Rate" )     PORT_DIPLOCATION("DSW5:4,5")
12961346   PORT_DIPSETTING(    0x00, "100 Credits / 1 Pulse" )
12971347   PORT_DIPSETTING(    0x08, "100 Credits / 5 Pulses" )
12981348   PORT_DIPSETTING(    0x10, "100 Credits / 10 Pulses" )
12991349   PORT_DIPSETTING(    0x18, "100 Credits / 100 Pulses" )
1300   PORT_DIPNAME( 0x20, 0x20, "W-Up Girl" )         PORT_DIPLOCATION("DSW5:6")      /* not working */
1350   PORT_DIPNAME( 0x20, 0x20, "Double Up Girl" )    PORT_DIPLOCATION("DSW5:6")
13011351   PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
13021352   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
1303   PORT_DIPNAME( 0xc0, 0xc0, "Coin In Rate" )      PORT_DIPLOCATION("DSW5:7,8")    /* not checked */
1353   PORT_DIPNAME( 0xc0, 0xc0, "Coin In Rate" )      PORT_DIPLOCATION("DSW5:7,8")
13041354   PORT_DIPSETTING(    0xc0, "100 Credits / 1 Pulse" )
13051355   PORT_DIPSETTING(    0x40, "100 Credits / 5 Pulses" )
13061356   PORT_DIPSETTING(    0x80, "100 Credits / 10 Pulses" )
r244884r244885
18661916   PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
18671917   PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
18681918
1869   PORT_START("DSW1")
1870   PORT_DIPNAME( 0x01, 0x01, "Game Style" )        PORT_DIPLOCATION("DSW1:1")
1871   PORT_DIPSETTING(    0x01, "Tokens" )
1872   PORT_DIPSETTING(    0x00, "Ticket" )
1873   PORT_DIPNAME( 0x02, 0x02, "Hopper Out Switch" ) PORT_DIPLOCATION("DSW1:2")
1874   PORT_DIPSETTING(    0x02, "Active Low" )
1875   PORT_DIPSETTING(    0x00, "Active High" )
1876   PORT_DIPNAME( 0x04, 0x04, "Payout Mode" )       PORT_DIPLOCATION("DSW1:3")
1877   PORT_DIPSETTING(    0x04, "Payout Switch" )
1878   PORT_DIPSETTING(    0x00, "Automatic" )
1879   PORT_DIPNAME( 0x08, 0x00, "W-UP '7'" )          PORT_DIPLOCATION("DSW1:4")
1880   PORT_DIPSETTING(    0x08, "Loss" )
1881   PORT_DIPSETTING(    0x00, "Even" )
1882   PORT_DIPNAME( 0x10, 0x10, "W-UP Pay Rate" )     PORT_DIPLOCATION("DSW1:5")
1883   PORT_DIPSETTING(    0x10, "80%" )
1884   PORT_DIPSETTING(    0x00, "90%" )
1885   PORT_DIPNAME( 0x20, 0x20, "W-UP Game" )         PORT_DIPLOCATION("DSW1:6")
1886   PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
1887   PORT_DIPSETTING(    0x20, DEF_STR( On ) )
1888   PORT_DIPNAME( 0xc0, 0x00, "Bet Max" )           PORT_DIPLOCATION("DSW1:7,8")
1919   PORT_INCLUDE( cb3_dsw1 )
1920   PORT_MODIFY("DSW1")
1921   /* Game Style not checked */
1922   /* Hopper Out Switch not checked */
1923   /* Payout Mode not checked */
1924   /* '7' In Double Up Game not checked */
1925   /* Double Up Game Pay Rate OK */
1926   /* Double Up Game OK */
1927   PORT_DIPNAME( 0xc0, 0xc0, "Bet Max" )                   PORT_DIPLOCATION("DSW1:7,8")
18891928   PORT_DIPSETTING(    0xc0, "8" )
18901929   PORT_DIPSETTING(    0x80, "16" )
18911930   PORT_DIPSETTING(    0x40, "32" )
r244884r244885
24742513   PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
24752514   PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
24762515
2477   PORT_START("DSW1")
2478   PORT_DIPNAME( 0x01, 0x00, "Game Style" )        PORT_DIPLOCATION("DSW1:1")  /* OK */
2479   PORT_DIPSETTING(    0x01, "Tokens" )
2480   PORT_DIPSETTING(    0x00, "Ticket" )
2481   PORT_DIPNAME( 0x02, 0x02, "Hopper Out Switch" ) PORT_DIPLOCATION("DSW1:2")  /* OK */
2482   PORT_DIPSETTING(    0x02, "Active Low" )
2483   PORT_DIPSETTING(    0x00, "Active High" )
2484   PORT_DIPNAME( 0x04, 0x04, "Payout Mode" )       PORT_DIPLOCATION("DSW1:3")  /* OK */
2485   PORT_DIPSETTING(    0x04, "Payout Switch" )
2486   PORT_DIPSETTING(    0x00, "Automatic" )
2487   PORT_DIPNAME( 0x08, 0x00, "W-UP '7'" )          PORT_DIPLOCATION("DSW1:4")
2488   PORT_DIPSETTING(    0x08, "Loss" )
2489   PORT_DIPSETTING(    0x00, "Even" )
2490   PORT_DIPNAME( 0x10, 0x10, "W-UP Pay Rate" )     PORT_DIPLOCATION("DSW1:5")  /* OK */
2491   PORT_DIPSETTING(    0x10, "80%" )
2492   PORT_DIPSETTING(    0x00, "90%" )
2493   PORT_DIPNAME( 0x20, 0x20, "W-UP Game" )         PORT_DIPLOCATION("DSW1:6")  /* OK */
2494   PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2495   PORT_DIPSETTING(    0x20, DEF_STR( On ) )
2496   PORT_DIPNAME( 0xc0, 0x00, "Bet Max" )           PORT_DIPLOCATION("DSW1:7,8")    /* OK */
2497   PORT_DIPSETTING(    0xc0, "8" )
2498   PORT_DIPSETTING(    0x80, "16" )
2499   PORT_DIPSETTING(    0x40, "32" )
2500   PORT_DIPSETTING(    0x00, "64" )
2516   PORT_INCLUDE( cb3_dsw1 )
2517   /* Game Style not checked */
2518   /* Hopper Out Switch not checked */
2519   /* Payout Mode not checked */
2520   /* '7' In Double Up Game not checked */
2521   /* Double Up Game Pay Rate OK */
2522   /* Double Up Game OK */
2523   /* Bet Max OK */
25012524
25022525   PORT_INCLUDE( cmv4_dsw2 )
25032526   PORT_MODIFY("DSW2")
r244884r244885
25512574   /* DSW5-1 not checked */
25522575   /* Coin In Limit not working */
25532576   /* Coin Out Rate not checked */
2554   /* W-Up Girl not working */
2577   /* Double Up Girl not working (always shows face in demo) */
25552578   /* Coin In Rate not checked */
25562579INPUT_PORTS_END
25572580
r244884r244885
25802603   PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON9 )  PORT_CODE(KEYCODE_D) PORT_NAME("P2 - Stop 3 / Small / Info / Card 1")
25812604   PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_CODE(KEYCODE_H) PORT_NAME("P2 - Start / Stop All / Card 4")
25822605
2583   /* to check DIP switches... */
2584   PORT_START("DSW1")
2585   PORT_DIPNAME( 0x01, 0x01, "Game Style" )        PORT_DIPLOCATION("DSW1:1")
2586   PORT_DIPSETTING(    0x01, "Tokens" )
2587   PORT_DIPSETTING(    0x00, "Ticket" )
2588   PORT_DIPNAME( 0x02, 0x02, "Hopper Out Switch" ) PORT_DIPLOCATION("DSW1:2")
2589   PORT_DIPSETTING(    0x02, "Active Low" )
2590   PORT_DIPSETTING(    0x00, "Active High" )
2591   PORT_DIPNAME( 0x04, 0x04, "Payout Mode" )       PORT_DIPLOCATION("DSW1:3")
2592   PORT_DIPSETTING(    0x04, "Payout Switch" )
2593   PORT_DIPSETTING(    0x00, "Automatic" )
2594   PORT_DIPNAME( 0x08, 0x00, "W-UP '7'" )          PORT_DIPLOCATION("DSW1:4")
2595   PORT_DIPSETTING(    0x08, "Loss" )
2596   PORT_DIPSETTING(    0x00, "Even" )
2597   PORT_DIPNAME( 0x10, 0x10, "W-UP Pay Rate" )     PORT_DIPLOCATION("DSW1:5")
2598   PORT_DIPSETTING(    0x10, "80%" )
2599   PORT_DIPSETTING(    0x00, "90%" )
2600   PORT_DIPNAME( 0x20, 0x20, "W-UP Game" )         PORT_DIPLOCATION("DSW1:6")
2601   PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
2602   PORT_DIPSETTING(    0x20, DEF_STR( On ) )
2603   PORT_DIPNAME( 0xc0, 0x00, "Bet Max" )           PORT_DIPLOCATION("DSW1:7,8")
2604   PORT_DIPSETTING(    0xc0, "8" )
2605   PORT_DIPSETTING(    0x80, "16" )
2606   PORT_DIPSETTING(    0x40, "32" )
2607   PORT_DIPSETTING(    0x00, "64" )
2606   PORT_INCLUDE( cb3_dsw1 )
2607   /* Game Style not checked */
2608   /* Hopper Out Switch not checked */
2609   /* Payout Mode not checked */
2610   /* '7' In Double Up Game not checked */
2611   /* Double Up Game Pay Rate OK */
2612   /* Double Up Game OK */
2613   /* Bet Max OK */
26082614
26092615   PORT_INCLUDE( cmv4_dsw2 )
26102616   PORT_MODIFY("DSW2")
r244884r244885
26302636   /* DSW5-1 not checked */
26312637   /* Coin In Limit not working */
26322638   /* Coin Out Rate not checked */
2633   /* W-Up Girl not working */
2639   /* Double Up Girl not working (always shows face in demo) */
26342640   /* Coin In Rate not checked */
26352641INPUT_PORTS_END
26362642
r244884r244885
59155921   PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_LOW ) PORT_NAME("Small / Info")
59165922   PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Start")
59175923
5918   PORT_START("IN1")
5919   PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
5920   PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
5921   PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
5922   PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
5923   PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) PORT_NAME("Coin B")
5924   PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_NAME("Coin C")
5925   PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN )
5926   PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) PORT_NAME("Coin A")
5924   PORT_INCLUDE( cmv4_coins )
5925   PORT_MODIFY("IN1")
5926   PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* Unused coin switch */
59275927
59285928   PORT_INCLUDE( cmv4_service )
59295929
r244884r244885
59345934   PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )          PORT_DIPLOCATION("DSW1:2")
59355935   PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
59365936   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
5937   PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )          PORT_DIPLOCATION("DSW1:3")
5938   PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
5939   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
5937   PORT_DIPNAME( 0x04, 0x00, "Coin Out Rate" )             PORT_DIPLOCATION("DSW1:3")      /* OK */
5938   PORT_DIPSETTING(    0x04, "1" )
5939   PORT_DIPSETTING(    0x00, "10" )
59405940   PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )          PORT_DIPLOCATION("DSW1:4")
59415941   PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
59425942   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
trunk/src/mame/includes/goldstar.h
r244884r244885
2626   DECLARE_WRITE8_MEMBER(goldstar_lamps_w);
2727   DECLARE_WRITE8_MEMBER(cb3_lamps_w);
2828   DECLARE_WRITE8_MEMBER(pkrmast_lamps_w);
29   DECLARE_WRITE8_MEMBER(pkrmast_coincount_w);
2930   DECLARE_WRITE8_MEMBER(ladylinr_outport_w);
3031   DECLARE_WRITE8_MEMBER(goldstar_fg_vidram_w);
3132   DECLARE_WRITE8_MEMBER(goldstar_fg_atrram_w);


Previous 199869 Revisions Next


© 1997-2024 The MAME Team