summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Andrew Gardner <andrew-gardner@users.noreply.github.com>2008-07-28 04:48:41 +0000
committer Andrew Gardner <andrew-gardner@users.noreply.github.com>2008-07-28 04:48:41 +0000
commit867d51a2bc467106df98c67e22f52505c08e047a (patch)
tree4e74fe1f7bb050ed16b862a4f24b0f386c87cc37
parent6e13a53ff71bc26efb446a15f2b6175cb7e34037 (diff)
Memory map merge for beezer.c, bishi.c, and bladestl.c
-rw-r--r--src/mame/drivers/beezer.c36
-rw-r--r--src/mame/drivers/bishi.c35
-rw-r--r--src/mame/drivers/bladestl.c72
3 files changed, 51 insertions, 92 deletions
diff --git a/src/mame/drivers/beezer.c b/src/mame/drivers/beezer.c
index 9cbf54afcc1..34ea9b26c07 100644
--- a/src/mame/drivers/beezer.c
+++ b/src/mame/drivers/beezer.c
@@ -14,35 +14,21 @@
#include "includes/beezer.h"
-static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 )
- AM_RANGE(0x0000, 0xbfff) AM_READ(SMH_RAM)
- AM_RANGE(0xc000, 0xcfff) AM_READ(SMH_BANK1)
- AM_RANGE(0xd000, 0xffff) AM_READ(SMH_ROM)
+static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
+ AM_RANGE(0x0000, 0xbfff) AM_RAM AM_BASE(&videoram) AM_SIZE(&videoram_size)
+ AM_RANGE(0xc000, 0xcfff) AM_ROMBANK(1)
+ AM_RANGE(0xd000, 0xffff) AM_ROM AM_WRITE(beezer_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
- AM_RANGE(0x0000, 0xbfff) AM_WRITE(SMH_RAM) AM_BASE(&videoram) AM_SIZE(&videoram_size)
- AM_RANGE(0xc000, 0xcfff) AM_WRITE(SMH_BANK1)
- AM_RANGE(0xd000, 0xffff) AM_WRITE(beezer_bankswitch_w)
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( readmem_sound, ADDRESS_SPACE_PROGRAM, 8 )
- AM_RANGE(0x0000, 0x07ff) AM_READ(SMH_RAM)
-// AM_RANGE(0x1000, 0x10ff) AM_READ(beezer_6840_r)
- AM_RANGE(0x1800, 0x18ff) AM_READ(via_1_r)
- AM_RANGE(0xe000, 0xffff) AM_READ(SMH_ROM)
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( writemem_sound, ADDRESS_SPACE_PROGRAM, 8 )
- AM_RANGE(0x0000, 0x07ff) AM_WRITE(SMH_RAM)
-// AM_RANGE(0x1000, 0x10ff) AM_WRITE(beezer_6840_w)
- AM_RANGE(0x1800, 0x18ff) AM_WRITE(via_1_w)
+static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 )
+ AM_RANGE(0x0000, 0x07ff) AM_RAM
+// AM_RANGE(0x1000, 0x10ff) AM_READWRITE(beezer_6840_r, beezer_6840_w)
+ AM_RANGE(0x1800, 0x18ff) AM_READWRITE(via_1_r, via_1_w)
// AM_RANGE(0x8000, 0x9fff) AM_WRITE(beezer_dac_w)
- AM_RANGE(0xe000, 0xffff) AM_WRITE(SMH_ROM)
+ AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-
static INPUT_PORTS_START( beezer )
PORT_START_TAG("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT )
@@ -90,11 +76,11 @@ static MACHINE_DRIVER_START( beezer )
/* basic machine hardware */
MDRV_CPU_ADD("main", M6809, 1000000) /* 1 MHz */
- MDRV_CPU_PROGRAM_MAP(readmem,writemem)
+ MDRV_CPU_PROGRAM_MAP(main_map, 0)
MDRV_CPU_VBLANK_INT_HACK(beezer_interrupt,128)
MDRV_CPU_ADD("audio", M6809, 1000000) /* 1 MHz */
- MDRV_CPU_PROGRAM_MAP(readmem_sound,writemem_sound)
+ MDRV_CPU_PROGRAM_MAP(sound_map, 0)
/* video hardware */
MDRV_SCREEN_ADD("main", RASTER)
diff --git a/src/mame/drivers/bishi.c b/src/mame/drivers/bishi.c
index bf299d31559..fecb1c5c1e2 100644
--- a/src/mame/drivers/bishi.c
+++ b/src/mame/drivers/bishi.c
@@ -190,33 +190,24 @@ static READ16_HANDLER( bishi_K056832_rom_r )
return K056832_bishi_rom_word_r(machine, ouroffs, mem_mask);
}
-static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 16 )
- AM_RANGE(0x000000, 0x0fffff) AM_READ(SMH_ROM)
- AM_RANGE(0x400000, 0x407fff) AM_READ(SMH_RAM) // work RAM
- AM_RANGE(0x800000, 0x800001) AM_READ(control_r)
+static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
+ AM_RANGE(0x000000, 0x0fffff) AM_ROM
+ AM_RANGE(0x400000, 0x407fff) AM_RAM // Work RAM
+ AM_RANGE(0x800000, 0x800001) AM_READWRITE(control_r, control_w)
AM_RANGE(0x800004, 0x800005) AM_READ(dipsw_r)
AM_RANGE(0x800006, 0x800007) AM_READ(player1_r)
AM_RANGE(0x800008, 0x800009) AM_READ(player2_r)
- AM_RANGE(0x880000, 0x880003) AM_READ(bishi_sound_r)
- AM_RANGE(0xa00000, 0xa01fff) AM_READ(K056832_ram_word_r) // VRAM
- AM_RANGE(0xb00000, 0xb03fff) AM_READ(SMH_RAM)
- AM_RANGE(0xb04000, 0xb047ff) AM_READ(bishi_mirror_r) // bug in the ram/rom test?
- AM_RANGE(0xc00000, 0xc01fff) AM_READ(bishi_K056832_rom_r)
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 16 )
- AM_RANGE(0x000000, 0x0fffff) AM_WRITE(SMH_ROM)
- AM_RANGE(0x400000, 0x407fff) AM_WRITE(SMH_RAM)
- AM_RANGE(0x800000, 0x800001) AM_WRITE(control_w)
AM_RANGE(0x810000, 0x810003) AM_WRITE(control2_w) // bank switch for K056832 character ROM test
- AM_RANGE(0x820000, 0x820001) AM_WRITE(SMH_NOP) // lamps (see lamp test in service menu)
+ AM_RANGE(0x820000, 0x820001) AM_WRITE(SMH_NOP) // lamps (see lamp test in service menu)
AM_RANGE(0x830000, 0x83003f) AM_WRITE(K056832_word_w)
AM_RANGE(0x840000, 0x840007) AM_WRITE(K056832_b_word_w) // VSCCS
- AM_RANGE(0x850000, 0x85001f) AM_WRITE(K054338_word_w) // CLTC
- AM_RANGE(0x870000, 0x8700ff) AM_WRITE(K055555_word_w) // PCU2
- AM_RANGE(0x880000, 0x880003) AM_WRITE(bishi_sound_w)
- AM_RANGE(0xa00000, 0xa01fff) AM_WRITE(K056832_ram_word_w) /* Graphic planes */
- AM_RANGE(0xb00000, 0xb03fff) AM_WRITE(paletteram16_xbgr_word_be_w) AM_BASE(&paletteram16)
+ AM_RANGE(0x850000, 0x85001f) AM_WRITE(K054338_word_w) // CLTC
+ AM_RANGE(0x870000, 0x8700ff) AM_WRITE(K055555_word_w) // PCU2
+ AM_RANGE(0x880000, 0x880003) AM_READWRITE(bishi_sound_r, bishi_sound_w)
+ AM_RANGE(0xa00000, 0xa01fff) AM_READWRITE(K056832_ram_word_r, K056832_ram_word_w) // Graphic planes
+ AM_RANGE(0xb00000, 0xb03fff) AM_RAM_WRITE(paletteram16_xbgr_word_be_w) AM_BASE(&paletteram16)
+ AM_RANGE(0xb04000, 0xb047ff) AM_READ(bishi_mirror_r) // bug in the ram/rom test?
+ AM_RANGE(0xc00000, 0xc01fff) AM_READ(bishi_K056832_rom_r)
ADDRESS_MAP_END
static INPUT_PORTS_START( bishi )
@@ -339,7 +330,7 @@ static MACHINE_DRIVER_START( bishi )
/* basic machine hardware */
MDRV_CPU_ADD("main", M68000, CPU_CLOCK) /* 12MHz (24MHz OSC / 2 ) */
- MDRV_CPU_PROGRAM_MAP(readmem,writemem)
+ MDRV_CPU_PROGRAM_MAP(main_map, 0)
MDRV_CPU_VBLANK_INT_HACK(bishi_interrupt, 2)
MDRV_MACHINE_START(bishi)
diff --git a/src/mame/drivers/bladestl.c b/src/mame/drivers/bladestl.c
index cb0adb038fb..07156094efe 100644
--- a/src/mame/drivers/bladestl.c
+++ b/src/mame/drivers/bladestl.c
@@ -104,55 +104,37 @@ static WRITE8_HANDLER( bladestl_speech_ctrl_w ){
upd7759_start_w(0, data & 2);
}
-static ADDRESS_MAP_START( bladestl_readmem, ADDRESS_SPACE_PROGRAM, 8 )
- AM_RANGE(0x0000, 0x1fff) AM_READ(K007342_r) /* Color RAM + Video RAM */
- AM_RANGE(0x2000, 0x21ff) AM_READ(K007420_r) /* Sprite RAM */
- AM_RANGE(0x2200, 0x23ff) AM_READ(K007342_scroll_r) /* Scroll RAM */
- AM_RANGE(0x2400, 0x245f) AM_READ(SMH_RAM) /* Palette */
- AM_RANGE(0x2e01, 0x2e01) AM_READ_PORT("P1") /* 1P controls */
- AM_RANGE(0x2e02, 0x2e02) AM_READ_PORT("P2") /* 2P controls */
- AM_RANGE(0x2e03, 0x2e03) AM_READ_PORT("DSW2") /* DISPW #2 */
- AM_RANGE(0x2e40, 0x2e40) AM_READ_PORT("DSW1") /* DIPSW #1 */
- AM_RANGE(0x2e00, 0x2e00) AM_READ_PORT("COINSW") /* DIPSW #3, coinsw, startsw */
- AM_RANGE(0x2f00, 0x2f03) AM_READ(trackball_r) /* Trackballs */
- AM_RANGE(0x2f80, 0x2f9f) AM_READ(K051733_r) /* Protection: 051733 */
- AM_RANGE(0x4000, 0x5fff) AM_READ(SMH_RAM) /* Work RAM */
- AM_RANGE(0x6000, 0x7fff) AM_READ(SMH_BANK1) /* banked ROM */
- AM_RANGE(0x8000, 0xffff) AM_READ(SMH_ROM) /* ROM */
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( bladestl_writemem, ADDRESS_SPACE_PROGRAM, 8 )
- AM_RANGE(0x0000, 0x1fff) AM_WRITE(K007342_w) /* Color RAM + Video RAM */
- AM_RANGE(0x2000, 0x21ff) AM_WRITE(K007420_w) /* Sprite RAM */
- AM_RANGE(0x2200, 0x23ff) AM_WRITE(K007342_scroll_w) /* Scroll RAM */
- AM_RANGE(0x2400, 0x245f) AM_WRITE(SMH_RAM) AM_BASE(&paletteram)/* palette */
- AM_RANGE(0x2600, 0x2607) AM_WRITE(K007342_vreg_w) /* Video Registers */
- AM_RANGE(0x2e80, 0x2e80) AM_WRITE(bladestl_sh_irqtrigger_w)/* cause interrupt on audio CPU */
+static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
+ AM_RANGE(0x0000, 0x1fff) AM_READWRITE(K007342_r, K007342_w) /* Color RAM + Video RAM */
+ AM_RANGE(0x2000, 0x21ff) AM_READWRITE(K007420_r, K007420_w) /* Sprite RAM */
+ AM_RANGE(0x2200, 0x23ff) AM_READWRITE(K007342_scroll_r, K007342_scroll_w) /* Scroll RAM */
+ AM_RANGE(0x2400, 0x245f) AM_RAM AM_BASE(&paletteram) /* palette */
+ AM_RANGE(0x2600, 0x2607) AM_WRITE(K007342_vreg_w) /* Video Registers */
+ AM_RANGE(0x2e00, 0x2e00) AM_READ_PORT("COINSW") /* DIPSW #3, coinsw, startsw */
+ AM_RANGE(0x2e01, 0x2e01) AM_READ_PORT("P1") /* 1P controls */
+ AM_RANGE(0x2e02, 0x2e02) AM_READ_PORT("P2") /* 2P controls */
+ AM_RANGE(0x2e03, 0x2e03) AM_READ_PORT("DSW2") /* DISPW #2 */
+ AM_RANGE(0x2e40, 0x2e40) AM_READ_PORT("DSW1") /* DIPSW #1 */
+ AM_RANGE(0x2e80, 0x2e80) AM_WRITE(bladestl_sh_irqtrigger_w) /* cause interrupt on audio CPU */
AM_RANGE(0x2ec0, 0x2ec0) AM_WRITE(watchdog_reset_w) /* watchdog reset */
+ AM_RANGE(0x2f00, 0x2f03) AM_READ(trackball_r) /* Trackballs */
AM_RANGE(0x2f40, 0x2f40) AM_WRITE(bladestl_bankswitch_w) /* bankswitch control */
- AM_RANGE(0x2f80, 0x2f9f) AM_WRITE(K051733_w) /* Protection: 051733 */
+ AM_RANGE(0x2f80, 0x2f9f) AM_READWRITE(K051733_r, K051733_w) /* Protection: 051733 */
AM_RANGE(0x2fc0, 0x2fc0) AM_WRITE(SMH_NOP) /* ??? */
- AM_RANGE(0x4000, 0x5fff) AM_WRITE(SMH_RAM) /* Work RAM */
- AM_RANGE(0x6000, 0x7fff) AM_WRITE(SMH_RAM) /* banked ROM */
- AM_RANGE(0x8000, 0xffff) AM_WRITE(SMH_ROM) /* ROM */
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( bladestl_readmem_sound, ADDRESS_SPACE_PROGRAM, 8 )
- AM_RANGE(0x0000, 0x07ff) AM_READ(SMH_RAM) /* RAM */
- AM_RANGE(0x1000, 0x1000) AM_READ(YM2203_status_port_0_r) /* YM2203 */
- AM_RANGE(0x1001, 0x1001) AM_READ(YM2203_read_port_0_r) /* YM2203 */
- AM_RANGE(0x4000, 0x4000) AM_READ(upd7759_0_busy_r) /* UPD7759 */
- AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) /* soundlatch_r */
- AM_RANGE(0x8000, 0xffff) AM_READ(SMH_ROM) /* ROM */
+ AM_RANGE(0x4000, 0x5fff) AM_RAM /* Work RAM */
+ AM_RANGE(0x6000, 0x7fff) AM_READWRITE(SMH_BANK1, SMH_RAM) /* banked ROM */
+ AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bladestl_writemem_sound, ADDRESS_SPACE_PROGRAM, 8 )
- AM_RANGE(0x0000, 0x07ff) AM_WRITE(SMH_RAM) /* RAM */
- AM_RANGE(0x1000, 0x1000) AM_WRITE(YM2203_control_port_0_w)/* YM2203 */
- AM_RANGE(0x1001, 0x1001) AM_WRITE(YM2203_write_port_0_w) /* YM2203 */
+static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 )
+ AM_RANGE(0x0000, 0x07ff) AM_RAM
+ AM_RANGE(0x1000, 0x1000) AM_READWRITE(YM2203_status_port_0_r, YM2203_control_port_0_w) /* YM2203 */
+ AM_RANGE(0x1001, 0x1001) AM_READWRITE(YM2203_read_port_0_r, YM2203_write_port_0_w) /* YM2203 */
AM_RANGE(0x3000, 0x3000) AM_WRITE(bladestl_speech_ctrl_w) /* UPD7759 */
- AM_RANGE(0x5000, 0x5000) AM_WRITE(SMH_NOP) /* ??? */
- AM_RANGE(0x8000, 0xffff) AM_WRITE(SMH_ROM) /* ROM */
+ AM_RANGE(0x4000, 0x4000) AM_READ(upd7759_0_busy_r) /* UPD7759 */
+ AM_RANGE(0x5000, 0x5000) AM_WRITE(SMH_NOP) /* ??? */
+ AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) /* soundlatch_r */
+ AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
/***************************************************************************
@@ -339,11 +321,11 @@ static MACHINE_DRIVER_START( bladestl )
/* basic machine hardware */
MDRV_CPU_ADD("main", HD6309, 24000000/2) /* 24MHz/2 (?) */
- MDRV_CPU_PROGRAM_MAP(bladestl_readmem,bladestl_writemem)
+ MDRV_CPU_PROGRAM_MAP(main_map, 0)
MDRV_CPU_VBLANK_INT_HACK(bladestl_interrupt,2) /* (1 IRQ + 1 NMI) */
MDRV_CPU_ADD("audio", M6809, 2000000)
- MDRV_CPU_PROGRAM_MAP(bladestl_readmem_sound,bladestl_writemem_sound)
+ MDRV_CPU_PROGRAM_MAP(sound_map, 0)
MDRV_INTERLEAVE(10)