From 99e6e4b67919bbb449ec259b4955d5c862216d97 Mon Sep 17 00:00:00 2001 From: Olivier Galibert Date: Sat, 7 Nov 2020 21:52:15 +0100 Subject: Post b8c33885 fixes: hyperduel, indigo, and all pic16c5x games --- src/devices/cpu/pic16c5x/pic16c5x.cpp | 7 ++----- src/mame/drivers/hyprduel.cpp | 10 ++++++---- src/mame/drivers/indigo.cpp | 4 ++-- 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/devices/cpu/pic16c5x/pic16c5x.cpp b/src/devices/cpu/pic16c5x/pic16c5x.cpp index 1871bc260bd..c0aeeab5d8f 100644 --- a/src/devices/cpu/pic16c5x/pic16c5x.cpp +++ b/src/devices/cpu/pic16c5x/pic16c5x.cpp @@ -98,9 +98,7 @@ void pic16c5x_device::rom_9(address_map &map) void pic16c5x_device::ram_5(address_map &map) { - map(0x00, 0x07).ram(); - map(0x08, 0x0f).ram(); - map(0x10, 0x1f).ram(); + map(0x00, 0x1f).ram(); } void pic16c5x_device::rom_10(address_map &map) @@ -115,8 +113,7 @@ void pic16c5x_device::rom_11(address_map &map) void pic16c5x_device::ram_7(address_map &map) { - map(0x00, 0x07).ram().mirror(0x60); - map(0x08, 0x0f).ram().mirror(0x60); + map(0x00, 0x0f).ram().mirror(0x60); map(0x10, 0x1f).ram(); map(0x30, 0x3f).ram(); map(0x50, 0x5f).ram(); diff --git a/src/mame/drivers/hyprduel.cpp b/src/mame/drivers/hyprduel.cpp index 9bec2908290..8a0ec1f7ba5 100644 --- a/src/mame/drivers/hyprduel.cpp +++ b/src/mame/drivers/hyprduel.cpp @@ -275,8 +275,9 @@ void hyprduel_state::hyprduel_map(address_map &map) void hyprduel_state::hyprduel_map2(address_map &map) { - map(0x000000, 0x003fff).ram().share("sharedram1"); /* shadow ($c00000 - $c03fff : vector) */ - map(0x004000, 0x007fff).readonly().nopw().share("sharedram3"); /* shadow ($fe4000 - $fe7fff : read only) */ + map(0x000000, 0x007fff).ram().share("sharedram1"); /* shadow ($c00000 - $c03fff : vector) */ + map(0x004000, 0x01ffff).readonly().nopw().share("sharedram3"); /* shadow ($fe4000 - $fe7fff : read only) */ + map(0x008000, 0x01ffff).unmaprw(); map(0x400000, 0x400003).rw("ymsnd", FUNC(ym2151_device::read), FUNC(ym2151_device::write)).umask16(0x00ff); map(0x400005, 0x400005).rw("oki", FUNC(okim6295_device::read), FUNC(okim6295_device::write)); map(0x800000, 0x800001).noprw(); @@ -306,8 +307,9 @@ void hyprduel_state::magerror_map(address_map &map) void hyprduel_state::magerror_map2(address_map &map) { - map(0x000000, 0x003fff).ram().share("sharedram1"); /* shadow ($c00000 - $c03fff : vector) */ - map(0x004000, 0x007fff).readonly().nopw().share("sharedram3"); /* shadow ($fe4000 - $fe7fff : read only) */ + map(0x000000, 0x01ffff).ram().share("sharedram1"); /* shadow ($c00000 - $c03fff : vector) */ + map(0x004000, 0x01ffff).readonly().nopw().share("sharedram3"); /* shadow ($fe4000 - $fe7fff : read only) */ + map(0x008000, 0x01ffff).unmaprw(); map(0x400000, 0x400003).noprw(); map(0x800000, 0x800003).nopr().w("ymsnd", FUNC(ym2413_device::write)).umask16(0x00ff); map(0x800005, 0x800005).rw("oki", FUNC(okim6295_device::read), FUNC(okim6295_device::write)); diff --git a/src/mame/drivers/indigo.cpp b/src/mame/drivers/indigo.cpp index dae3a45f077..b2553e33f7d 100644 --- a/src/mame/drivers/indigo.cpp +++ b/src/mame/drivers/indigo.cpp @@ -183,10 +183,10 @@ void indigo4k_state::mem_map(address_map &map) { indigo_map(map); map(0x00000000, 0x0007ffff).bankrw("bank1"); - map(0x08000000, 0x17ffffff).ram().share("share1").w(FUNC(indigo4k_state::write_ram)); /* 128 MB of main RAM */ + map(0x08000000, 0x17ffffff).ram().share("share1").w(FUNC(indigo4k_state::write_ram)); /* 256 MB of main RAM */ map(0x1fa00000, 0x1fa1ffff).rw(m_mem_ctrl, FUNC(sgi_mc_device::read), FUNC(sgi_mc_device::write)); map(0x1fc00000, 0x1fc7ffff).rom().region("user1", 0); - map(0x20000000, 0x27ffffff).ram().share("share1").w(FUNC(indigo4k_state::write_ram)); /* 128 MB of main RAM */ + map(0x20000000, 0x2fffffff).ram().share("share1").w(FUNC(indigo4k_state::write_ram)); /* 256 MB of main RAM */ } static INPUT_PORTS_START(indigo) -- cgit v1.2.3