diff --git a/src/mame/drivers/fresh.c b/src/mame/drivers/fresh.c index 2c16ebfbc27..90ba01a62db 100644 --- a/src/mame/drivers/fresh.c +++ b/src/mame/drivers/fresh.c @@ -35,8 +35,6 @@ public: m_bg_2_videoram(*this, "bg_videoram_2"), m_attr_videoram(*this, "attr_videoram"), m_attr_2_videoram(*this, "attr_videoram_2"), - m_paletteram_1(*this, "paletteram_1"), - m_paletteram_2(*this, "paletteram_2"), m_maincpu(*this, "maincpu"), m_gfxdecode(*this, "gfxdecode"), m_palette(*this, "palette") { } @@ -49,8 +47,6 @@ public: required_shared_ptr m_attr_videoram; required_shared_ptr m_attr_2_videoram; - required_shared_ptr m_paletteram_1; - required_shared_ptr m_paletteram_2; DECLARE_WRITE16_MEMBER(fresh_bg_videoram_w); DECLARE_WRITE16_MEMBER(fresh_attr_videoram_w); @@ -59,8 +55,6 @@ public: DECLARE_WRITE16_MEMBER(fresh_attr_2_videoram_w); TILE_GET_INFO_MEMBER(get_fresh_bg_2_tile_info); - DECLARE_WRITE16_MEMBER(fresh_paletteram_1_w); - DECLARE_WRITE16_MEMBER(fresh_paletteram_2_w); UINT16 m_d30000_value; @@ -85,7 +79,6 @@ public: { logerror("c76000_write (scroll 3) %04x (m_d30000_value = %04x)\n", data, m_d30000_value); } - void update_palette(int offset); DECLARE_READ16_MEMBER( unk_r ) { @@ -151,27 +144,6 @@ WRITE16_MEMBER(fresh_state::fresh_attr_2_videoram_w) } -void fresh_state::update_palette( int offset ) -{ - UINT16 pal1 = m_paletteram_1[offset]; - UINT8 pal2 = m_paletteram_2[offset]; - - m_palette->set_pen_color(offset,rgb_t(pal1&0xff,(pal1>>8)&0xff,pal2)); -} - -WRITE16_MEMBER(fresh_state::fresh_paletteram_1_w) -{ - COMBINE_DATA(&m_paletteram_1[offset]); - update_palette(offset); -} - -WRITE16_MEMBER(fresh_state::fresh_paletteram_2_w) -{ - COMBINE_DATA(&m_paletteram_2[offset]); - update_palette(offset); -} - - void fresh_state::video_start() @@ -214,8 +186,8 @@ static ADDRESS_MAP_START( fresh_map, AS_PROGRAM, 16, fresh_state ) // written together - AM_RANGE(0xC40000, 0xC417ff) AM_RAM_WRITE(fresh_paletteram_1_w) AM_SHARE( "paletteram_1" ) // 16-bit - AM_RANGE(0xC50000, 0xC517ff) AM_RAM_WRITE(fresh_paletteram_2_w) AM_SHARE( "paletteram_2" ) // 8-bit + AM_RANGE(0xC40000, 0xC417ff) AM_RAM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") + AM_RANGE(0xC50000, 0xC517ff) AM_RAM_DEVWRITE("palette", palette_device, write_ext) AM_SHARE("palette_ext") // AM_RANGE(0xD00000, 0xD00001) AM_RAM // AM_RANGE(0xD10000, 0xD10001) AM_RAM @@ -629,6 +601,8 @@ static MACHINE_CONFIG_START( fresh, fresh_state ) MCFG_SCREEN_UPDATE_DRIVER(fresh_state, screen_update_fresh) MCFG_PALETTE_ADD("palette", 0x1000) // or 0xc00 + MCFG_PALETTE_FORMAT(XBGR) + MCFG_GFXDECODE_ADD("gfxdecode", fresh) /* sound hw? */ diff --git a/src/mame/drivers/lemmings.c b/src/mame/drivers/lemmings.c index 77c511b9838..7e24189d51b 100644 --- a/src/mame/drivers/lemmings.c +++ b/src/mame/drivers/lemmings.c @@ -44,20 +44,7 @@ READ16_MEMBER(lemmings_state::lemmings_trackball_r) -WRITE16_MEMBER(lemmings_state::lemmings_palette_24bit_w) -{ - int r, g, b; - COMBINE_DATA(&m_paletteram[offset]); - if (offset & 1) - offset--; - - b = (m_paletteram[offset] >> 0) & 0xff; - g = (m_paletteram[offset + 1] >> 8) & 0xff; - r = (m_paletteram[offset + 1] >> 0) & 0xff; - - m_palette->set_pen_color(offset / 2, rgb_t(r, g, b)); -} void lemmings_state::lemmings_sound_cb( address_space &space, UINT16 data, UINT16 mem_mask ) { @@ -95,7 +82,7 @@ static ADDRESS_MAP_START( lemmings_map, AS_PROGRAM, 16, lemmings_state ) AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x140000, 0x1407ff) AM_RAM AM_SHARE("spriteram2") - AM_RANGE(0x160000, 0x160fff) AM_RAM_WRITE(lemmings_palette_24bit_w) AM_SHARE("paletteram") + AM_RANGE(0x160000, 0x160fff) AM_RAM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") AM_RANGE(0x170000, 0x17000f) AM_RAM_WRITE(lemmings_control_w) AM_SHARE("control_data") AM_RANGE(0x190000, 0x19000f) AM_READ(lemmings_trackball_r) AM_RANGE(0x1a0000, 0x1a3fff) AM_READWRITE(lem_protection_region_0_146_r,lem_protection_region_0_146_w)AM_SHARE("prot16ram") /* Protection device */ @@ -265,6 +252,7 @@ static MACHINE_CONFIG_START( lemmings, lemmings_state ) MCFG_GFXDECODE_ADD("gfxdecode", lemmings) MCFG_PALETTE_ADD("palette", 1024) + MCFG_PALETTE_FORMAT(XBGR) MCFG_DEVICE_ADD("spritegen", DECO_SPRITE, 0) diff --git a/src/mame/drivers/limenko.c b/src/mame/drivers/limenko.c index 6c527a295ac..bf5f52601a4 100644 --- a/src/mame/drivers/limenko.c +++ b/src/mame/drivers/limenko.c @@ -62,7 +62,6 @@ public: int m_prev_sprites_count; UINT8 m_spotty_sound_cmd; DECLARE_WRITE32_MEMBER(limenko_coincounter_w); - DECLARE_WRITE32_MEMBER(limenko_paletteram_w); DECLARE_WRITE32_MEMBER(bg_videoram_w); DECLARE_WRITE32_MEMBER(md_videoram_w); DECLARE_WRITE32_MEMBER(fg_videoram_w); @@ -109,23 +108,7 @@ WRITE32_MEMBER(limenko_state::limenko_coincounter_w) coin_counter_w(machine(),0,data & 0x10000); } -WRITE32_MEMBER(limenko_state::limenko_paletteram_w) -{ - UINT16 paldata; - COMBINE_DATA(&m_generic_paletteram_32[offset]); - if(ACCESSING_BITS_0_15) - { - paldata = m_generic_paletteram_32[offset] & 0x7fff; - m_palette->set_pen_color(offset * 2 + 1, pal5bit(paldata >> 0), pal5bit(paldata >> 5), pal5bit(paldata >> 10)); - } - - if(ACCESSING_BITS_16_31) - { - paldata = (m_generic_paletteram_32[offset] >> 16) & 0x7fff; - m_palette->set_pen_color(offset * 2 + 0, pal5bit(paldata >> 0), pal5bit(paldata >> 5), pal5bit(paldata >> 10)); - } -} WRITE32_MEMBER(limenko_state::bg_videoram_w) { @@ -234,7 +217,7 @@ static ADDRESS_MAP_START( limenko_map, AS_PROGRAM, 32, limenko_state ) AM_RANGE(0x80010000, 0x80017fff) AM_RAM_WRITE(bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0x80018000, 0x80018fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x80019000, 0x80019fff) AM_RAM AM_SHARE("spriteram2") - AM_RANGE(0x8001c000, 0x8001dfff) AM_RAM_WRITE(limenko_paletteram_w) AM_SHARE("paletteram") + AM_RANGE(0x8001c000, 0x8001dfff) AM_RAM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") AM_RANGE(0x8001e000, 0x8001ebff) AM_RAM // ? not used AM_RANGE(0x8001ffec, 0x8001ffff) AM_RAM AM_SHARE("videoreg") AM_RANGE(0x8003e000, 0x8003e003) AM_WRITE(spriteram_buffer_w) @@ -261,7 +244,7 @@ static ADDRESS_MAP_START( spotty_map, AS_PROGRAM, 32, limenko_state ) AM_RANGE(0x80010000, 0x80017fff) AM_RAM_WRITE(bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0x80018000, 0x80018fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x80019000, 0x80019fff) AM_RAM AM_SHARE("spriteram2") - AM_RANGE(0x8001c000, 0x8001dfff) AM_RAM_WRITE(limenko_paletteram_w) AM_SHARE("paletteram") + AM_RANGE(0x8001c000, 0x8001dfff) AM_RAM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") AM_RANGE(0x8001e000, 0x8001ebff) AM_RAM // ? not used AM_RANGE(0x8001ffec, 0x8001ffff) AM_RAM AM_SHARE("videoreg") AM_RANGE(0x8003e000, 0x8003e003) AM_WRITE(spriteram_buffer_w) @@ -770,7 +753,7 @@ static MACHINE_CONFIG_START( limenko, limenko_state ) MCFG_GFXDECODE_ADD("gfxdecode", limenko) MCFG_PALETTE_ADD("palette", 0x1000) - + MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR) /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") @@ -801,6 +784,7 @@ static MACHINE_CONFIG_START( spotty, limenko_state ) MCFG_GFXDECODE_ADD("gfxdecode", limenko) MCFG_PALETTE_ADD("palette", 0x1000) + MCFG_PALETTE_FORMAT(xBBBBBGGGGGRRRRR) /* sound hardware */ diff --git a/src/mame/includes/lemmings.h b/src/mame/includes/lemmings.h index 04068f1adc2..9b6cd02fb3f 100644 --- a/src/mame/includes/lemmings.h +++ b/src/mame/includes/lemmings.h @@ -12,7 +12,6 @@ public: m_deco146(*this, "ioprot"), m_spriteram(*this, "spriteram"), m_spriteram2(*this, "spriteram2") , - m_paletteram(*this, "paletteram"), m_control_data(*this, "control_data"), m_vram_data(*this, "vram_data"), m_pixel_0_data(*this, "pixel_0_data"), @@ -35,7 +34,6 @@ public: required_device m_spriteram; required_device m_spriteram2; /* memory pointers */ - required_shared_ptr m_paletteram; required_shared_ptr m_control_data; required_shared_ptr m_vram_data; required_shared_ptr m_pixel_0_data; @@ -45,7 +43,6 @@ public: DECLARE_WRITE16_MEMBER(lemmings_control_w); DECLARE_READ16_MEMBER(lemmings_trackball_r); - DECLARE_WRITE16_MEMBER(lemmings_palette_24bit_w); void lemmings_sound_cb( address_space &space, UINT16 data, UINT16 mem_mask ); DECLARE_WRITE8_MEMBER(lemmings_sound_ack_w); DECLARE_WRITE16_MEMBER(lemmings_pixel_0_w);