diff --git a/src/mame/drivers/mcr68.c b/src/mame/drivers/mcr68.c index b83fd31409e..1736a5fb1f5 100644 --- a/src/mame/drivers/mcr68.c +++ b/src/mame/drivers/mcr68.c @@ -308,7 +308,7 @@ static ADDRESS_MAP_START( mcr68_map, AS_PROGRAM, 16, mcr68_state ) AM_RANGE(0x070000, 0x070fff) AM_RAM_WRITE(mcr68_videoram_w) AM_SHARE("videoram") AM_RANGE(0x071000, 0x071fff) AM_RAM AM_RANGE(0x080000, 0x080fff) AM_RAM AM_SHARE("spriteram") - AM_RANGE(0x090000, 0x09007f) AM_WRITE(mcr68_paletteram_w) AM_SHARE("paletteram") + AM_RANGE(0x090000, 0x09007f) AM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") AM_RANGE(0x0a0000, 0x0a000f) AM_READWRITE(mcr68_6840_upper_r, mcr68_6840_upper_w) AM_RANGE(0x0b0000, 0x0bffff) AM_WRITE(watchdog_reset16_w) AM_RANGE(0x0d0000, 0x0dffff) AM_READ_PORT("IN0") @@ -334,7 +334,7 @@ static ADDRESS_MAP_START( zwackery_map, AS_PROGRAM, 16, mcr68_state ) AM_RANGE(0x108000, 0x108007) AM_DEVREADWRITE8("pia1", pia6821_device, read, write, 0x00ff) AM_RANGE(0x10c000, 0x10c007) AM_DEVREADWRITE8("pia2", pia6821_device, read, write, 0x00ff) AM_RANGE(0x800000, 0x800fff) AM_RAM_WRITE(zwackery_videoram_w) AM_SHARE("videoram") - AM_RANGE(0x802000, 0x803fff) AM_RAM_WRITE(zwackery_paletteram_w) AM_SHARE("paletteram") + AM_RANGE(0x802000, 0x803fff) AM_RAM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") AM_RANGE(0xc00000, 0xc00fff) AM_RAM_WRITE(zwackery_spriteram_w) AM_SHARE("spriteram") ADDRESS_MAP_END @@ -352,7 +352,7 @@ static ADDRESS_MAP_START( pigskin_map, AS_PROGRAM, 16, mcr68_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_READ(pigskin_port_1_r) AM_RANGE(0x0a0000, 0x0affff) AM_READ(pigskin_port_2_r) - AM_RANGE(0x0c0000, 0x0c007f) AM_WRITE(mcr68_paletteram_w) AM_SHARE("paletteram") + AM_RANGE(0x0c0000, 0x0c007f) AM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") AM_RANGE(0x0e0000, 0x0effff) AM_WRITE(watchdog_reset16_w) AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(mcr68_videoram_w) AM_SHARE("videoram") AM_RANGE(0x120000, 0x120001) AM_READWRITE(pigskin_protection_r, pigskin_protection_w) @@ -378,7 +378,7 @@ static ADDRESS_MAP_START( trisport_map, AS_PROGRAM, 16, mcr68_state ) AM_RANGE(0x080000, 0x08ffff) AM_READ(trisport_port_1_r) AM_RANGE(0x0a0000, 0x0affff) AM_READ_PORT("DSW") AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("nvram") - AM_RANGE(0x120000, 0x12007f) AM_WRITE(mcr68_paletteram_w) AM_SHARE("paletteram") + AM_RANGE(0x120000, 0x12007f) AM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") AM_RANGE(0x140000, 0x1407ff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x160000, 0x160fff) AM_RAM_WRITE(mcr68_videoram_w) AM_SHARE("videoram") AM_RANGE(0x180000, 0x18000f) AM_READWRITE(mcr68_6840_upper_r, mcr68_6840_upper_w) @@ -1054,6 +1054,7 @@ static MACHINE_CONFIG_START( zwackery, mcr68_state ) MCFG_GFXDECODE_ADD("gfxdecode", "palette", zwackery) MCFG_PALETTE_ADD("palette", 4096) + MCFG_PALETTE_FORMAT(xRRRRRBBBBBGGGGG_inverted) MCFG_VIDEO_START_OVERRIDE(mcr68_state,zwackery) @@ -1086,6 +1087,7 @@ static MACHINE_CONFIG_START( mcr68, mcr68_state ) MCFG_GFXDECODE_ADD("gfxdecode", "palette", mcr68) MCFG_PALETTE_ADD("palette", 64) + MCFG_PALETTE_FORMAT(xxxxxxxRRRBBBGGG) MCFG_VIDEO_START_OVERRIDE(mcr68_state,mcr68) diff --git a/src/mame/includes/mcr68.h b/src/mame/includes/mcr68.h index 2115cbd2df1..86485c7ed81 100644 --- a/src/mame/includes/mcr68.h +++ b/src/mame/includes/mcr68.h @@ -28,8 +28,7 @@ public: m_maincpu(*this, "maincpu"), m_gfxdecode(*this, "gfxdecode"), m_screen(*this, "screen"), - m_palette(*this, "palette"), - m_generic_paletteram_16(*this, "paletteram") { } + m_palette(*this, "palette") { } optional_device m_chip_squeak_deluxe; optional_device m_sounds_good; @@ -79,8 +78,6 @@ public: DECLARE_READ16_MEMBER(mcr68_6840_r_common); void reload_count(int counter); UINT16 compute_counter(int counter); - DECLARE_WRITE16_MEMBER(mcr68_paletteram_w); - DECLARE_WRITE16_MEMBER(zwackery_paletteram_w); DECLARE_WRITE16_MEMBER(mcr68_videoram_w); DECLARE_WRITE16_MEMBER(zwackery_videoram_w); DECLARE_WRITE16_MEMBER(zwackery_spriteram_w); @@ -129,5 +126,4 @@ public: required_device m_gfxdecode; required_device m_screen; required_device m_palette; - required_shared_ptr m_generic_paletteram_16; }; diff --git a/src/mame/video/mcr68.c b/src/mame/video/mcr68.c index a84ea4dd29b..983f01205f1 100644 --- a/src/mame/video/mcr68.c +++ b/src/mame/video/mcr68.c @@ -131,33 +131,6 @@ VIDEO_START_MEMBER(mcr68_state,zwackery) -/************************************* - * - * Palette RAM writes - * - *************************************/ - -WRITE16_MEMBER(mcr68_state::mcr68_paletteram_w) -{ - int newword; - - COMBINE_DATA(&m_generic_paletteram_16[offset]); - newword = m_generic_paletteram_16[offset]; - m_palette->set_pen_color(offset, pal3bit(newword >> 6), pal3bit(newword >> 0), pal3bit(newword >> 3)); -} - - -WRITE16_MEMBER(mcr68_state::zwackery_paletteram_w) -{ - int newword; - - COMBINE_DATA(&m_generic_paletteram_16[offset]); - newword = m_generic_paletteram_16[offset]; - m_palette->set_pen_color(offset, pal5bit(~newword >> 10), pal5bit(~newword >> 0), pal5bit(~newword >> 5)); -} - - - /************************************* * * Video RAM writes