summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Michaël Banaan Ananas <happppp@users.noreply.github.com>2012-09-14 18:35:25 +0000
committer Michaël Banaan Ananas <happppp@users.noreply.github.com>2012-09-14 18:35:25 +0000
commit5cf91537cd4e0f3680b9bbff35293ff4c21aad0d (patch)
treee336c0cf56d0db370ecc9304962d0f061f25e2a1 /src
parentaed1c5bf74f9c24708d2043f547659d0c4676824 (diff)
fix taitogn shanghss, shangtou lockup at boot
Diffstat (limited to 'src')
-rw-r--r--src/emu/cpu/psx/psx.c4
-rw-r--r--src/mame/drivers/namcos12.c5
2 files changed, 6 insertions, 3 deletions
diff --git a/src/emu/cpu/psx/psx.c b/src/emu/cpu/psx/psx.c
index c6c1f86c009..7684ae6648a 100644
--- a/src/emu/cpu/psx/psx.c
+++ b/src/emu/cpu/psx/psx.c
@@ -1527,7 +1527,7 @@ static ADDRESS_MAP_START( psxcpu_internal_map, AS_PROGRAM, 32, psxcpu_device )
AM_RANGE(0x00800000, 0x1effffff) AM_READWRITE( berr_r, berr_w )
AM_RANGE(0x1f800000, 0x1f8003ff) AM_NOP /* scratchpad */
AM_RANGE(0x1f800400, 0x1f800fff) AM_READWRITE( berr_r, berr_w )
- AM_RANGE(0x1f801004, 0x1f80101f) AM_RAM
+ AM_RANGE(0x1f801000, 0x1f80101f) AM_RAM
/* 1f801014 spu delay */
/* 1f801018 dv delay */
AM_RANGE(0x1f801020, 0x1f801023) AM_READWRITE_LEGACY( psx_com_delay_r, psx_com_delay_w )
@@ -1557,7 +1557,7 @@ static ADDRESS_MAP_START( cxd8661r_internal_map, AS_PROGRAM, 32, psxcpu_device )
AM_RANGE(0x01000000, 0x1effffff) AM_READWRITE( berr_r, berr_w )
AM_RANGE(0x1f800000, 0x1f8003ff) AM_NOP /* scratchpad */
AM_RANGE(0x1f800400, 0x1f800fff) AM_READWRITE( berr_r, berr_w )
- AM_RANGE(0x1f801004, 0x1f80101f) AM_RAM
+ AM_RANGE(0x1f801000, 0x1f80101f) AM_RAM
AM_RANGE(0x1f801020, 0x1f801023) AM_READWRITE_LEGACY( psx_com_delay_r, psx_com_delay_w )
AM_RANGE(0x1f801024, 0x1f80102f) AM_RAM
AM_RANGE(0x1f801040, 0x1f80105f) AM_DEVREADWRITE( "sio", psxsio_device, read, write )
diff --git a/src/mame/drivers/namcos12.c b/src/mame/drivers/namcos12.c
index bc2525fecca..af9c0f3a48f 100644
--- a/src/mame/drivers/namcos12.c
+++ b/src/mame/drivers/namcos12.c
@@ -1259,7 +1259,6 @@ static ADDRESS_MAP_START( namcos12_map, AS_PROGRAM, 32, namcos12_state )
AM_RANGE(0x1f140000, 0x1f140fff) AM_DEVREADWRITE8_LEGACY("at28c16", at28c16_r, at28c16_w, 0x00ff00ff) /* eeprom */
AM_RANGE(0x1f1bff08, 0x1f1bff0f) AM_WRITENOP /* ?? */
AM_RANGE(0x1f700000, 0x1f70ffff) AM_WRITE(dmaoffset_w) /* dma */
- AM_RANGE(0x1f801000, 0x1f801003) AM_WRITE(s12_dma_bias_w)
AM_RANGE(0x1fa00000, 0x1fbfffff) AM_ROMBANK("bank1") /* banked roms */
AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */
AM_RANGE(0x80000000, 0x803fffff) AM_RAM AM_SHARE("share1") /* ram mirror */
@@ -1389,8 +1388,12 @@ MACHINE_RESET_MEMBER(namcos12_state,namcos12)
{
address_space *space = machine().device("maincpu")->memory().space(AS_PROGRAM);
bankoffset_w(*space,0,0,0xffffffff);
+
+ space->install_write_handler(0x1f801000, 0x1f801003, write32_delegate(FUNC(namcos12_state::s12_dma_bias_w),this));
+
m_has_tektagt_dma = 0;
+
if( strcmp( machine().system().name, "tektagt" ) == 0 ||
strcmp( machine().system().name, "tektagtac" ) == 0 ||
strcmp( machine().system().name, "tektagtac1" ) == 0 ||