From ae56af5a44fb5cadecb6c97dc141037f5aad5276 Mon Sep 17 00:00:00 2001 From: Angelo Salese Date: Mon, 27 Apr 2009 18:27:49 +0000 Subject: [PATCH] Merged memory maps in the megasys1.c driver --- src/mame/drivers/megasys1.c | 219 +++++++++++------------------------- 1 file changed, 68 insertions(+), 151 deletions(-) diff --git a/src/mame/drivers/megasys1.c b/src/mame/drivers/megasys1.c index 9407152b460..795408ea95e 100644 --- a/src/mame/drivers/megasys1.c +++ b/src/mame/drivers/megasys1.c @@ -169,36 +169,23 @@ static INTERRUPT_GEN( interrupt_A ) } -static ADDRESS_MAP_START( readmem_A, ADDRESS_SPACE_PROGRAM, 16 ) +static ADDRESS_MAP_START( megasys1A_map, ADDRESS_SPACE_PROGRAM, 16 ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) - AM_RANGE(0x000000, 0x05ffff) AM_READ(SMH_ROM) + AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("SYSTEM") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("P1") AM_RANGE(0x080004, 0x080005) AM_READ_PORT("P2") AM_RANGE(0x080006, 0x080007) AM_READ_PORT("DSW") AM_RANGE(0x080008, 0x080009) AM_READ(soundlatch2_word_r) /* from sound cpu */ - AM_RANGE(0x084000, 0x084fff) AM_READ(SMH_RAM) - AM_RANGE(0x088000, 0x0887ff) AM_READ(SMH_RAM) - AM_RANGE(0x08e000, 0x08ffff) AM_READ(SMH_RAM) - AM_RANGE(0x090000, 0x093fff) AM_READ(SMH_RAM) - AM_RANGE(0x094000, 0x097fff) AM_READ(SMH_RAM) - AM_RANGE(0x098000, 0x09bfff) AM_READ(SMH_RAM) - AM_RANGE(0x0f0000, 0x0fffff) AM_READ(SMH_RAM) + AM_RANGE(0x084000, 0x0843ff) AM_RAM_WRITE(megasys1_vregs_A_w) AM_BASE(&megasys1_vregs) + AM_RANGE(0x088000, 0x0887ff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBRGBx_word_w) AM_BASE(&paletteram16) + AM_RANGE(0x08e000, 0x08ffff) AM_RAM AM_BASE(&megasys1_objectram) + AM_RANGE(0x090000, 0x093fff) AM_RAM_WRITE(megasys1_scrollram_0_w) AM_BASE(&megasys1_scrollram[0]) + AM_RANGE(0x094000, 0x097fff) AM_RAM_WRITE(megasys1_scrollram_1_w) AM_BASE(&megasys1_scrollram[1]) + AM_RANGE(0x098000, 0x09bfff) AM_RAM_WRITE(megasys1_scrollram_2_w) AM_BASE(&megasys1_scrollram[2]) + AM_RANGE(0x0f0000, 0x0fffff) AM_RAM AM_BASE(&megasys1_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( writemem_A, ADDRESS_SPACE_PROGRAM, 16 ) - ADDRESS_MAP_GLOBAL_MASK(0xfffff) - AM_RANGE(0x000000, 0x05ffff) AM_WRITE(SMH_ROM) - AM_RANGE(0x084000, 0x0843ff) AM_WRITE(megasys1_vregs_A_w) AM_BASE(&megasys1_vregs) - AM_RANGE(0x088000, 0x0887ff) AM_WRITE(paletteram16_RRRRGGGGBBBBRGBx_word_w) AM_BASE(&paletteram16) - AM_RANGE(0x08e000, 0x08ffff) AM_WRITE(SMH_RAM) AM_BASE(&megasys1_objectram) - AM_RANGE(0x090000, 0x093fff) AM_WRITE(megasys1_scrollram_0_w) AM_BASE(&megasys1_scrollram[0]) - AM_RANGE(0x094000, 0x097fff) AM_WRITE(megasys1_scrollram_1_w) AM_BASE(&megasys1_scrollram[1]) - AM_RANGE(0x098000, 0x09bfff) AM_WRITE(megasys1_scrollram_2_w) AM_BASE(&megasys1_scrollram[2]) - AM_RANGE(0x0f0000, 0x0fffff) AM_WRITE(SMH_RAM) AM_BASE(&megasys1_ram) -ADDRESS_MAP_END - - /*************************************************************************** [ Main CPU - System B ] @@ -262,35 +249,20 @@ static WRITE16_HANDLER( ip_select_w ) } -static ADDRESS_MAP_START( readmem_B, ADDRESS_SPACE_PROGRAM, 16 ) +static ADDRESS_MAP_START( megasys1B_map, ADDRESS_SPACE_PROGRAM, 16 ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) - AM_RANGE(0x000000, 0x03ffff) AM_READ(SMH_ROM) - AM_RANGE(0x044000, 0x044fff) AM_READ(SMH_RAM) - AM_RANGE(0x048000, 0x0487ff) AM_READ(SMH_RAM) - AM_RANGE(0x04e000, 0x04ffff) AM_READ(SMH_RAM) - AM_RANGE(0x050000, 0x053fff) AM_READ(SMH_RAM) - AM_RANGE(0x054000, 0x057fff) AM_READ(SMH_RAM) - AM_RANGE(0x058000, 0x05bfff) AM_READ(SMH_RAM) - AM_RANGE(0x060000, 0x07ffff) AM_READ(SMH_RAM) - AM_RANGE(0x080000, 0x0bffff) AM_READ(SMH_ROM) - AM_RANGE(0x0e0000, 0x0e0001) AM_READ(ip_select_r) + AM_RANGE(0x000000, 0x03ffff) AM_ROM + AM_RANGE(0x044000, 0x0443ff) AM_RAM_WRITE(megasys1_vregs_A_w) AM_BASE(&megasys1_vregs) + AM_RANGE(0x048000, 0x0487ff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBRGBx_word_w) AM_BASE(&paletteram16) + AM_RANGE(0x04e000, 0x04ffff) AM_RAM AM_BASE(&megasys1_objectram) + AM_RANGE(0x050000, 0x053fff) AM_RAM_WRITE(megasys1_scrollram_0_w) AM_BASE(&megasys1_scrollram[0]) + AM_RANGE(0x054000, 0x057fff) AM_RAM_WRITE(megasys1_scrollram_1_w) AM_BASE(&megasys1_scrollram[1]) + AM_RANGE(0x058000, 0x05bfff) AM_RAM_WRITE(megasys1_scrollram_2_w) AM_BASE(&megasys1_scrollram[2]) + AM_RANGE(0x060000, 0x07ffff) AM_RAM AM_BASE(&megasys1_ram) + AM_RANGE(0x080000, 0x0bffff) AM_ROM + AM_RANGE(0x0e0000, 0x0e0001) AM_READWRITE(ip_select_r,ip_select_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( writemem_B, ADDRESS_SPACE_PROGRAM, 16 ) - ADDRESS_MAP_GLOBAL_MASK(0xfffff) - AM_RANGE(0x000000, 0x03ffff) AM_WRITE(SMH_ROM) - AM_RANGE(0x044000, 0x0443ff) AM_WRITE(megasys1_vregs_A_w) AM_BASE(&megasys1_vregs) - AM_RANGE(0x048000, 0x0487ff) AM_WRITE(paletteram16_RRRRGGGGBBBBRGBx_word_w) AM_BASE(&paletteram16) - AM_RANGE(0x04e000, 0x04ffff) AM_WRITE(SMH_RAM) AM_BASE(&megasys1_objectram) - AM_RANGE(0x050000, 0x053fff) AM_WRITE(megasys1_scrollram_0_w) AM_BASE(&megasys1_scrollram[0]) - AM_RANGE(0x054000, 0x057fff) AM_WRITE(megasys1_scrollram_1_w) AM_BASE(&megasys1_scrollram[1]) - AM_RANGE(0x058000, 0x05bfff) AM_WRITE(megasys1_scrollram_2_w) AM_BASE(&megasys1_scrollram[2]) - AM_RANGE(0x060000, 0x07ffff) AM_WRITE(SMH_RAM) AM_BASE(&megasys1_ram) - AM_RANGE(0x080000, 0x0bffff) AM_WRITE(SMH_ROM) - AM_RANGE(0x0e0000, 0x0e0001) AM_WRITE(ip_select_w) -ADDRESS_MAP_END - - /*************************************************************************** [ Main CPU - System C ] @@ -300,34 +272,19 @@ ADDRESS_MAP_END #define INTERRUPT_NUM_C INTERRUPT_NUM_B #define interrupt_C interrupt_B -static ADDRESS_MAP_START( readmem_C, ADDRESS_SPACE_PROGRAM, 16 ) +static ADDRESS_MAP_START( megasys1C_map, ADDRESS_SPACE_PROGRAM, 16 ) ADDRESS_MAP_GLOBAL_MASK(0x1fffff) - AM_RANGE(0x000000, 0x07ffff) AM_READ(SMH_ROM) - AM_RANGE(0x0c0000, 0x0cffff) AM_READ(megasys1_vregs_C_r) - AM_RANGE(0x0d2000, 0x0d3fff) AM_READ(SMH_RAM) - AM_RANGE(0x0e0000, 0x0e3fff) AM_READ(SMH_RAM) - AM_RANGE(0x0e8000, 0x0ebfff) AM_READ(SMH_RAM) - AM_RANGE(0x0f0000, 0x0f3fff) AM_READ(SMH_RAM) - AM_RANGE(0x0f8000, 0x0f87ff) AM_READ(SMH_RAM) - AM_RANGE(0x0d8000, 0x0d8001) AM_READ(ip_select_r) - AM_RANGE(0x1f0000, 0x1fffff) AM_READ(SMH_RAM) + AM_RANGE(0x000000, 0x07ffff) AM_ROM + AM_RANGE(0x0c0000, 0x0cffff) AM_READWRITE(megasys1_vregs_C_r,megasys1_vregs_C_w) AM_BASE(&megasys1_vregs) + AM_RANGE(0x0d2000, 0x0d3fff) AM_RAM AM_BASE(&megasys1_objectram) + AM_RANGE(0x0e0000, 0x0e3fff) AM_RAM_WRITE(megasys1_scrollram_0_w) AM_BASE(&megasys1_scrollram[0]) + AM_RANGE(0x0e8000, 0x0ebfff) AM_RAM_WRITE(megasys1_scrollram_1_w) AM_BASE(&megasys1_scrollram[1]) + AM_RANGE(0x0f0000, 0x0f3fff) AM_RAM_WRITE(megasys1_scrollram_2_w) AM_BASE(&megasys1_scrollram[2]) + AM_RANGE(0x0f8000, 0x0f87ff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBRGBx_word_w) AM_BASE(&paletteram16) + AM_RANGE(0x0d8000, 0x0d8001) AM_READWRITE(ip_select_r,ip_select_w) + AM_RANGE(0x1f0000, 0x1fffff) AM_RAM AM_BASE(&megasys1_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( writemem_C, ADDRESS_SPACE_PROGRAM, 16 ) - ADDRESS_MAP_GLOBAL_MASK(0x1fffff) - AM_RANGE(0x000000, 0x07ffff) AM_WRITE(SMH_ROM) - AM_RANGE(0x0c0000, 0x0cffff) AM_WRITE(megasys1_vregs_C_w) AM_BASE(&megasys1_vregs) - AM_RANGE(0x0d2000, 0x0d3fff) AM_WRITE(SMH_RAM) AM_BASE(&megasys1_objectram) - AM_RANGE(0x0e0000, 0x0e3fff) AM_WRITE(megasys1_scrollram_0_w) AM_BASE(&megasys1_scrollram[0]) - AM_RANGE(0x0e8000, 0x0ebfff) AM_WRITE(megasys1_scrollram_1_w) AM_BASE(&megasys1_scrollram[1]) - AM_RANGE(0x0f0000, 0x0f3fff) AM_WRITE(megasys1_scrollram_2_w) AM_BASE(&megasys1_scrollram[2]) - AM_RANGE(0x0f8000, 0x0f87ff) AM_WRITE(paletteram16_RRRRGGGGBBBBRGBx_word_w) AM_BASE(&paletteram16) - AM_RANGE(0x0d8000, 0x0d8001) AM_WRITE(ip_select_w) - AM_RANGE(0x1f0000, 0x1fffff) AM_WRITE(SMH_RAM) AM_BASE(&megasys1_ram) -ADDRESS_MAP_END - - - /*************************************************************************** [ Main CPU - System D ] @@ -338,32 +295,19 @@ static INTERRUPT_GEN( interrupt_D ) cpu_set_input_line(device, 2, HOLD_LINE); } -static ADDRESS_MAP_START( readmem_D, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x03ffff) AM_READ(SMH_ROM) - AM_RANGE(0x0c0000, 0x0c9fff) AM_READ(SMH_RAM) - AM_RANGE(0x0ca000, 0x0cbfff) AM_READ(SMH_RAM) - AM_RANGE(0x0d0000, 0x0d3fff) AM_READ(SMH_RAM) - AM_RANGE(0x0d4000, 0x0d7fff) AM_READ(SMH_RAM) - AM_RANGE(0x0d8000, 0x0d87ff) AM_MIRROR(0x3000) AM_READ(SMH_RAM) +static ADDRESS_MAP_START( megasys1D_map, ADDRESS_SPACE_PROGRAM, 16 ) + AM_RANGE(0x000000, 0x03ffff) AM_ROM + AM_RANGE(0x0c0000, 0x0c9fff) AM_RAM_WRITE(megasys1_vregs_D_w) AM_BASE(&megasys1_vregs) + AM_RANGE(0x0ca000, 0x0cbfff) AM_RAM AM_BASE(&megasys1_objectram) + AM_RANGE(0x0d0000, 0x0d3fff) AM_RAM_WRITE(megasys1_scrollram_1_w) AM_BASE(&megasys1_scrollram[1]) + AM_RANGE(0x0d4000, 0x0d7fff) AM_RAM_WRITE(megasys1_scrollram_2_w) AM_BASE(&megasys1_scrollram[2]) + AM_RANGE(0x0d8000, 0x0d87ff) AM_MIRROR(0x3000) AM_RAM_WRITE(paletteram16_RRRRRGGGGGBBBBBx_word_w) AM_BASE(&paletteram16) AM_RANGE(0x0e0000, 0x0e0001) AM_READ_PORT("DSW") - AM_RANGE(0x0e8000, 0x0ebfff) AM_READ(SMH_RAM) + AM_RANGE(0x0e8000, 0x0ebfff) AM_RAM_WRITE(megasys1_scrollram_0_w) AM_BASE(&megasys1_scrollram[0]) AM_RANGE(0x0f0000, 0x0f0001) AM_READ_PORT("SYSTEM") - AM_RANGE(0x0f8000, 0x0f8001) AM_DEVREAD8("oki1", okim6295_r, 0x00ff) -// { 0x100000, 0x100001 protection - AM_RANGE(0x1f0000, 0x1fffff) AM_READ(SMH_RAM) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( writemem_D, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x03ffff) AM_WRITE(SMH_ROM) - AM_RANGE(0x0c0000, 0x0c9fff) AM_WRITE(megasys1_vregs_D_w) AM_BASE(&megasys1_vregs) - AM_RANGE(0x0ca000, 0x0cbfff) AM_WRITE(SMH_RAM) AM_BASE(&megasys1_objectram) - AM_RANGE(0x0d0000, 0x0d3fff) AM_WRITE(megasys1_scrollram_1_w) AM_BASE(&megasys1_scrollram[1]) - AM_RANGE(0x0d4000, 0x0d7fff) AM_WRITE(megasys1_scrollram_2_w) AM_BASE(&megasys1_scrollram[2]) - AM_RANGE(0x0d8000, 0x0d87ff) AM_MIRROR(0x3000) AM_WRITE(paletteram16_RRRRRGGGGGBBBBBx_word_w) AM_BASE(&paletteram16) - AM_RANGE(0x0e8000, 0x0ebfff) AM_WRITE(megasys1_scrollram_0_w) AM_BASE(&megasys1_scrollram[0]) - AM_RANGE(0x0f8000, 0x0f8001) AM_DEVWRITE8("oki1", okim6295_w, 0x00ff) -// { 0x100000, 0x100001 protection - AM_RANGE(0x1f0000, 0x1fffff) AM_WRITE(SMH_RAM) AM_BASE(&megasys1_ram) + AM_RANGE(0x0f8000, 0x0f8001) AM_DEVREADWRITE8("oki1", okim6295_r,okim6295_w, 0x00ff) +// AM_RANGE(0x100000, 0x100001) // protection + AM_RANGE(0x1f0000, 0x1fffff) AM_RAM AM_BASE(&megasys1_ram) ADDRESS_MAP_END @@ -444,78 +388,51 @@ static READ8_DEVICE_HANDLER( oki_status_r ) ***************************************************************************/ -static ADDRESS_MAP_START( sound_readmem_A, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x01ffff) AM_READ(SMH_ROM) +static ADDRESS_MAP_START( megasys1A_sound_map, ADDRESS_SPACE_PROGRAM, 16 ) + AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x040000, 0x040001) AM_READ(soundlatch_word_r) - AM_RANGE(0x080000, 0x080003) AM_DEVREAD8("ym", ym2151_r, 0x00ff) - AM_RANGE(0x0a0000, 0x0a0001) AM_DEVREAD8("oki1", oki_status_r, 0x00ff) - AM_RANGE(0x0c0000, 0x0c0001) AM_DEVREAD8("oki2", oki_status_r, 0x00ff) - AM_RANGE(0x0e0000, 0x0fffff) AM_READ(SMH_RAM) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( sound_writemem_A, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x01ffff) AM_WRITE(SMH_ROM) AM_RANGE(0x060000, 0x060001) AM_WRITE(soundlatch2_word_w) // to main cpu - AM_RANGE(0x080000, 0x080003) AM_DEVWRITE8("ym", ym2151_w, 0x00ff) + AM_RANGE(0x080000, 0x080003) AM_DEVREADWRITE8("ym", ym2151_r,ym2151_w, 0x00ff) + AM_RANGE(0x0a0000, 0x0a0001) AM_DEVREAD8("oki1", oki_status_r, 0x00ff) AM_RANGE(0x0a0000, 0x0a0003) AM_DEVWRITE8("oki1", okim6295_w, 0x00ff) + AM_RANGE(0x0c0000, 0x0c0001) AM_DEVREAD8("oki2", oki_status_r, 0x00ff) AM_RANGE(0x0c0000, 0x0c0003) AM_DEVWRITE8("oki2", okim6295_w, 0x00ff) - AM_RANGE(0x0e0000, 0x0fffff) AM_WRITE(SMH_RAM) + AM_RANGE(0x0e0000, 0x0fffff) AM_RAM ADDRESS_MAP_END - - - - /*************************************************************************** [ Sound CPU - System B / C ] ***************************************************************************/ -static ADDRESS_MAP_START( sound_readmem_B, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x01ffff) AM_READ(SMH_ROM) - AM_RANGE(0x040000, 0x040001) AM_READ(soundlatch_word_r) /* from main cpu */ - AM_RANGE(0x060000, 0x060001) AM_READ(soundlatch_word_r) /* from main cpu */ - AM_RANGE(0x080000, 0x080003) AM_DEVREAD8("ym", ym2151_r, 0x00ff) +static ADDRESS_MAP_START( megasys1B_sound_map, ADDRESS_SPACE_PROGRAM, 16 ) + AM_RANGE(0x000000, 0x01ffff) AM_ROM + AM_RANGE(0x040000, 0x040001) AM_READWRITE(soundlatch_word_r,soundlatch2_word_w) /* from/to main cpu */ + AM_RANGE(0x060000, 0x060001) AM_READWRITE(soundlatch_word_r,soundlatch2_word_w) /* from/to main cpu */ + AM_RANGE(0x080000, 0x080003) AM_DEVREADWRITE8("ym", ym2151_r,ym2151_w, 0x00ff) AM_RANGE(0x0a0000, 0x0a0001) AM_DEVREAD8("oki1", oki_status_r, 0x00ff) - AM_RANGE(0x0c0000, 0x0c0001) AM_DEVREAD8("oki2", oki_status_r, 0x00ff) - AM_RANGE(0x0e0000, 0x0effff) AM_READ(SMH_RAM) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( sound_writemem_B, ADDRESS_SPACE_PROGRAM, 16 ) - AM_RANGE(0x000000, 0x01ffff) AM_WRITE(SMH_ROM ) - AM_RANGE(0x040000, 0x040001) AM_WRITE(soundlatch2_word_w) /* to main cpu */ - AM_RANGE(0x060000, 0x060001) AM_WRITE(soundlatch2_word_w) /* to main cpu */ - AM_RANGE(0x080000, 0x080003) AM_DEVWRITE8("ym", ym2151_w, 0x00ff) AM_RANGE(0x0a0000, 0x0a0003) AM_DEVWRITE8("oki1", okim6295_w, 0x00ff) + AM_RANGE(0x0c0000, 0x0c0001) AM_DEVREAD8("oki2", oki_status_r, 0x00ff) AM_RANGE(0x0c0000, 0x0c0003) AM_DEVWRITE8("oki2", okim6295_w, 0x00ff) - AM_RANGE(0x0e0000, 0x0effff) AM_WRITE(SMH_RAM) + AM_RANGE(0x0e0000, 0x0effff) AM_RAM ADDRESS_MAP_END - - - - /*************************************************************************** [ Sound CPU - System Z ] ***************************************************************************/ -static ADDRESS_MAP_START( sound_readmem_z80, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x3fff) AM_READ(SMH_ROM) - AM_RANGE(0xc000, 0xc7ff) AM_READ(SMH_RAM) +static ADDRESS_MAP_START( z80_sound_map, ADDRESS_SPACE_PROGRAM, 8 ) + AM_RANGE(0x0000, 0x3fff) AM_ROM + AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) -ADDRESS_MAP_END - -static ADDRESS_MAP_START( sound_writemem_z80, ADDRESS_SPACE_PROGRAM, 8 ) - AM_RANGE(0x0000, 0x3fff) AM_WRITE(SMH_ROM) - AM_RANGE(0xc000, 0xc7ff) AM_WRITE(SMH_RAM) AM_RANGE(0xf000, 0xf000) AM_WRITENOP /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, ADDRESS_SPACE_IO, 8 ) +static ADDRESS_MAP_START( z80_sound_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym", ym2203_r, ym2203_w) ADDRESS_MAP_END @@ -1539,11 +1456,11 @@ static MACHINE_DRIVER_START( system_A ) /* basic machine hardware */ MDRV_CPU_ADD("maincpu", M68000, SYS_A_CPU_CLOCK) /* 6MHz verified */ - MDRV_CPU_PROGRAM_MAP(readmem_A,writemem_A) + MDRV_CPU_PROGRAM_MAP(megasys1A_map,0) MDRV_CPU_VBLANK_INT_HACK(interrupt_A,INTERRUPT_NUM_A) MDRV_CPU_ADD("soundcpu", M68000, SOUND_CPU_CLOCK) /* 7MHz verified */ - MDRV_CPU_PROGRAM_MAP(sound_readmem_A,sound_writemem_A) + MDRV_CPU_PROGRAM_MAP(megasys1A_sound_map,0) MDRV_QUANTUM_TIME(HZ(120000)) @@ -1595,11 +1512,11 @@ static MACHINE_DRIVER_START( system_B ) MDRV_CPU_REPLACE("maincpu", M68000, SYS_B_CPU_CLOCK) /* 8MHz */ MDRV_CPU_MODIFY("maincpu") - MDRV_CPU_PROGRAM_MAP(readmem_B,writemem_B) + MDRV_CPU_PROGRAM_MAP(megasys1B_map,0) MDRV_CPU_VBLANK_INT_HACK(interrupt_B,INTERRUPT_NUM_B) MDRV_CPU_MODIFY("soundcpu") - MDRV_CPU_PROGRAM_MAP(sound_readmem_B,sound_writemem_B) + MDRV_CPU_PROGRAM_MAP(megasys1B_sound_map,0) MACHINE_DRIVER_END static MACHINE_DRIVER_START( system_B_hayaosi1 ) @@ -1625,11 +1542,11 @@ static MACHINE_DRIVER_START( system_C ) MDRV_IMPORT_FROM(system_A) MDRV_CPU_REPLACE("maincpu", M68000, SYS_C_CPU_CLOCK) /* 12MHz */ MDRV_CPU_MODIFY("maincpu") - MDRV_CPU_PROGRAM_MAP(readmem_C,writemem_C) + MDRV_CPU_PROGRAM_MAP(megasys1C_map,0) MDRV_CPU_VBLANK_INT_HACK(interrupt_C,INTERRUPT_NUM_C) MDRV_CPU_MODIFY("soundcpu") - MDRV_CPU_PROGRAM_MAP(sound_readmem_B,sound_writemem_B) + MDRV_CPU_PROGRAM_MAP(megasys1B_sound_map,0) MACHINE_DRIVER_END @@ -1648,7 +1565,7 @@ static MACHINE_DRIVER_START( system_D ) /* basic machine hardware */ MDRV_CPU_ADD("maincpu", M68000, SYS_D_CPU_CLOCK) /* 8MHz */ - MDRV_CPU_PROGRAM_MAP(readmem_D,writemem_D) + MDRV_CPU_PROGRAM_MAP(megasys1D_map,0) MDRV_CPU_VBLANK_INT("screen", interrupt_D) MDRV_MACHINE_RESET(megasys1) @@ -1710,12 +1627,12 @@ static MACHINE_DRIVER_START( system_Z ) /* basic machine hardware */ MDRV_CPU_ADD("maincpu", M68000, SYS_A_CPU_CLOCK) /* 6MHz (12MHz / 2) */ - MDRV_CPU_PROGRAM_MAP(readmem_A,writemem_A) + MDRV_CPU_PROGRAM_MAP(megasys1A_map,0) MDRV_CPU_VBLANK_INT_HACK(interrupt_A,INTERRUPT_NUM_A) MDRV_CPU_ADD("audiocpu", Z80, 3000000) /* OSC 12MHz divided by 4 ??? */ - MDRV_CPU_PROGRAM_MAP(sound_readmem_z80,sound_writemem_z80) - MDRV_CPU_IO_MAP(sound_io_map,0) + MDRV_CPU_PROGRAM_MAP(z80_sound_map,0) + MDRV_CPU_IO_MAP(z80_sound_io_map,0) /* video hardware */ MDRV_SCREEN_ADD("screen", RASTER)