summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Dirk Best <mail@dirk-best.de>2015-08-12 19:21:37 +0200
committer Dirk Best <mail@dirk-best.de>2015-08-12 19:21:37 +0200
commita320032368f82716876919e6b417650982a38dd8 (patch)
treedad46e9055afde97dcad71c8c976f75a3ff2bda5 /src
parentce9f2df3629f53519f22d2ef50de811bb87e5a83 (diff)
move rgbi formats out of emupal.h
Diffstat (limited to 'src')
-rw-r--r--src/emu/emupal.c18
-rw-r--r--src/emu/emupal.h6
-rw-r--r--src/mame/drivers/nova2001.c16
-rw-r--r--src/mame/drivers/senjyo.c2
-rw-r--r--src/mame/drivers/superqix.c8
-rw-r--r--src/mame/drivers/xxmissio.c4
-rw-r--r--src/mame/includes/nova2001.h1
-rw-r--r--src/mame/includes/senjyo.h1
-rw-r--r--src/mame/includes/superqix.h1
-rw-r--r--src/mame/includes/xxmissio.h2
-rw-r--r--src/mame/video/nova2001.c10
-rw-r--r--src/mame/video/senjyo.c10
-rw-r--r--src/mame/video/superqix.c9
-rw-r--r--src/mame/video/xxmissio.c9
14 files changed, 57 insertions, 40 deletions
diff --git a/src/emu/emupal.c b/src/emu/emupal.c
index 9e420b66a56..b1bda17bc98 100644
--- a/src/emu/emupal.c
+++ b/src/emu/emupal.c
@@ -966,24 +966,6 @@ void palette_device::palette_init_RRRRRGGGGGGBBBBB(palette_device &palette)
palette.set_pen_color(i, rgbexpand<5,6,5>(i, 11, 5, 0));
}
-rgb_t raw_to_rgb_converter::BBGGRRII_decoder(UINT32 raw)
-{
- UINT8 i = raw & 3;
- UINT8 r = (raw >> 0) & 0x0c;
- UINT8 g = (raw >> 2) & 0x0c;
- UINT8 b = (raw >> 4) & 0x0c;
- return rgb_t(pal4bit(r ? (r | i) : 0), pal4bit(g ? (g | i) : 0), pal4bit(b ? (b | i) : 0));
-}
-
-rgb_t raw_to_rgb_converter::IIBBGGRR_decoder(UINT32 raw)
-{
- UINT8 i = (raw >> 6) & 3;
- UINT8 r = (raw << 2) & 0x0c;
- UINT8 g = (raw ) & 0x0c;
- UINT8 b = (raw >> 2) & 0x0c;
- return rgb_t(pal4bit(r ? (r | i) : 0), pal4bit(g ? (g | i) : 0), pal4bit(b ? (b | i) : 0));
-}
-
rgb_t raw_to_rgb_converter::IRRRRRGGGGGBBBBB_decoder(UINT32 raw)
{
UINT8 i = (raw >> 15) & 1;
diff --git a/src/emu/emupal.h b/src/emu/emupal.h
index e279190290f..1b6bfb296a5 100644
--- a/src/emu/emupal.h
+++ b/src/emu/emupal.h
@@ -123,10 +123,6 @@
#define PALETTE_FORMAT_BBGGGRRR_inverted raw_to_rgb_converter(1, &raw_to_rgb_converter::inverted_rgb_decoder<3,3,2, 0,3,6>)
#define PALETTE_FORMAT_RRRGGGBB_inverted raw_to_rgb_converter(1, &raw_to_rgb_converter::inverted_rgb_decoder<3,3,2, 5,2,0>)
-// standard 2-2-2-2 formats
-#define PALETTE_FORMAT_BBGGRRII raw_to_rgb_converter(1, &raw_to_rgb_converter::BBGGRRII_decoder)
-#define PALETTE_FORMAT_IIBBGGRR raw_to_rgb_converter(1, &raw_to_rgb_converter::IIBBGGRR_decoder)
-
// standard 3-3-3 formats
#define PALETTE_FORMAT_xxxxxxxBBBGGGRRR raw_to_rgb_converter(2, &raw_to_rgb_converter::standard_rgb_decoder<3,3,3, 0,3,6>)
#define PALETTE_FORMAT_xxxxxxxRRRBBBGGG raw_to_rgb_converter(2, &raw_to_rgb_converter::standard_rgb_decoder<3,3,3, 6,0,3>)
@@ -354,8 +350,6 @@ public:
}
// other standard decoders
- static rgb_t BBGGRRII_decoder(UINT32 raw);
- static rgb_t IIBBGGRR_decoder(UINT32 raw);
static rgb_t IRRRRRGGGGGBBBBB_decoder(UINT32 raw);
static rgb_t RRRRGGGGBBBBRGBx_decoder(UINT32 raw); // bits 3/2/1 are LSb
static rgb_t xRGBRRRRGGGGBBBB_bit0_decoder(UINT32 raw); // bits 14/13/12 are LSb
diff --git a/src/mame/drivers/nova2001.c b/src/mame/drivers/nova2001.c
index 61c7cf8df5b..8f10665d9d0 100644
--- a/src/mame/drivers/nova2001.c
+++ b/src/mame/drivers/nova2001.c
@@ -647,8 +647,8 @@ static MACHINE_CONFIG_START( nova2001, nova2001_state )
MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", "palette", nova2001)
- MCFG_PALETTE_ADD("palette", 0x200)
- MCFG_PALETTE_FORMAT(BBGGRRII)
+ MCFG_PALETTE_ADD("palette", 512)
+ MCFG_PALETTE_FORMAT_CLASS(1, nova2001_state, BBGGRRII)
MCFG_PALETTE_INIT_OWNER(nova2001_state,nova2001)
MCFG_VIDEO_START_OVERRIDE(nova2001_state,nova2001)
@@ -692,8 +692,8 @@ static MACHINE_CONFIG_START( ninjakun, nova2001_state )
MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", "palette", ninjakun)
- MCFG_PALETTE_ADD("palette", 0x300)
- MCFG_PALETTE_FORMAT(BBGGRRII)
+ MCFG_PALETTE_ADD("palette", 768)
+ MCFG_PALETTE_FORMAT_CLASS(1, nova2001_state, BBGGRRII)
MCFG_VIDEO_START_OVERRIDE(nova2001_state,ninjakun)
@@ -728,8 +728,8 @@ static MACHINE_CONFIG_START( pkunwar, nova2001_state )
MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", "palette", pkunwar)
- MCFG_PALETTE_ADD("palette", 0x200)
- MCFG_PALETTE_FORMAT(BBGGRRII)
+ MCFG_PALETTE_ADD("palette", 512)
+ MCFG_PALETTE_FORMAT_CLASS(1, nova2001_state, BBGGRRII)
MCFG_PALETTE_INIT_OWNER(nova2001_state,nova2001)
MCFG_VIDEO_START_OVERRIDE(nova2001_state,pkunwar)
@@ -771,8 +771,8 @@ static MACHINE_CONFIG_START( raiders5, nova2001_state )
MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", "palette", raiders5)
- MCFG_PALETTE_ADD("palette", 0x300)
- MCFG_PALETTE_FORMAT(BBGGRRII)
+ MCFG_PALETTE_ADD("palette", 768)
+ MCFG_PALETTE_FORMAT_CLASS(1, nova2001_state, BBGGRRII)
MCFG_VIDEO_START_OVERRIDE(nova2001_state,raiders5)
diff --git a/src/mame/drivers/senjyo.c b/src/mame/drivers/senjyo.c
index b6e7fec9a4d..4ccb8036ab1 100644
--- a/src/mame/drivers/senjyo.c
+++ b/src/mame/drivers/senjyo.c
@@ -577,7 +577,7 @@ static MACHINE_CONFIG_START( senjyo, senjyo_state )
MCFG_GFXDECODE_ADD("gfxdecode", "palette", senjyo)
MCFG_PALETTE_ADD_INIT_BLACK("palette", 512)
- MCFG_PALETTE_FORMAT(IIBBGGRR)
+ MCFG_PALETTE_FORMAT_CLASS(1, senjyo_state, IIBBGGRR)
MCFG_PALETTE_ADD("radar_palette", 2)
MCFG_PALETTE_INIT_OWNER(senjyo_state, radar)
diff --git a/src/mame/drivers/superqix.c b/src/mame/drivers/superqix.c
index cd86dd4d4ab..8db24ee5ed0 100644
--- a/src/mame/drivers/superqix.c
+++ b/src/mame/drivers/superqix.c
@@ -941,7 +941,7 @@ static MACHINE_CONFIG_START( pbillian, superqix_state )
MCFG_GFXDECODE_ADD("gfxdecode", "palette", pbillian)
MCFG_PALETTE_ADD("palette", 512)
- MCFG_PALETTE_FORMAT(BBGGRRII)
+ MCFG_PALETTE_FORMAT_CLASS(1, superqix_state, BBGGRRII)
MCFG_VIDEO_START_OVERRIDE(superqix_state,pbillian)
@@ -980,7 +980,7 @@ static MACHINE_CONFIG_START( hotsmash, superqix_state )
MCFG_GFXDECODE_ADD("gfxdecode", "palette", pbillian)
MCFG_PALETTE_ADD("palette", 512)
- MCFG_PALETTE_FORMAT(BBGGRRII)
+ MCFG_PALETTE_FORMAT_CLASS(1, superqix_state, BBGGRRII)
MCFG_VIDEO_START_OVERRIDE(superqix_state,pbillian)
@@ -1023,7 +1023,7 @@ static MACHINE_CONFIG_START( sqix, superqix_state )
MCFG_GFXDECODE_ADD("gfxdecode", "palette", sqix)
MCFG_PALETTE_ADD("palette", 256)
- MCFG_PALETTE_FORMAT(BBGGRRII)
+ MCFG_PALETTE_FORMAT_CLASS(1, superqix_state, BBGGRRII)
MCFG_VIDEO_START_OVERRIDE(superqix_state,superqix)
@@ -1071,7 +1071,7 @@ static MACHINE_CONFIG_START( sqixbl, superqix_state )
MCFG_GFXDECODE_ADD("gfxdecode", "palette", sqix)
MCFG_PALETTE_ADD("palette", 256)
- MCFG_PALETTE_FORMAT(BBGGRRII)
+ MCFG_PALETTE_FORMAT_CLASS(1, superqix_state, BBGGRRII)
MCFG_VIDEO_START_OVERRIDE(superqix_state,superqix)
diff --git a/src/mame/drivers/xxmissio.c b/src/mame/drivers/xxmissio.c
index 2e3c02ee7f8..b826848f1d5 100644
--- a/src/mame/drivers/xxmissio.c
+++ b/src/mame/drivers/xxmissio.c
@@ -270,7 +270,6 @@ static MACHINE_CONFIG_START( xxmissio, xxmissio_state )
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
-
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
@@ -282,8 +281,7 @@ static MACHINE_CONFIG_START( xxmissio, xxmissio_state )
MCFG_GFXDECODE_ADD("gfxdecode", "palette", xxmissio)
MCFG_PALETTE_ADD("palette", 768)
- MCFG_PALETTE_FORMAT(BBGGRRII)
-
+ MCFG_PALETTE_FORMAT_CLASS(1, xxmissio_state, BBGGRRII)
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
diff --git a/src/mame/includes/nova2001.h b/src/mame/includes/nova2001.h
index 7dcaa7817e1..497a337c4e5 100644
--- a/src/mame/includes/nova2001.h
+++ b/src/mame/includes/nova2001.h
@@ -42,6 +42,7 @@ public:
DECLARE_DRIVER_INIT(pkunwar);
DECLARE_VIDEO_START(nova2001);
DECLARE_PALETTE_INIT(nova2001);
+ DECLARE_PALETTE_DECODER(BBGGRRII);
DECLARE_MACHINE_START(ninjakun);
DECLARE_VIDEO_START(ninjakun);
DECLARE_VIDEO_START(pkunwar);
diff --git a/src/mame/includes/senjyo.h b/src/mame/includes/senjyo.h
index 6bdf965683c..36c6bbebdb1 100644
--- a/src/mame/includes/senjyo.h
+++ b/src/mame/includes/senjyo.h
@@ -86,6 +86,7 @@ public:
DECLARE_WRITE8_MEMBER(irq_ctrl_w);
DECLARE_READ8_MEMBER(pio_pa_r);
+ DECLARE_PALETTE_DECODER(IIBBGGRR);
DECLARE_PALETTE_INIT(radar);
DECLARE_DRIVER_INIT(starfora);
diff --git a/src/mame/includes/superqix.h b/src/mame/includes/superqix.h
index f605e8372f6..ede28fa498e 100644
--- a/src/mame/includes/superqix.h
+++ b/src/mame/includes/superqix.h
@@ -89,6 +89,7 @@ public:
DECLARE_VIDEO_START(pbillian);
DECLARE_MACHINE_START(superqix);
DECLARE_VIDEO_START(superqix);
+ DECLARE_PALETTE_DECODER(BBGGRRII);
UINT32 screen_update_pbillian(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
UINT32 screen_update_superqix(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(vblank_irq);
diff --git a/src/mame/includes/xxmissio.h b/src/mame/includes/xxmissio.h
index 1082e830cd3..48564dba069 100644
--- a/src/mame/includes/xxmissio.h
+++ b/src/mame/includes/xxmissio.h
@@ -49,6 +49,8 @@ public:
virtual void machine_start();
virtual void video_start();
+ DECLARE_PALETTE_DECODER(BBGGRRII);
+
UINT32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, gfx_element *gfx);
};
diff --git a/src/mame/video/nova2001.c b/src/mame/video/nova2001.c
index 740b0127294..e5366891b2f 100644
--- a/src/mame/video/nova2001.c
+++ b/src/mame/video/nova2001.c
@@ -50,6 +50,16 @@ PALETTE_INIT_MEMBER(nova2001_state,nova2001)
}
}
+PALETTE_DECODER_MEMBER( nova2001_state, BBGGRRII )
+{
+ UINT8 i = raw & 3;
+ UINT8 r = (raw >> 0) & 0x0c;
+ UINT8 g = (raw >> 2) & 0x0c;
+ UINT8 b = (raw >> 4) & 0x0c;
+
+ return rgb_t(pal4bit(r | i), pal4bit(g | i), pal4bit(b | i));
+}
+
WRITE8_MEMBER(nova2001_state::ninjakun_paletteram_w)
{
int i;
diff --git a/src/mame/video/senjyo.c b/src/mame/video/senjyo.c
index e3628a71978..dfccfbdd7b1 100644
--- a/src/mame/video/senjyo.c
+++ b/src/mame/video/senjyo.c
@@ -108,6 +108,16 @@ void senjyo_state::video_start()
m_fg_tilemap->set_scroll_cols(32);
}
+PALETTE_DECODER_MEMBER( senjyo_state, IIBBGGRR )
+{
+ UINT8 i = (raw >> 6) & 3;
+ UINT8 r = (raw << 2) & 0x0c;
+ UINT8 g = (raw ) & 0x0c;
+ UINT8 b = (raw >> 2) & 0x0c;
+
+ return rgb_t(pal4bit(r ? (r | i) : 0), pal4bit(g ? (g | i) : 0), pal4bit(b ? (b | i) : 0));
+}
+
PALETTE_INIT_MEMBER( senjyo_state, radar )
{
// two colors for the radar dots (verified on the real board)
diff --git a/src/mame/video/superqix.c b/src/mame/video/superqix.c
index ba6b1acd4aa..d2c08c13d96 100644
--- a/src/mame/video/superqix.c
+++ b/src/mame/video/superqix.c
@@ -69,6 +69,15 @@ VIDEO_START_MEMBER(superqix_state,superqix)
save_item(NAME(*m_fg_bitmap[1]));
}
+PALETTE_DECODER_MEMBER( superqix_state, BBGGRRII )
+{
+ UINT8 i = raw & 3;
+ UINT8 r = (raw >> 0) & 0x0c;
+ UINT8 g = (raw >> 2) & 0x0c;
+ UINT8 b = (raw >> 4) & 0x0c;
+
+ return rgb_t(pal4bit(r | i), pal4bit(g | i), pal4bit(b | i));
+}
/***************************************************************************
diff --git a/src/mame/video/xxmissio.c b/src/mame/video/xxmissio.c
index 5633c7dc40f..eda9e682e4f 100644
--- a/src/mame/video/xxmissio.c
+++ b/src/mame/video/xxmissio.c
@@ -77,6 +77,15 @@ void xxmissio_state::video_start()
save_item(NAME(m_flipscreen));
}
+PALETTE_DECODER_MEMBER( xxmissio_state, BBGGRRII )
+{
+ UINT8 i = raw & 3;
+ UINT8 r = (raw >> 0) & 0x0c;
+ UINT8 g = (raw >> 2) & 0x0c;
+ UINT8 b = (raw >> 4) & 0x0c;
+
+ return rgb_t(pal4bit(r | i), pal4bit(g | i), pal4bit(b | i));
+}
void xxmissio_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, gfx_element *gfx)
{