trunk/src/mame/drivers/goldstar.c
| r244896 | r244897 | |
| 179 | 179 | WRITE8_MEMBER(goldstar_state::goldstar_lamps_w) |
| 180 | 180 | { |
| 181 | 181 | /* bits |
| 182 | | 7654 3210 |
| 183 | | ---- ---x Bet Red / Card 2. |
| 184 | | ---- --x- Stop 3 / Small / Info / Card 1 |
| 185 | | ---- -x-- Bet Blue / Double / Card 3 |
| 186 | | ---- x--- Stop 1 / Take |
| 187 | | ---x ---- Stop 2 / Big / Bonus |
| 188 | | --x- ---- Start / Stop All / Card 4 |
| 182 | 7654 3210 goldstar |
| 183 | ---- ---x Bet Red / Card 2. |
| 184 | ---- --x- Stop 3 / Small / Info / Card 1 |
| 185 | ---- -x-- Bet Blue / Double / Card 3 |
| 186 | ---- x--- Stop 1 / Take |
| 187 | ---x ---- Stop 2 / Big / Bonus |
| 188 | --x- ---- Start / Stop All / Card 4 |
| 189 | |
| 190 | 7654 3210 cm/cmaster cmpacman/cmtetris tonypok schery97 pokonl97 match98 |
| 191 | ---- ---x stop/big bet 10/big hit/stop |
| 192 | ---- --x- d-up d-up big/small d-up d-up |
| 193 | ---- -x-- take take/stop take/d-up take/select take/select take |
| 194 | ---- x--- bet bet bet bet bet 1 bet |
| 195 | ---x ---- info info small small |
| 196 | --x- ---- start start deal start start start |
| 197 | -x-- ---- hold |
| 198 | |
| 199 | all cm/cmaster use the same scheme |
| 200 | tonypok uses lamps to indicate current button functions rather than active buttons |
| 201 | skill98 is like schery97 but doesn't activate bit 0 for stop |
| 202 | nfb96, roypok96 and nc96 sets are like schery97 but they don't activate bit 2 for select |
| 189 | 203 | */ |
| 190 | | output_set_lamp_value(0, (data) & 1); /* Bet Red / Card 2 */ |
| 191 | | output_set_lamp_value(1, (data >> 1) & 1); /* Stop 3 / Small / Info / Card 1 */ |
| 192 | | output_set_lamp_value(2, (data >> 2) & 1); /* Bet Blue / Double / Card 3 */ |
| 193 | | output_set_lamp_value(3, (data >> 3) & 1); /* Stop 1 / Take */ |
| 194 | | output_set_lamp_value(4, (data >> 4) & 1); /* Stop 2 / Big / Bonus */ |
| 195 | | output_set_lamp_value(5, (data >> 5) & 1); /* Start / Stop All / Card 4 */ |
| 204 | output_set_lamp_value(0, (data >> 0) & 1); |
| 205 | output_set_lamp_value(1, (data >> 1) & 1); |
| 206 | output_set_lamp_value(2, (data >> 2) & 1); |
| 207 | output_set_lamp_value(3, (data >> 3) & 1); |
| 208 | output_set_lamp_value(4, (data >> 4) & 1); |
| 209 | output_set_lamp_value(5, (data >> 5) & 1); |
| 210 | output_set_lamp_value(6, (data >> 6) & 1); |
| 196 | 211 | |
| 197 | 212 | // popmessage("lamps: %02X", data); |
| 198 | 213 | } |
| r244896 | r244897 | |
| 207 | 222 | ---- x--- Red Bet |
| 208 | 223 | ---x ---- Stop 3 / Small / Info |
| 209 | 224 | --x- ---- Start / Stop All |
| 225 | |
| 226 | TODO: there are two sets of lamps for the two players at 0xf850 and 0xf860 - handle them independently |
| 210 | 227 | */ |
| 211 | 228 | output_set_lamp_value(0, (data) & 1); /* Stop 2 / Big */ |
| 212 | 229 | output_set_lamp_value(1, (data >> 1) & 1); /* Blue Bet / Double */ |
| r244896 | r244897 | |
| 614 | 631 | */ |
| 615 | 632 | |
| 616 | 633 | |
| 617 | | WRITE8_MEMBER(cmaster_state::outport1_w) |
| 618 | | { |
| 619 | | /* lamps? */ |
| 620 | | //popmessage("outport1: %02X", data); |
| 621 | | } |
| 622 | | |
| 623 | 634 | static ADDRESS_MAP_START( cm_map, AS_PROGRAM, 8, goldstar_state ) |
| 624 | 635 | AM_RANGE(0x0000, 0xcfff) AM_ROM AM_WRITENOP |
| 625 | 636 | |
| r244896 | r244897 | |
| 675 | 686 | AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) /* DIP switches */ |
| 676 | 687 | AM_RANGE(0x10, 0x10) AM_WRITE(outport0_w) /* output port */ |
| 677 | 688 | AM_RANGE(0x11, 0x11) AM_WRITENOP |
| 678 | | AM_RANGE(0x12, 0x12) AM_WRITE(outport1_w) /* output port */ |
| 689 | AM_RANGE(0x12, 0x12) AM_WRITE(goldstar_lamps_w) /* output port */ |
| 679 | 690 | AM_RANGE(0x13, 0x13) AM_WRITE(background_col_w) |
| 680 | 691 | AM_RANGE(0x14, 0x14) AM_WRITE(girl_scroll_w) |
| 681 | 692 | ADDRESS_MAP_END |
| r244896 | r244897 | |
| 765 | 776 | AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) /* DIP switches */ |
| 766 | 777 | AM_RANGE(0x10, 0x10) AM_WRITE(outport0_w) /* output port */ |
| 767 | 778 | AM_RANGE(0x11, 0x11) AM_WRITENOP |
| 768 | | AM_RANGE(0x12, 0x12) AM_WRITE(outport1_w) /* output port */ |
| 779 | AM_RANGE(0x12, 0x12) AM_WRITE(goldstar_lamps_w) /* output port */ |
| 769 | 780 | AM_RANGE(0x13, 0x13) AM_WRITE(background_col_w) |
| 770 | 781 | AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("oki", okim6295_device, read, write) |
| 771 | 782 | ADDRESS_MAP_END |
| r244896 | r244897 | |
| 778 | 789 | AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) /* DIP switches */ |
| 779 | 790 | AM_RANGE(0x10, 0x10) AM_WRITE(outport0_w) /* output port */ |
| 780 | 791 | AM_RANGE(0x11, 0x11) AM_WRITENOP |
| 781 | | AM_RANGE(0x12, 0x12) AM_WRITE(outport1_w) /* output port */ |
| 792 | AM_RANGE(0x12, 0x12) AM_WRITE(goldstar_lamps_w) /* output port */ |
| 782 | 793 | AM_RANGE(0x13, 0x13) AM_WRITE(background_col_w) |
| 783 | 794 | ADDRESS_MAP_END |
| 784 | 795 | |
| r244896 | r244897 | |
| 2075 | 2086 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_POKER_HOLD2 ) PORT_NAME("Hold 2 / Big / Red") |
| 2076 | 2087 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Hold 3 / W-Up") |
| 2077 | 2088 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_POKER_HOLD4 ) PORT_NAME("Hold 4 / Take") |
| 2078 | | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_GAMBLE_BET ) PORT_NAME("Hold 5 / Bet") |
| 2089 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_POKER_HOLD5 ) PORT_NAME("Hold 5 / Bet") |
| 2079 | 2090 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1 / Small / Black") |
| 2080 | 2091 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Deal") |
| 2081 | 2092 | |
| r244896 | r244897 | |
| 7152 | 7163 | MCFG_PALETTE_INIT_OWNER(goldstar_state,cm) |
| 7153 | 7164 | MCFG_NVRAM_ADD_1FILL("nvram") |
| 7154 | 7165 | |
| 7155 | | MCFG_VIDEO_START_OVERRIDE(goldstar_state,cherrym) |
| 7166 | MCFG_VIDEO_START_OVERRIDE(goldstar_state, cherrym) |
| 7156 | 7167 | |
| 7157 | 7168 | /* sound hardware */ |
| 7158 | 7169 | MCFG_SPEAKER_STANDARD_MONO("mono") |
| r244896 | r244897 | |
| 7166 | 7177 | MCFG_GFXDECODE_MODIFY("gfxdecode", cmasterc) |
| 7167 | 7178 | MACHINE_CONFIG_END |
| 7168 | 7179 | |
| 7169 | | #ifdef UNUSED_CODE |
| 7170 | | static MACHINE_CONFIG_DERIVED( cmasterc, cmnobmp ) |
| 7171 | | MCFG_GFXDECODE_MODIFY("gfxdecode", cm) |
| 7172 | | MACHINE_CONFIG_END |
| 7173 | | #endif |
| 7174 | 7180 | |
| 7175 | 7181 | static MACHINE_CONFIG_START( cmast91, goldstar_state ) |
| 7176 | 7182 | |