summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/ojankohs.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/ojankohs.c')
-rw-r--r--src/mame/drivers/ojankohs.c126
1 files changed, 60 insertions, 66 deletions
diff --git a/src/mame/drivers/ojankohs.c b/src/mame/drivers/ojankohs.c
index d9aa52fc908..736206ca956 100644
--- a/src/mame/drivers/ojankohs.c
+++ b/src/mame/drivers/ojankohs.c
@@ -39,22 +39,21 @@ Memo:
#include "machine/nvram.h"
-static WRITE8_HANDLER( ojankohs_rombank_w )
+WRITE8_MEMBER(ojankohs_state::ojankohs_rombank_w)
{
- memory_set_bank(space->machine(), "bank1", data & 0x3f);
+ memory_set_bank(machine(), "bank1", data & 0x3f);
}
-static WRITE8_HANDLER( ojankoy_rombank_w )
+WRITE8_MEMBER(ojankohs_state::ojankoy_rombank_w)
{
- ojankohs_state *state = space->machine().driver_data<ojankohs_state>();
- memory_set_bank(space->machine(), "bank1", data & 0x1f);
+ memory_set_bank(machine(), "bank1", data & 0x1f);
- state->m_adpcm_reset = BIT(data, 5);
- if (!state->m_adpcm_reset)
- state->m_vclk_left = 0;
+ m_adpcm_reset = BIT(data, 5);
+ if (!m_adpcm_reset)
+ m_vclk_left = 0;
- msm5205_reset_w(state->m_msm, !state->m_adpcm_reset);
+ msm5205_reset_w(m_msm, !m_adpcm_reset);
}
static WRITE8_DEVICE_HANDLER( ojankohs_adpcm_reset_w )
@@ -66,11 +65,10 @@ static WRITE8_DEVICE_HANDLER( ojankohs_adpcm_reset_w )
msm5205_reset_w(device, !state->m_adpcm_reset);
}
-static WRITE8_HANDLER( ojankohs_msm5205_w )
+WRITE8_MEMBER(ojankohs_state::ojankohs_msm5205_w)
{
- ojankohs_state *state = space->machine().driver_data<ojankohs_state>();
- state->m_adpcm_data = data;
- state->m_vclk_left = 2;
+ m_adpcm_data = data;
+ m_vclk_left = 2;
}
static void ojankohs_adpcm_int( device_t *device )
@@ -94,54 +92,50 @@ static void ojankohs_adpcm_int( device_t *device )
device_set_input_line(state->m_maincpu, INPUT_LINE_NMI, PULSE_LINE);
}
-static WRITE8_HANDLER( ojankoc_ctrl_w )
+WRITE8_MEMBER(ojankohs_state::ojankoc_ctrl_w)
{
- ojankohs_state *state = space->machine().driver_data<ojankohs_state>();
- memory_set_bank(space->machine(), "bank1", data & 0x0f);
+ memory_set_bank(machine(), "bank1", data & 0x0f);
- state->m_adpcm_reset = BIT(data, 4);
- msm5205_reset_w(state->m_msm, !BIT(data, 4));
- ojankoc_flipscreen(space, data);
+ m_adpcm_reset = BIT(data, 4);
+ msm5205_reset_w(m_msm, !BIT(data, 4));
+ ojankoc_flipscreen(&space, data);
}
-static WRITE8_HANDLER( ojankohs_portselect_w )
+WRITE8_MEMBER(ojankohs_state::ojankohs_portselect_w)
{
- ojankohs_state *state = space->machine().driver_data<ojankohs_state>();
- state->m_portselect = data;
+ m_portselect = data;
}
-static READ8_HANDLER( ojankohs_keymatrix_r )
+READ8_MEMBER(ojankohs_state::ojankohs_keymatrix_r)
{
- ojankohs_state *state = space->machine().driver_data<ojankohs_state>();
int ret;
- switch (state->m_portselect)
+ switch (m_portselect)
{
- case 0x01: ret = input_port_read(space->machine(), "KEY0"); break;
- case 0x02: ret = input_port_read(space->machine(), "KEY1"); break;
- case 0x04: ret = input_port_read(space->machine(), "KEY2"); break;
- case 0x08: ret = input_port_read(space->machine(), "KEY3"); break;
- case 0x10: ret = input_port_read(space->machine(), "KEY4"); break;
+ case 0x01: ret = input_port_read(machine(), "KEY0"); break;
+ case 0x02: ret = input_port_read(machine(), "KEY1"); break;
+ case 0x04: ret = input_port_read(machine(), "KEY2"); break;
+ case 0x08: ret = input_port_read(machine(), "KEY3"); break;
+ case 0x10: ret = input_port_read(machine(), "KEY4"); break;
case 0x20: ret = 0xff; break;
case 0x3f: ret = 0xff;
- ret &= input_port_read(space->machine(), "KEY0");
- ret &= input_port_read(space->machine(), "KEY1");
- ret &= input_port_read(space->machine(), "KEY2");
- ret &= input_port_read(space->machine(), "KEY3");
- ret &= input_port_read(space->machine(), "KEY4");
+ ret &= input_port_read(machine(), "KEY0");
+ ret &= input_port_read(machine(), "KEY1");
+ ret &= input_port_read(machine(), "KEY2");
+ ret &= input_port_read(machine(), "KEY3");
+ ret &= input_port_read(machine(), "KEY4");
break;
default: ret = 0xff;
- logerror("PC:%04X unknown %02X\n", cpu_get_pc(&space->device()), state->m_portselect);
+ logerror("PC:%04X unknown %02X\n", cpu_get_pc(&space.device()), m_portselect);
break;
}
return ret;
}
-static READ8_HANDLER( ojankoc_keymatrix_r )
+READ8_MEMBER(ojankohs_state::ojankoc_keymatrix_r)
{
- ojankohs_state *state = space->machine().driver_data<ojankohs_state>();
int i;
int ret = 0;
static const char *const keynames[2][5] =
@@ -152,11 +146,11 @@ static READ8_HANDLER( ojankoc_keymatrix_r )
for (i = 0; i < 5; i++)
{
- if (!BIT(state->m_portselect, i))
- ret |= input_port_read(space->machine(), keynames[offset][i]);
+ if (!BIT(m_portselect, i))
+ ret |= input_port_read(machine(), keynames[offset][i]);
}
- return (ret & 0x3f) | (input_port_read(space->machine(), offset ? "IN1" : "IN0") & 0xc0);
+ return (ret & 0x3f) | (input_port_read(machine(), offset ? "IN1" : "IN0") & 0xc0);
}
static READ8_DEVICE_HANDLER( ojankohs_ay8910_0_r )
@@ -177,24 +171,24 @@ static READ8_DEVICE_HANDLER( ojankohs_ay8910_1_r )
((input_port_read(device->machine(), "DSW2") & 0x40) >> 5) | ((input_port_read(device->machine(), "DSW2") & 0x80) >> 7));
}
-static READ8_HANDLER( ccasino_dipsw3_r )
+READ8_MEMBER(ojankohs_state::ccasino_dipsw3_r)
{
- return (input_port_read(space->machine(), "DSW3") ^ 0xff); // DIPSW 3
+ return (input_port_read(machine(), "DSW3") ^ 0xff); // DIPSW 3
}
-static READ8_HANDLER( ccasino_dipsw4_r )
+READ8_MEMBER(ojankohs_state::ccasino_dipsw4_r)
{
- return (input_port_read(space->machine(), "DSW4") ^ 0xff); // DIPSW 4
+ return (input_port_read(machine(), "DSW4") ^ 0xff); // DIPSW 4
}
-static WRITE8_HANDLER( ojankoy_coinctr_w )
+WRITE8_MEMBER(ojankohs_state::ojankoy_coinctr_w)
{
- coin_counter_w(space->machine(), 0, BIT(data, 0));
+ coin_counter_w(machine(), 0, BIT(data, 0));
}
-static WRITE8_HANDLER( ccasino_coinctr_w )
+WRITE8_MEMBER(ojankohs_state::ccasino_coinctr_w)
{
- coin_counter_w(space->machine(), 0, BIT(data, 1));
+ coin_counter_w(machine(), 0, BIT(data, 1));
}
@@ -226,12 +220,12 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ojankohs_io_map, AS_IO, 8, ojankohs_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE_LEGACY(ojankohs_portselect_w)
- AM_RANGE(0x01, 0x01) AM_READWRITE_LEGACY(ojankohs_keymatrix_r, ojankohs_rombank_w)
+ AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(ojankohs_portselect_w)
+ AM_RANGE(0x01, 0x01) AM_READWRITE(ojankohs_keymatrix_r, ojankohs_rombank_w)
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1") AM_WRITE_LEGACY(ojankohs_gfxreg_w)
AM_RANGE(0x03, 0x03) AM_DEVWRITE_LEGACY("msm", ojankohs_adpcm_reset_w)
AM_RANGE(0x04, 0x04) AM_WRITE_LEGACY(ojankohs_flipscreen_w)
- AM_RANGE(0x05, 0x05) AM_WRITE_LEGACY(ojankohs_msm5205_w)
+ AM_RANGE(0x05, 0x05) AM_WRITE(ojankohs_msm5205_w)
AM_RANGE(0x06, 0x06) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
AM_RANGE(0x06, 0x07) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
AM_RANGE(0x10, 0x10) AM_WRITENOP // unknown
@@ -240,23 +234,23 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ojankoy_io_map, AS_IO, 8, ojankohs_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE_LEGACY(ojankohs_portselect_w)
- AM_RANGE(0x01, 0x01) AM_READWRITE_LEGACY(ojankohs_keymatrix_r, ojankoy_rombank_w)
- AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1") AM_WRITE_LEGACY(ojankoy_coinctr_w)
+ AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(ojankohs_portselect_w)
+ AM_RANGE(0x01, 0x01) AM_READWRITE(ojankohs_keymatrix_r, ojankoy_rombank_w)
+ AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1") AM_WRITE(ojankoy_coinctr_w)
AM_RANGE(0x04, 0x04) AM_WRITE_LEGACY(ojankohs_flipscreen_w)
- AM_RANGE(0x05, 0x05) AM_WRITE_LEGACY(ojankohs_msm5205_w)
+ AM_RANGE(0x05, 0x05) AM_WRITE(ojankohs_msm5205_w)
AM_RANGE(0x06, 0x06) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
AM_RANGE(0x06, 0x07) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
ADDRESS_MAP_END
static ADDRESS_MAP_START( ccasino_io_map, AS_IO, 8, ojankohs_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE_LEGACY(ojankohs_portselect_w)
- AM_RANGE(0x01, 0x01) AM_READWRITE_LEGACY(ojankohs_keymatrix_r, ojankohs_rombank_w)
- AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1") AM_WRITE_LEGACY(ccasino_coinctr_w)
- AM_RANGE(0x03, 0x03) AM_READ_LEGACY(ccasino_dipsw3_r) AM_DEVWRITE_LEGACY("msm", ojankohs_adpcm_reset_w)
- AM_RANGE(0x04, 0x04) AM_READWRITE_LEGACY(ccasino_dipsw4_r, ojankohs_flipscreen_w)
- AM_RANGE(0x05, 0x05) AM_WRITE_LEGACY(ojankohs_msm5205_w)
+ AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(ojankohs_portselect_w)
+ AM_RANGE(0x01, 0x01) AM_READWRITE(ojankohs_keymatrix_r, ojankohs_rombank_w)
+ AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1") AM_WRITE(ccasino_coinctr_w)
+ AM_RANGE(0x03, 0x03) AM_READ(ccasino_dipsw3_r) AM_DEVWRITE_LEGACY("msm", ojankohs_adpcm_reset_w)
+ AM_RANGE(0x04, 0x04) AM_READ(ccasino_dipsw4_r) AM_WRITE_LEGACY(ojankohs_flipscreen_w)
+ AM_RANGE(0x05, 0x05) AM_WRITE(ojankohs_msm5205_w)
AM_RANGE(0x06, 0x06) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
AM_RANGE(0x06, 0x07) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
AM_RANGE(0x08, 0x0f) AM_WRITE_LEGACY(ccasino_palette_w) AM_BASE(m_paletteram) // 16bit address access
@@ -267,10 +261,10 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ojankoc_io_map, AS_IO, 8, ojankohs_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x1f) AM_WRITE_LEGACY(ojankoc_palette_w)
- AM_RANGE(0xf9, 0xf9) AM_WRITE_LEGACY(ojankohs_msm5205_w)
- AM_RANGE(0xfb, 0xfb) AM_WRITE_LEGACY(ojankoc_ctrl_w)
- AM_RANGE(0xfc, 0xfd) AM_READ_LEGACY(ojankoc_keymatrix_r)
- AM_RANGE(0xfd, 0xfd) AM_WRITE_LEGACY(ojankohs_portselect_w)
+ AM_RANGE(0xf9, 0xf9) AM_WRITE(ojankohs_msm5205_w)
+ AM_RANGE(0xfb, 0xfb) AM_WRITE(ojankoc_ctrl_w)
+ AM_RANGE(0xfc, 0xfd) AM_READ(ojankoc_keymatrix_r)
+ AM_RANGE(0xfd, 0xfd) AM_WRITE(ojankohs_portselect_w)
AM_RANGE(0xfe, 0xff) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
AM_RANGE(0xff, 0xff) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
ADDRESS_MAP_END