diff options
Diffstat (limited to 'src/mame/drivers/ngen.cpp')
-rw-r--r-- | src/mame/drivers/ngen.cpp | 51 |
1 files changed, 27 insertions, 24 deletions
diff --git a/src/mame/drivers/ngen.cpp b/src/mame/drivers/ngen.cpp index e07a7f27967..766e49e98c8 100644 --- a/src/mame/drivers/ngen.cpp +++ b/src/mame/drivers/ngen.cpp @@ -884,31 +884,34 @@ void ngen_state::ngen_io(address_map &map) } -ADDRESS_MAP_START(ngen_state::ngen386_mem) - AM_RANGE(0x00000000, 0x000f7fff) AM_RAM - AM_RANGE(0x000f8000, 0x000f9fff) AM_RAM AM_SHARE("vram") - AM_RANGE(0x000fa000, 0x000fbfff) AM_RAM AM_SHARE("fontram") - AM_RANGE(0x000fc000, 0x000fcfff) AM_RAM - AM_RANGE(0x000fe000, 0x000fffff) AM_ROM AM_REGION("bios",0) - AM_RANGE(0x00100000, 0x00ffffff) AM_RAM // some extra RAM - AM_RANGE(0xffffe000, 0xffffffff) AM_ROM AM_REGION("bios",0) -ADDRESS_MAP_END - -ADDRESS_MAP_START(ngen_state::ngen386i_mem) - AM_RANGE(0x00000000, 0x000f7fff) AM_RAM - AM_RANGE(0x000f8000, 0x000f9fff) AM_RAM AM_SHARE("vram") - AM_RANGE(0x000fa000, 0x000fbfff) AM_RAM AM_SHARE("fontram") - AM_RANGE(0x000fc000, 0x000fffff) AM_ROM AM_REGION("bios",0) - AM_RANGE(0x00100000, 0x00ffffff) AM_RAM // some extra RAM - AM_RANGE(0xffffc000, 0xffffffff) AM_ROM AM_REGION("bios",0) -ADDRESS_MAP_END - -ADDRESS_MAP_START(ngen_state::ngen386_io) - AM_RANGE(0x0000, 0x0003) AM_READWRITE16(xbus_r, xbus_w, 0x0000ffff) +void ngen_state::ngen386_mem(address_map &map) +{ + map(0x00000000, 0x000f7fff).ram(); + map(0x000f8000, 0x000f9fff).ram().share("vram"); + map(0x000fa000, 0x000fbfff).ram().share("fontram"); + map(0x000fc000, 0x000fcfff).ram(); + map(0x000fe000, 0x000fffff).rom().region("bios", 0); + map(0x00100000, 0x00ffffff).ram(); // some extra RAM + map(0xffffe000, 0xffffffff).rom().region("bios", 0); +} + +void ngen_state::ngen386i_mem(address_map &map) +{ + map(0x00000000, 0x000f7fff).ram(); + map(0x000f8000, 0x000f9fff).ram().share("vram"); + map(0x000fa000, 0x000fbfff).ram().share("fontram"); + map(0x000fc000, 0x000fffff).rom().region("bios", 0); + map(0x00100000, 0x00ffffff).ram(); // some extra RAM + map(0xffffc000, 0xffffffff).rom().region("bios", 0); +} + +void ngen_state::ngen386_io(address_map &map) +{ + map(0x0000, 0x0001).rw(this, FUNC(ngen_state::xbus_r), FUNC(ngen_state::xbus_w)); // AM_RANGE(0xf800, 0xfeff) AM_READWRITE16(peripheral_r, peripheral_w,0xffffffff) - AM_RANGE(0xfd08, 0xfd0b) AM_READWRITE16(b38_crtc_r, b38_crtc_w,0xffffffff) - AM_RANGE(0xfd0c, 0xfd0f) AM_READWRITE16(b38_keyboard_r, b38_keyboard_w,0xffffffff) -ADDRESS_MAP_END + map(0xfd08, 0xfd0b).rw(this, FUNC(ngen_state::b38_crtc_r), FUNC(ngen_state::b38_crtc_w)); + map(0xfd0c, 0xfd0f).rw(this, FUNC(ngen_state::b38_keyboard_r), FUNC(ngen_state::b38_keyboard_w)); +} static INPUT_PORTS_START( ngen ) INPUT_PORTS_END |