summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/glass.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/glass.c')
-rw-r--r--src/mame/drivers/glass.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/src/mame/drivers/glass.c b/src/mame/drivers/glass.c
index d875026f6b7..d9492dadf01 100644
--- a/src/mame/drivers/glass.c
+++ b/src/mame/drivers/glass.c
@@ -13,10 +13,9 @@ The DS5002FP has up to 128KB undumped gameplay code making the game unplayable :
#include "sound/okim6295.h"
#include "includes/glass.h"
-static WRITE16_HANDLER( clr_int_w )
+WRITE16_MEMBER(glass_state::clr_int_w)
{
- glass_state *state = space->machine().driver_data<glass_state>();
- state->m_cause_interrupt = 1;
+ m_cause_interrupt = 1;
}
static INTERRUPT_GEN( glass_interrupt )
@@ -53,25 +52,25 @@ static GFXDECODE_START( glass )
GFXDECODE_END
-static WRITE16_HANDLER( OKIM6295_bankswitch_w )
+WRITE16_MEMBER(glass_state::OKIM6295_bankswitch_w)
{
- UINT8 *RAM = space->machine().region("oki")->base();
+ UINT8 *RAM = machine().region("oki")->base();
if (ACCESSING_BITS_0_7)
memcpy(&RAM[0x30000], &RAM[0x40000 + (data & 0x0f) * 0x10000], 0x10000);
}
-static WRITE16_HANDLER( glass_coin_w )
+WRITE16_MEMBER(glass_state::glass_coin_w)
{
switch (offset >> 3)
{
case 0x00: /* Coin Lockouts */
case 0x01:
- coin_lockout_w(space->machine(), (offset >> 3) & 0x01, ~data & 0x01);
+ coin_lockout_w(machine(), (offset >> 3) & 0x01, ~data & 0x01);
break;
case 0x02: /* Coin Counters */
case 0x03:
- coin_counter_w(space->machine(), (offset >> 3) & 0x01, data & 0x01);
+ coin_counter_w(machine(), (offset >> 3) & 0x01, data & 0x01);
break;
case 0x04: /* Sound Muting (if bit 0 == 1, sound output stream = 0) */
break;
@@ -83,7 +82,7 @@ static ADDRESS_MAP_START( glass_map, AS_PROGRAM, 16, glass_state )
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE_LEGACY(glass_vram_w) AM_BASE(m_videoram) /* Video RAM */
AM_RANGE(0x102000, 0x102fff) AM_RAM /* Extra Video RAM */
AM_RANGE(0x108000, 0x108007) AM_WRITEONLY AM_BASE(m_vregs) /* Video Registers */
- AM_RANGE(0x108008, 0x108009) AM_WRITE_LEGACY(clr_int_w) /* CLR INT Video */
+ AM_RANGE(0x108008, 0x108009) AM_WRITE(clr_int_w) /* CLR INT Video */
AM_RANGE(0x200000, 0x2007ff) AM_RAM_WRITE_LEGACY(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) /* Palette */
AM_RANGE(0x440000, 0x440fff) AM_RAM AM_BASE(m_spriteram) /* Sprite RAM */
AM_RANGE(0x700000, 0x700001) AM_READ_PORT("DSW2")
@@ -91,9 +90,9 @@ static ADDRESS_MAP_START( glass_map, AS_PROGRAM, 16, glass_state )
AM_RANGE(0x700004, 0x700005) AM_READ_PORT("P1")
AM_RANGE(0x700006, 0x700007) AM_READ_PORT("P2")
AM_RANGE(0x700008, 0x700009) AM_WRITE_LEGACY(glass_blitter_w) /* serial blitter */
- AM_RANGE(0x70000c, 0x70000d) AM_WRITE_LEGACY(OKIM6295_bankswitch_w) /* OKI6295 bankswitch */
+ AM_RANGE(0x70000c, 0x70000d) AM_WRITE(OKIM6295_bankswitch_w) /* OKI6295 bankswitch */
AM_RANGE(0x70000e, 0x70000f) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) /* OKI6295 status register */
- AM_RANGE(0x70000a, 0x70004b) AM_WRITE_LEGACY(glass_coin_w) /* Coin Counters/Lockout */
+ AM_RANGE(0x70000a, 0x70004b) AM_WRITE(glass_coin_w) /* Coin Counters/Lockout */
AM_RANGE(0xfec000, 0xfeffff) AM_RAM /* Work RAM (partially shared with DS5002FP) */
ADDRESS_MAP_END