49
DECLARE_WRITE8_MEMBER(output_0_w);
50
DECLARE_READ8_MEMBER(input_1_r);
51
DECLARE_WRITE8_MEMBER(output_1_w);
52
static WRITE8_HANDLER( output_0_w )
55
WRITE8_MEMBER(cchance_state::output_0_w)
55
58
//---- --x- divider?
56
coin_lockout_w(space->machine(), 0, ~data & 1);
58
// coin_counter_w(space->machine(), 0, ~data & 1);
62
static READ8_HANDLER( input_1_r )
64
cchance_state *state = space->machine().driver_data<cchance_state>();
65
return (state->m_hop_io) | (state->m_bell_io) | (input_port_read(space->machine(), "SP") & 0xff);
68
static WRITE8_HANDLER( output_1_w )
70
cchance_state *state = space->machine().driver_data<cchance_state>();
72
state->m_hop_io = (data & 0x40)>>4;
73
state->m_bell_io = (data & 0x80)>>4;
76
static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 )
59
coin_lockout_w(machine(), 0, ~data & 1);
61
// coin_counter_w(machine(), 0, ~data & 1);
65
READ8_MEMBER(cchance_state::input_1_r)
68
return (m_hop_io) | (m_bell_io) | (ioport("SP")->read() & 0xff);
71
WRITE8_MEMBER(cchance_state::output_1_w)
75
m_hop_io = (data & 0x40)>>4;
76
m_bell_io = (data & 0x80)>>4;
79
static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, cchance_state )
77
80
AM_RANGE(0x0000, 0x7fff) AM_ROM
79
AM_RANGE(0xa000, 0xafff) AM_RAM AM_DEVREADWRITE("spritegen", spritecodelow_r8, spritecodelow_w8)
80
AM_RANGE(0xb000, 0xbfff) AM_RAM AM_DEVREADWRITE("spritegen", spritecodehigh_r8, spritecodehigh_w8)
82
AM_RANGE(0xa000, 0xafff) AM_RAM AM_DEVREADWRITE_LEGACY("spritegen", spritecodelow_r8, spritecodelow_w8)
83
AM_RANGE(0xb000, 0xbfff) AM_RAM AM_DEVREADWRITE_LEGACY("spritegen", spritecodehigh_r8, spritecodehigh_w8)
82
85
AM_RANGE(0xc000, 0xdfff) AM_RAM
84
AM_RANGE(0xe000, 0xe2ff) AM_RAM AM_DEVREADWRITE("spritegen", spriteylow_r8, spriteylow_w8)
85
AM_RANGE(0xe300, 0xe303) AM_RAM AM_MIRROR(0xfc) AM_DEVWRITE("spritegen", spritectrl_w8) /* control registers (0x80 mirror used by Arkanoid 2) */
86
AM_RANGE(0xe800, 0xe800) AM_DEVWRITE("spritegen", spritebgflag_w8) /* enable / disable background transparency */
87
AM_RANGE(0xe000, 0xe2ff) AM_RAM AM_DEVREADWRITE_LEGACY("spritegen", spriteylow_r8, spriteylow_w8)
88
AM_RANGE(0xe300, 0xe303) AM_RAM AM_MIRROR(0xfc) AM_DEVWRITE_LEGACY("spritegen", spritectrl_w8) /* control registers (0x80 mirror used by Arkanoid 2) */
89
AM_RANGE(0xe800, 0xe800) AM_DEVWRITE_LEGACY("spritegen", spritebgflag_w8) /* enable / disable background transparency */
88
91
AM_RANGE(0xf000, 0xf000) AM_READNOP AM_WRITENOP //???
89
92
AM_RANGE(0xf001, 0xf001) AM_READ(input_1_r) AM_WRITE(output_0_w)
90
93
AM_RANGE(0xf002, 0xf002) AM_READ_PORT("IN0") AM_WRITE(output_1_w)
91
AM_RANGE(0xf800, 0xf801) AM_DEVWRITE("aysnd", ay8910_address_data_w)
92
AM_RANGE(0xf801, 0xf801) AM_DEVREAD("aysnd", ay8910_r)
94
AM_RANGE(0xf800, 0xf801) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_data_w)
95
AM_RANGE(0xf801, 0xf801) AM_DEVREAD_LEGACY("aysnd", ay8910_r)