summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/igs011.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/igs011.cpp')
-rw-r--r--src/mame/drivers/igs011.cpp21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/mame/drivers/igs011.cpp b/src/mame/drivers/igs011.cpp
index 84d0a9ff44f..3ba75ffac14 100644
--- a/src/mame/drivers/igs011.cpp
+++ b/src/mame/drivers/igs011.cpp
@@ -2589,6 +2589,8 @@ static ADDRESS_MAP_START( drgnwrld, AS_PROGRAM, 16, igs011_state )
ADDRESS_MAP_END
static ADDRESS_MAP_START( drgnwrld_igs012, AS_PROGRAM, 16, igs011_state )
+ AM_IMPORT_FROM(drgnwrld)
+
// IGS012
AM_RANGE( 0x001600, 0x00160f ) AM_WRITE(igs012_prot_swap_w ) AM_MIRROR(0x01c000) // swap (a5 / 55)
AM_RANGE( 0x001610, 0x00161f ) AM_READ(igs012_prot_r ) AM_MIRROR(0x01c000) // read (mode 0)
@@ -2606,8 +2608,6 @@ static ADDRESS_MAP_START( drgnwrld_igs012, AS_PROGRAM, 16, igs011_state )
AM_RANGE( 0x902000, 0x902fff ) AM_WRITE(igs012_prot_reset_w ) // reset?
// AM_RANGE( 0x902000, 0x902005 ) AM_WRITE(igs012_prot_fake_r )
-
- AM_IMPORT_FROM(drgnwrld)
ADDRESS_MAP_END
@@ -2632,6 +2632,8 @@ WRITE16_MEMBER(igs011_state::lhb_okibank_w)
}
static ADDRESS_MAP_START( lhb, AS_PROGRAM, 16, igs011_state )
+ AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
+
// lhb: IGS011 protection dynamically mapped at 834x
// AM_RANGE( 0x008340, 0x008347 ) AM_WRITE(igs011_prot1_w )
// AM_RANGE( 0x008348, 0x008349 ) AM_READ ( igs011_prot1_r )
@@ -2643,7 +2645,6 @@ static ADDRESS_MAP_START( lhb, AS_PROGRAM, 16, igs011_state )
AM_RANGE( 0x010600, 0x0107ff ) AM_READ(lhb_igs011_prot2_r )
// no reset
- AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
AM_RANGE( 0x100000, 0x103fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x200000, 0x200fff ) AM_RAM AM_SHARE("priority_ram")
AM_RANGE( 0x300000, 0x3fffff ) AM_READWRITE(igs011_layers_r, igs011_layers_w )
@@ -2672,6 +2673,8 @@ static ADDRESS_MAP_START( lhb, AS_PROGRAM, 16, igs011_state )
ADDRESS_MAP_END
static ADDRESS_MAP_START( xymg, AS_PROGRAM, 16, igs011_state )
+ AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
+
// xymg: IGS011 protection dynamically mapped at 834x
// AM_RANGE( 0x008340, 0x008347 ) AM_WRITE(igs011_prot1_w )
// AM_RANGE( 0x008348, 0x008349 ) AM_READ ( igs011_prot1_r )
@@ -2683,7 +2686,6 @@ static ADDRESS_MAP_START( xymg, AS_PROGRAM, 16, igs011_state )
AM_RANGE( 0x010600, 0x0107ff ) AM_READ(lhb_igs011_prot2_r ) // read
// no reset
- AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
AM_RANGE( 0x100000, 0x103fff ) AM_RAM
AM_RANGE( 0x1f0000, 0x1f3fff ) AM_RAM AM_SHARE("nvram") // extra ram
AM_RANGE( 0x200000, 0x200fff ) AM_RAM AM_SHARE("priority_ram")
@@ -2750,6 +2752,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( lhb2, AS_PROGRAM, 16, igs011_state )
+ AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
+
// lhb2: IGS011 protection dynamically mapped at 1ff8x
// AM_RANGE( 0x01ff80, 0x01ff87 ) AM_WRITE(igs011_prot1_w )
// AM_RANGE( 0x01ff88, 0x01ff89 ) AM_READ ( igs011_prot1_r )
@@ -2759,7 +2763,6 @@ static ADDRESS_MAP_START( lhb2, AS_PROGRAM, 16, igs011_state )
AM_RANGE( 0x020400, 0x0205ff ) AM_READ(lhb2_igs011_prot2_r ) // read
AM_RANGE( 0x020600, 0x0207ff ) AM_WRITE(igs011_prot2_reset_w ) // reset (55)
- AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
AM_RANGE( 0x100000, 0x103fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x200000, 0x200001 ) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff )
AM_RANGE( 0x204000, 0x204003 ) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff)
@@ -2790,6 +2793,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( nkishusp, AS_PROGRAM, 16, igs011_state )
+ AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
+
// nkishusp: IGS011 protection dynamically mapped at 1ff8x
// AM_RANGE( 0x01ff80, 0x01ff87 ) AM_WRITE(igs011_prot1_w )
// AM_RANGE( 0x01ff88, 0x01ff89 ) AM_READ ( igs011_prot1_r )
@@ -2800,7 +2805,6 @@ static ADDRESS_MAP_START( nkishusp, AS_PROGRAM, 16, igs011_state )
AM_RANGE( 0x023400, 0x0235ff ) AM_READ(lhb2_igs011_prot2_r ) // read
AM_RANGE( 0x023600, 0x0237ff ) AM_WRITE(igs011_prot2_reset_w ) // reset (55)
- AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
AM_RANGE( 0x100000, 0x103fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x200000, 0x200001 ) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff )
AM_RANGE( 0x204000, 0x204003 ) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff)
@@ -2893,6 +2897,8 @@ WRITE16_MEMBER(igs011_state::vbowl_link_2_w){ }
WRITE16_MEMBER(igs011_state::vbowl_link_3_w){ }
static ADDRESS_MAP_START( vbowl, AS_PROGRAM, 16, igs011_state )
+ AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
+
// vbowl: IGS011 protection dynamically mapped at 834x
// AM_RANGE( 0x008340, 0x008347 ) AM_WRITE(igs011_prot1_w )
// AM_RANGE( 0x008348, 0x008349 ) AM_READ(igs011_prot1_r )
@@ -2920,7 +2926,6 @@ static ADDRESS_MAP_START( vbowl, AS_PROGRAM, 16, igs011_state )
AM_RANGE( 0x902000, 0x902fff ) AM_WRITE(igs012_prot_reset_w ) // reset?
// AM_RANGE( 0x902000, 0x902005 ) AM_WRITE(igs012_prot_fake_r )
- AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
AM_RANGE( 0x100000, 0x103fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x200000, 0x200fff ) AM_RAM AM_SHARE("priority_ram")
AM_RANGE( 0x300000, 0x3fffff ) AM_READWRITE(igs011_layers_r, igs011_layers_w )
@@ -2962,9 +2967,9 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( vbowlhk, AS_PROGRAM, 16, igs011_state )
+ AM_IMPORT_FROM(vbowl)
AM_RANGE( 0x800000, 0x800003 ) AM_WRITE(vbowlhk_igs003_w )
AM_RANGE( 0x50f600, 0x50f7ff ) AM_READ(vbowlhk_igs011_prot2_r ) // read
- AM_IMPORT_FROM(vbowl)
ADDRESS_MAP_END