From c36e210fc325dac5fcadeebc47650c3be6cd0b11 Mon Sep 17 00:00:00 2001 From: Miodrag Milanovic Date: Fri, 28 Feb 2014 14:10:30 +0000 Subject: [PATCH] some more mame fixes (nw) --- src/mame/drivers/amspdwy.c | 2 +- src/mame/drivers/bogeyman.c | 2 +- src/mame/drivers/bottom9.c | 4 ++-- src/mame/drivers/cbasebal.c | 2 +- src/mame/drivers/deco_ld.c | 2 +- src/mame/drivers/flstory.c | 12 ++++++++---- src/mame/includes/flstory.h | 2 ++ src/mame/video/flstory.c | 29 ++++++++++++----------------- 8 files changed, 28 insertions(+), 27 deletions(-) diff --git a/src/mame/drivers/amspdwy.c b/src/mame/drivers/amspdwy.c index 75b3c934f61..26a47f5b50f 100644 --- a/src/mame/drivers/amspdwy.c +++ b/src/mame/drivers/amspdwy.c @@ -73,7 +73,7 @@ WRITE8_MEMBER(amspdwy_state::amspdwy_sound_w) static ADDRESS_MAP_START( amspdwy_map, AS_PROGRAM, 8, amspdwy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM - AM_RANGE(0x8000, 0x801f) AM_WRITE(amspdwy_paletteram_w) AM_SHARE("paletteram")// Palette + AM_RANGE(0x8000, 0x801f) AM_WRITE(amspdwy_paletteram_w) AM_SHARE("palette")// Palette AM_RANGE(0x9000, 0x93ff) AM_MIRROR(0x0400) AM_RAM_WRITE(amspdwy_videoram_w) AM_SHARE("videoram") // Layer, mirrored? AM_RANGE(0x9800, 0x9bff) AM_RAM_WRITE(amspdwy_colorram_w) AM_SHARE("colorram") // Layer AM_RANGE(0x9c00, 0x9fff) AM_RAM // Unused? diff --git a/src/mame/drivers/bogeyman.c b/src/mame/drivers/bogeyman.c index 57ed8dc6bc0..525bc3b94db 100644 --- a/src/mame/drivers/bogeyman.c +++ b/src/mame/drivers/bogeyman.c @@ -51,7 +51,7 @@ static ADDRESS_MAP_START( bogeyman_map, AS_PROGRAM, 8, bogeyman_state ) AM_RANGE(0x2000, 0x20ff) AM_RAM_WRITE(bogeyman_videoram_w) AM_SHARE("videoram") AM_RANGE(0x2100, 0x21ff) AM_RAM_WRITE(bogeyman_colorram_w) AM_SHARE("colorram") AM_RANGE(0x2800, 0x2bff) AM_RAM AM_SHARE("spriteram") - AM_RANGE(0x3000, 0x300f) AM_RAM_WRITE(bogeyman_paletteram_w) AM_SHARE("paletteram") + AM_RANGE(0x3000, 0x300f) AM_RAM_WRITE(bogeyman_paletteram_w) AM_SHARE("palette") AM_RANGE(0x3800, 0x3800) AM_READ_PORT("P1") AM_WRITE(bogeyman_8910_control_w) AM_RANGE(0x3801, 0x3801) AM_READ_PORT("P2") AM_WRITE(bogeyman_8910_latch_w) AM_RANGE(0x3802, 0x3802) AM_READ_PORT("DSW1") diff --git a/src/mame/drivers/bottom9.c b/src/mame/drivers/bottom9.c index f8f63cbb4c4..f35c9aeb4e6 100644 --- a/src/mame/drivers/bottom9.c +++ b/src/mame/drivers/bottom9.c @@ -75,7 +75,7 @@ READ8_MEMBER(bottom9_state::bottom9_bankedram2_r) if (m_k052109_selected) return k052109_051960_r(space, offset + 0x2000); else - return m_generic_paletteram_8[offset]; + return m_palette->basemem().read8(offset); } WRITE8_MEMBER(bottom9_state::bottom9_bankedram2_w) @@ -165,7 +165,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bottom9_state ) AM_RANGE(0x1fd3, 0x1fd3) AM_READ_PORT("DSW1") AM_RANGE(0x1fe0, 0x1fe0) AM_READ_PORT("DSW2") AM_RANGE(0x1ff0, 0x1fff) AM_DEVWRITE("k051316", k051316_device, ctrl_w) - AM_RANGE(0x2000, 0x27ff) AM_READWRITE(bottom9_bankedram2_r, bottom9_bankedram2_w) AM_SHARE("paletteram") + AM_RANGE(0x2000, 0x27ff) AM_READWRITE(bottom9_bankedram2_r, bottom9_bankedram2_w) AM_SHARE("palette") AM_RANGE(0x0000, 0x3fff) AM_READWRITE(k052109_051960_r, k052109_051960_w) AM_RANGE(0x4000, 0x5fff) AM_RAM AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1") diff --git a/src/mame/drivers/cbasebal.c b/src/mame/drivers/cbasebal.c index c59549c0eb1..694352cfa3f 100644 --- a/src/mame/drivers/cbasebal.c +++ b/src/mame/drivers/cbasebal.c @@ -92,7 +92,7 @@ WRITE8_MEMBER(cbasebal_state::cbasebal_coinctrl_w) static ADDRESS_MAP_START( cbasebal_map, AS_PROGRAM, 8, cbasebal_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") - AM_RANGE(0xc000, 0xcfff) AM_READWRITE(bankedram_r, bankedram_w) AM_SHARE("paletteram") /* palette + vram + scrollram */ + AM_RANGE(0xc000, 0xcfff) AM_READWRITE(bankedram_r, bankedram_w) AM_SHARE("palette") /* palette + vram + scrollram */ AM_RANGE(0xe000, 0xfdff) AM_RAM /* work RAM */ AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END diff --git a/src/mame/drivers/deco_ld.c b/src/mame/drivers/deco_ld.c index c4d032a93a8..b091291e7ab 100644 --- a/src/mame/drivers/deco_ld.c +++ b/src/mame/drivers/deco_ld.c @@ -281,7 +281,7 @@ static ADDRESS_MAP_START( rblaster_map, AS_PROGRAM, 8, deco_ld_state ) AM_RANGE(0x1005, 0x1005) AM_READ(sound_status_r) AM_RANGE(0x1006, 0x1006) AM_NOP // 6850 status AM_RANGE(0x1007, 0x1007) AM_READWRITE(laserdisc_r,laserdisc_w) // 6850 data - AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(decold_palette_w) AM_SHARE("paletteram") + AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(decold_palette_w) AM_SHARE("palette") AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x2800, 0x2bff) AM_RAM AM_SHARE("vram0") AM_RANGE(0x2c00, 0x2fff) AM_RAM AM_SHARE("attr0") diff --git a/src/mame/drivers/flstory.c b/src/mame/drivers/flstory.c index 656695d748c..ada25b28742 100644 --- a/src/mame/drivers/flstory.c +++ b/src/mame/drivers/flstory.c @@ -84,7 +84,8 @@ static ADDRESS_MAP_START( flstory_map, AS_PROGRAM, 8, flstory_state ) AM_RANGE(0xdc00, 0xdc9f) AM_RAM AM_SHARE("spriteram") AM_RANGE(0xdca0, 0xdcbf) AM_RAM_WRITE(flstory_scrlram_w) AM_SHARE("scrlram") AM_RANGE(0xdcc0, 0xdcff) AM_RAM /* unknown */ - AM_RANGE(0xdd00, 0xdeff) AM_READWRITE(flstory_palette_r, flstory_palette_w) + AM_RANGE(0xdd00, 0xddff) AM_READWRITE(flstory_palette_r, flstory_palette_w) AM_SHARE("palette") + AM_RANGE(0xde00, 0xdeff) AM_READWRITE(flstory_palette_ext_r, flstory_palette_ext_w) AM_SHARE("palette_ext") AM_RANGE(0xdf03, 0xdf03) AM_WRITE(flstory_gfxctrl_w) AM_RANGE(0xe000, 0xe7ff) AM_RAM /* work RAM */ ADDRESS_MAP_END @@ -110,7 +111,8 @@ static ADDRESS_MAP_START( onna34ro_map, AS_PROGRAM, 8, flstory_state ) AM_RANGE(0xdc00, 0xdc9f) AM_RAM AM_SHARE("spriteram") AM_RANGE(0xdca0, 0xdcbf) AM_RAM_WRITE(flstory_scrlram_w) AM_SHARE("scrlram") AM_RANGE(0xdcc0, 0xdcff) AM_RAM /* unknown */ - AM_RANGE(0xdd00, 0xdeff) AM_READWRITE(flstory_palette_r, flstory_palette_w) + AM_RANGE(0xdd00, 0xddff) AM_READWRITE(flstory_palette_r, flstory_palette_w) AM_SHARE("palette") + AM_RANGE(0xde00, 0xdeff) AM_READWRITE(flstory_palette_ext_r, flstory_palette_ext_w) AM_SHARE("palette_ext") AM_RANGE(0xdf03, 0xdf03) AM_WRITE(flstory_gfxctrl_w) AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("workram") /* work RAM */ ADDRESS_MAP_END @@ -145,7 +147,8 @@ static ADDRESS_MAP_START( victnine_map, AS_PROGRAM, 8, flstory_state ) AM_RANGE(0xdca0, 0xdcbf) AM_RAM_WRITE(flstory_scrlram_w) AM_SHARE("scrlram") AM_RANGE(0xdce0, 0xdce0) AM_READWRITE(victnine_gfxctrl_r, victnine_gfxctrl_w) AM_RANGE(0xdce1, 0xdce1) AM_WRITENOP /* unknown */ - AM_RANGE(0xdd00, 0xdeff) AM_READWRITE(flstory_palette_r, flstory_palette_w) + AM_RANGE(0xdd00, 0xddff) AM_READWRITE(flstory_palette_r, flstory_palette_w) AM_SHARE("palette") + AM_RANGE(0xde00, 0xdeff) AM_READWRITE(flstory_palette_ext_r, flstory_palette_ext_w) AM_SHARE("palette_ext") AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("workram") /* work RAM */ ADDRESS_MAP_END @@ -352,7 +355,8 @@ static ADDRESS_MAP_START( rumba_map, AS_PROGRAM, 8, flstory_state ) AM_RANGE(0xdca0, 0xdcbf) AM_RAM_WRITE(flstory_scrlram_w) AM_SHARE("scrlram") AM_RANGE(0xdce0, 0xdce0) AM_READWRITE(victnine_gfxctrl_r, victnine_gfxctrl_w) // AM_RANGE(0xdce1, 0xdce1) AM_WRITENOP /* unknown */ - AM_RANGE(0xdd00, 0xdeff) AM_READWRITE(flstory_palette_r, flstory_palette_w) + AM_RANGE(0xdd00, 0xddff) AM_READWRITE(flstory_palette_r, flstory_palette_w) AM_SHARE("palette") + AM_RANGE(0xde00, 0xdeff) AM_READWRITE(flstory_palette_ext_r, flstory_palette_ext_w) AM_SHARE("palette_ext") AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("workram") /* work RAM */ ADDRESS_MAP_END diff --git a/src/mame/includes/flstory.h b/src/mame/includes/flstory.h index 42aa8bcc9cb..1bc90b1620b 100644 --- a/src/mame/includes/flstory.h +++ b/src/mame/includes/flstory.h @@ -103,6 +103,8 @@ public: DECLARE_WRITE8_MEMBER(flstory_videoram_w); DECLARE_WRITE8_MEMBER(flstory_palette_w); DECLARE_READ8_MEMBER(flstory_palette_r); + DECLARE_WRITE8_MEMBER(flstory_palette_ext_w); + DECLARE_READ8_MEMBER(flstory_palette_ext_r); DECLARE_WRITE8_MEMBER(flstory_gfxctrl_w); DECLARE_READ8_MEMBER(victnine_gfxctrl_r); DECLARE_WRITE8_MEMBER(victnine_gfxctrl_w); diff --git a/src/mame/video/flstory.c b/src/mame/video/flstory.c index 6c7993839a6..ad4f9a75dd4 100644 --- a/src/mame/video/flstory.c +++ b/src/mame/video/flstory.c @@ -61,9 +61,6 @@ VIDEO_START_MEMBER(flstory_state,flstory) m_bg_tilemap->set_transmask(0, 0x3fff, 0xc000); /* split type 0 has pens 0-13 transparent in front half */ m_bg_tilemap->set_transmask(1, 0x8000, 0x7fff); /* split type 1 has pen 15 transparent in front half */ m_bg_tilemap->set_scroll_cols(32); - - m_generic_paletteram_8.allocate(0x200); - m_generic_paletteram2_8.allocate(0x200); } VIDEO_START_MEMBER(flstory_state,rumba) @@ -73,18 +70,12 @@ VIDEO_START_MEMBER(flstory_state,rumba) m_bg_tilemap->set_transmask(0, 0x3fff, 0xc000); /* split type 0 has pens 0-13 transparent in front half */ m_bg_tilemap->set_transmask(1, 0x8000, 0x7fff); /* split type 1 has pen 15 transparent in front half */ m_bg_tilemap->set_scroll_cols(32); - - m_generic_paletteram_8.allocate(0x200); - m_generic_paletteram2_8.allocate(0x200); } VIDEO_START_MEMBER(flstory_state,victnine) { m_bg_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(flstory_state::victnine_get_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 32); m_bg_tilemap->set_scroll_cols(32); - - m_generic_paletteram_8.allocate(0x200); - m_generic_paletteram2_8.allocate(0x200); } WRITE8_MEMBER(flstory_state::flstory_videoram_w) @@ -95,18 +86,22 @@ WRITE8_MEMBER(flstory_state::flstory_videoram_w) WRITE8_MEMBER(flstory_state::flstory_palette_w) { - if (offset & 0x100) - m_palette->write(space, (offset & 0xff) + (m_palette_bank << 8),data); - else - m_palette->write(space, (offset & 0xff) + (m_palette_bank << 8),data); + m_palette->write(space, (offset & 0xff) + (m_palette_bank << 8),data); } READ8_MEMBER(flstory_state::flstory_palette_r) { - if (offset & 0x100) - return m_generic_paletteram2_8[ (offset & 0xff) + (m_palette_bank << 8) ]; - else - return m_generic_paletteram_8 [ (offset & 0xff) + (m_palette_bank << 8) ]; + return m_palette->basemem().read8((offset & 0xff) + (m_palette_bank << 8)); +} + +WRITE8_MEMBER(flstory_state::flstory_palette_ext_w) +{ + m_palette->write_ext(space, (offset & 0xff) + (m_palette_bank << 8),data); +} + +READ8_MEMBER(flstory_state::flstory_palette_ext_r) +{ + return m_palette->extmem().read8((offset & 0xff) + (m_palette_bank << 8)); } WRITE8_MEMBER(flstory_state::flstory_gfxctrl_w)