diff --git a/src/emu/emupal.h b/src/emu/emupal.h index 1a2a0879551..c84d8691ef1 100644 --- a/src/emu/emupal.h +++ b/src/emu/emupal.h @@ -143,6 +143,7 @@ #define PALETTE_FORMAT_xRGBRRRRGGGGBBBB raw_to_rgb_converter(2, &raw_to_rgb_converter::xRGBRRRRGGGGBBBB_decoder) // standard 5-6-5 formats +#define PALETTE_FORMAT_RRRRRGGGGGGBBBBB raw_to_rgb_converter(2, &raw_to_rgb_converter::standard_rgb_decoder<5,6,5, 11,5,0>) #define PALETTE_FORMAT_BBBBBGGGGGGRRRRR raw_to_rgb_converter(2, &raw_to_rgb_converter::standard_rgb_decoder<5,6,5, 0,5,11>) // standard 5-5-5-1 formats diff --git a/src/mame/drivers/galpani3.c b/src/mame/drivers/galpani3.c index bf1703276dd..9b76c65b0cc 100644 --- a/src/mame/drivers/galpani3.c +++ b/src/mame/drivers/galpani3.c @@ -83,7 +83,7 @@ public: m_grap2_1(*this,"grap2_1"), m_grap2_2(*this,"grap2_2"), m_palette(*this, "palette"), - m_generic_paletteram_16(*this, "paletteram") + m_paletteram(*this, "palette") { } optional_shared_ptr m_spriteram; @@ -95,7 +95,7 @@ public: required_device m_grap2_1; required_device m_grap2_2; required_device m_palette; - required_shared_ptr m_generic_paletteram_16; + required_shared_ptr m_paletteram; UINT16 m_priority_buffer_scrollx; UINT16 m_priority_buffer_scrolly; @@ -160,7 +160,7 @@ int galpani3_state::gp3_is_alpha_pen(int pen) if (pen<0x4000) { - dat = m_generic_paletteram_16[pen]; + dat = m_paletteram[pen]; } else if (pen<0x4100) { diff --git a/src/mame/drivers/highvdeo.c b/src/mame/drivers/highvdeo.c index f2e048074bc..81713f25231 100644 --- a/src/mame/drivers/highvdeo.c +++ b/src/mame/drivers/highvdeo.c @@ -112,8 +112,7 @@ public: m_blit_ram(*this, "blit_ram"), m_maincpu(*this, "maincpu"), m_okim6376(*this, "oki"), - m_palette(*this, "palette"), - m_generic_paletteram_16(*this, "paletteram") { } + m_palette(*this, "palette") { } required_shared_ptr m_blit_ram; UINT16 m_vblank_bit; @@ -127,7 +126,6 @@ public: DECLARE_WRITE16_MEMBER(tv_vcf_bankselect_w); DECLARE_WRITE16_MEMBER(write1_w); DECLARE_READ16_MEMBER(tv_ncf_read1_r); - DECLARE_WRITE16_MEMBER(tv_tcf_paletteram_w); DECLARE_WRITE16_MEMBER(tv_tcf_bankselect_w); DECLARE_READ16_MEMBER(newmcard_status_r); DECLARE_READ16_MEMBER(newmcard_vblank_r); @@ -157,7 +155,6 @@ public: required_device m_maincpu; required_device m_okim6376; required_device m_palette; - required_shared_ptr m_generic_paletteram_16; }; @@ -258,16 +255,16 @@ WRITE16_MEMBER(highvdeo_state::tv_vcf_paletteram_w) switch(m_pal.offs_internal) { case 0: - m_pal.r = ((data & 0x3f) << 2) | ((data & 0x30) >> 4); + m_pal.r = pal6bit(data); m_pal.offs_internal++; break; case 1: - m_pal.g = ((data & 0x3f) << 2) | ((data & 0x30) >> 4); + m_pal.g = pal6bit(data); m_pal.offs_internal++; break; case 2: - m_pal.b = ((data & 0x3f) << 2) | ((data & 0x30) >> 4); - m_palette->set_pen_color(m_pal.offs, rgb_t(m_pal.r, m_pal.g, m_pal.b)); + m_pal.b = pal6bit(data); + m_palette->set_pen_color(m_pal.offs, m_pal.r, m_pal.g, m_pal.b); m_pal.offs_internal = 0; m_pal.offs++; break; @@ -437,21 +434,6 @@ WRITE16_MEMBER(highvdeo_state::nyj_write2_w) coin_counter_w(machine(), 1, ~data & 0x10); // Notes (all) } - -WRITE16_MEMBER(highvdeo_state::tv_tcf_paletteram_w) -{ - int r, g, b, color; - - COMBINE_DATA(&m_generic_paletteram_16[offset]); - - color = m_generic_paletteram_16[offset]; - r = (color >> 8) & 0xf8; - g = (color >> 3) & 0xf8; - b = (color << 3) & 0xf8; - - m_palette->set_pen_color(offset, r, g, b); -} - WRITE16_MEMBER(highvdeo_state::tv_tcf_bankselect_w) { UINT32 bankaddress; @@ -467,7 +449,7 @@ static ADDRESS_MAP_START( tv_tcf_map, AS_PROGRAM, 16, highvdeo_state ) AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/ AM_RANGE(0x00400, 0x03fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x40000, 0x5d4bf) AM_RAM AM_SHARE("blit_ram") /*blitter ram*/ - AM_RANGE(0x7fe00, 0x7ffff) AM_RAM_WRITE(tv_tcf_paletteram_w ) AM_SHARE("paletteram") + AM_RANGE(0x7fe00, 0x7ffff) AM_RAM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") AM_RANGE(0x80000, 0xbffff) AM_ROMBANK("bank1") AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0) ADDRESS_MAP_END @@ -1209,6 +1191,9 @@ static MACHINE_CONFIG_DERIVED( tv_tcf, tv_vcf ) MCFG_SCREEN_MODIFY("screen") MCFG_SCREEN_VISIBLE_AREA(0, 400-1, 0, 300-1) + + MCFG_PALETTE_MODIFY("palette") + MCFG_PALETTE_FORMAT(RRRRRGGGGGGBBBBB) MACHINE_CONFIG_END static MACHINE_CONFIG_DERIVED( newmcard, tv_tcf ) diff --git a/src/mame/drivers/igs_m027.c b/src/mame/drivers/igs_m027.c index 46865a98748..754dde25f6b 100644 --- a/src/mame/drivers/igs_m027.c +++ b/src/mame/drivers/igs_m027.c @@ -34,17 +34,14 @@ public: : driver_device(mconfig, type, tag), m_igs_mainram(*this, "igs_mainram"), m_igs_cg_videoram(*this, "igs_cg_videoram"), - m_igs_palette32(*this, "igs_palette32"), m_igs_tx_videoram(*this, "igs_tx_videoram"), m_igs_bg_videoram(*this, "igs_bg_videoram"), m_maincpu(*this, "maincpu"), m_gfxdecode(*this, "gfxdecode"), - m_palette(*this, "palette"), - m_generic_paletteram_16(*this, "paletteram") { } + m_palette(*this, "palette") { } optional_shared_ptr m_igs_mainram; optional_shared_ptr m_igs_cg_videoram; - optional_shared_ptr m_igs_palette32; optional_shared_ptr m_igs_tx_videoram; optional_shared_ptr m_igs_bg_videoram; @@ -79,7 +76,6 @@ public: required_device m_maincpu; optional_device m_gfxdecode; required_device m_palette; - required_shared_ptr m_generic_paletteram_16; }; @@ -180,18 +176,6 @@ TILE_GET_INFO_MEMBER(igs_m027_state::get_bg_tilemap_tile_info) } -/* Palette Layer */ -WRITE32_MEMBER(igs_m027_state::igs_palette32_w) -{ - m_generic_paletteram_16.set_target(reinterpret_cast(m_igs_palette32.target()), 0x800); - COMBINE_DATA(&m_igs_palette32[offset]); - //paletteram_xGGGGGRRRRRBBBBB_word_w(offset*2,m_generic_paletteram_16[offset*2],0); - //paletteram_xGGGGGRRRRRBBBBB_word_w(offset*2+1,m_generic_paletteram_16[offset*2+1],0); - //if(data!=0) - //fprintf(stdout,"PALETTE RAM OFFSET %x ,data %x!\n",offset ,m_igs_palette32[offset]); -} - - void igs_m027_state::video_start() { @@ -246,7 +230,7 @@ static ADDRESS_MAP_START( igs_majhong_map, AS_PROGRAM, 32, igs_m027_state ) AM_RANGE(0x18000000, 0x18007fff) AM_RAM AM_RANGE(0x38001000, 0x380017ff) AM_RAM_WRITE(igs_cg_videoram_w) AM_SHARE("igs_cg_videoram") //0x200 * 1 CG PALETTE? - AM_RANGE(0x38001800, 0x38001fff) AM_RAM_WRITE(igs_palette32_w) AM_SHARE("igs_palette32") //0x200 * 1 + AM_RANGE(0x38001800, 0x38001fff) AM_RAM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") //0x200 * 1 AM_RANGE(0x38004000, 0x38005FFF) AM_RAM_WRITE(igs_tx_videoram_w) AM_SHARE("igs_tx_videoram") /* Text Layer */ AM_RANGE(0x38006000, 0x38007FFF) AM_RAM_WRITE(igs_bg_videoram_w) AM_SHARE("igs_bg_videoram") /* CG Layer */ @@ -419,7 +403,7 @@ static MACHINE_CONFIG_START( igs_majhong, igs_m027_state ) MCFG_SCREEN_PALETTE("palette") MCFG_PALETTE_ADD("palette", 0x200) - + MCFG_PALETTE_FORMAT(xGGGGGRRRRRBBBBB) /* sound hardware */ diff --git a/src/mame/drivers/majorpkr.c b/src/mame/drivers/majorpkr.c index 15ab82d6a19..83172f5a98e 100644 --- a/src/mame/drivers/majorpkr.c +++ b/src/mame/drivers/majorpkr.c @@ -466,8 +466,7 @@ public: m_maincpu(*this, "maincpu"), m_gfxdecode(*this, "gfxdecode"), m_palette(*this, "palette"), - m_generic_paletteram_8(*this, "paletteram"), - m_generic_paletteram_16(*this, "paletteram") { } + m_generic_paletteram_8(*this, "paletteram") { } int m_mux_data; int m_palette_bank; @@ -503,7 +502,6 @@ public: required_device m_gfxdecode; required_device m_palette; required_shared_ptr m_generic_paletteram_8; - required_shared_ptr m_generic_paletteram_16; };