summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Angelo Salese <angelosa@users.noreply.github.com>2009-04-25 19:11:25 +0000
committer Angelo Salese <angelosa@users.noreply.github.com>2009-04-25 19:11:25 +0000
commit995bbc219155de90979edb2bf6c026f6761d01d6 (patch)
treed231f7d2708cf62a2abbcf774d4337754635ba4f /src
parentef93bcecba8a1244d0454f23ee3ca6d3a0b3a317 (diff)
Merged memory map in sshangha.c
Diffstat (limited to 'src')
-rw-r--r--src/mame/drivers/sshangha.c63
1 files changed, 24 insertions, 39 deletions
diff --git a/src/mame/drivers/sshangha.c b/src/mame/drivers/sshangha.c
index 7ed01e99744..342c4ca682b 100644
--- a/src/mame/drivers/sshangha.c
+++ b/src/mame/drivers/sshangha.c
@@ -149,58 +149,43 @@ static MACHINE_RESET( sshangha )
/******************************************************************************/
-static ADDRESS_MAP_START( sshangha_readmem, ADDRESS_SPACE_PROGRAM, 16 )
- AM_RANGE(0x000000, 0x03ffff) AM_READ(SMH_ROM)
-
+static ADDRESS_MAP_START( sshangha_map, ADDRESS_SPACE_PROGRAM, 16 )
+ AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x084000, 0x0847ff) AM_READ(sshanghb_protection16_r)
- AM_RANGE(0x101000, 0x101001) AM_READ(deco_71_r)//bootleg hack
-
- AM_RANGE(0x200000, 0x207fff) AM_READ(SMH_RAM)
- AM_RANGE(0x340000, 0x340fff) AM_READ(SMH_RAM)
- AM_RANGE(0x350000, 0x350001) AM_READ(deco_71_r)
- AM_RANGE(0x360000, 0x360fff) AM_READ(SMH_RAM)
- AM_RANGE(0x370000, 0x370001) AM_READ(deco_71_r)
- AM_RANGE(0x380000, 0x383fff) AM_READ(SMH_RAM)
- AM_RANGE(0xfec000, 0xff3fff) AM_READ(SMH_RAM)
- AM_RANGE(0xff4000, 0xff47ff) AM_READ(sshangha_protection16_r)
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( sshangha_writemem, ADDRESS_SPACE_PROGRAM, 16 )
- AM_RANGE(0x000000, 0x03ffff) AM_WRITE(SMH_ROM)
AM_RANGE(0x10000c, 0x10000d) AM_WRITE(sshangha_sound_w)
+ AM_RANGE(0x101000, 0x101001) AM_READ(deco_71_r)//bootleg hack
AM_RANGE(0x10100c, 0x10100d) AM_WRITE(sshangha_sound_w) /* the bootleg writes here */
- AM_RANGE(0x200000, 0x201fff) AM_WRITE(sshangha_pf1_data_w) AM_BASE(&sshangha_pf1_data)
- AM_RANGE(0x202000, 0x203fff) AM_WRITE(sshangha_pf2_data_w) AM_BASE(&sshangha_pf2_data)
- AM_RANGE(0x204000, 0x2047ff) AM_WRITE(SMH_RAM) AM_BASE(&sshangha_pf1_rowscroll)
- AM_RANGE(0x206000, 0x2067ff) AM_WRITE(SMH_RAM) AM_BASE(&sshangha_pf2_rowscroll)
+
+ AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(sshangha_pf1_data_w) AM_BASE(&sshangha_pf1_data)
+ AM_RANGE(0x202000, 0x203fff) AM_RAM_WRITE(sshangha_pf2_data_w) AM_BASE(&sshangha_pf2_data)
+ AM_RANGE(0x204000, 0x2047ff) AM_RAM AM_BASE(&sshangha_pf1_rowscroll)
+ AM_RANGE(0x206000, 0x2067ff) AM_RAM AM_BASE(&sshangha_pf2_rowscroll)
+ AM_RANGE(0x206800, 0x207fff) AM_RAM
AM_RANGE(0x300000, 0x30000f) AM_WRITE(sshangha_control_0_w)
AM_RANGE(0x320000, 0x320001) AM_WRITE(sshangha_video_w)
AM_RANGE(0x320002, 0x320005) AM_WRITENOP
- AM_RANGE(0x340000, 0x340fff) AM_WRITE(SMH_RAM) AM_BASE(&spriteram16)
+
+ AM_RANGE(0x340000, 0x340fff) AM_RAM AM_BASE(&spriteram16)
+ AM_RANGE(0x350000, 0x350001) AM_READ(deco_71_r)
AM_RANGE(0x350000, 0x350007) AM_WRITENOP
- AM_RANGE(0x360000, 0x360fff) AM_WRITE(SMH_RAM) AM_BASE(&spriteram16_2)
+ AM_RANGE(0x360000, 0x360fff) AM_RAM AM_BASE(&spriteram16_2)
+ AM_RANGE(0x370000, 0x370001) AM_READ(deco_71_r)
AM_RANGE(0x370000, 0x370007) AM_WRITENOP
- AM_RANGE(0x380000, 0x383fff) AM_WRITE(sshangha_palette_24bit_w) AM_BASE(&paletteram16)
- AM_RANGE(0x3c0000, 0x3c0fff) AM_WRITE(SMH_RAM) /* Sprite ram buffer on bootleg only?? */
- AM_RANGE(0xfec000, 0xff3fff) AM_WRITE(SMH_RAM)
- AM_RANGE(0xff4000, 0xff47ff) AM_WRITE(sshangha_protection16_w) AM_BASE(&sshangha_prot_data)
+ AM_RANGE(0x380000, 0x383fff) AM_RAM_WRITE(sshangha_palette_24bit_w) AM_BASE(&paletteram16)
+ AM_RANGE(0x3c0000, 0x3c0fff) AM_RAM /* Sprite ram buffer on bootleg only?? */
+ AM_RANGE(0xfec000, 0xff3fff) AM_RAM
+ AM_RANGE(0xff4000, 0xff47ff) AM_READWRITE(sshangha_protection16_r,sshangha_protection16_w) AM_BASE(&sshangha_prot_data)
ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_readmem, ADDRESS_SPACE_PROGRAM, 8 )
- AM_RANGE(0x0000, 0x7fff) AM_READ(SMH_ROM)
- AM_RANGE(0xc000, 0xc001) AM_DEVREAD("ym", ym2203_r)
- AM_RANGE(0xf800, 0xffff) AM_READ(SMH_RAM)
+static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 )
+ AM_RANGE(0x0000, 0x7fff) AM_ROM
+ AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ym", ym2203_r,ym2203_w)
+ AM_RANGE(0xf800, 0xffff) AM_RAM
// AM_RANGE(0xf800, 0xf800) AM_READ(soundlatch_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_writemem, ADDRESS_SPACE_PROGRAM, 8 )
- AM_RANGE(0x0000, 0x7fff) AM_WRITE(SMH_ROM)
- AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("ym", ym2203_w)
- AM_RANGE(0xf800, 0xffff) AM_WRITE(SMH_RAM)
-ADDRESS_MAP_END
-
/******************************************************************************/
static INPUT_PORTS_START( sshangha )
@@ -342,11 +327,11 @@ static MACHINE_DRIVER_START( sshangha )
/* basic machine hardware */
MDRV_CPU_ADD("maincpu", M68000, 28000000/2)
- MDRV_CPU_PROGRAM_MAP(sshangha_readmem,sshangha_writemem)
+ MDRV_CPU_PROGRAM_MAP(sshangha_map,0)
MDRV_CPU_VBLANK_INT("screen", irq6_line_hold)
MDRV_CPU_ADD("audiocpu", Z80, 16000000/4)
- MDRV_CPU_PROGRAM_MAP(sound_readmem,sound_writemem)
+ MDRV_CPU_PROGRAM_MAP(sound_map,0)
MDRV_MACHINE_RESET(sshangha) /* init machine */