summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/emupal.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/emupal.c')
-rw-r--r--src/emu/emupal.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/emu/emupal.c b/src/emu/emupal.c
index b5712fa4b95..0831d50a712 100644
--- a/src/emu/emupal.c
+++ b/src/emu/emupal.c
@@ -927,10 +927,18 @@ rgb_t raw_to_rgb_converter::RRRRGGGGBBBBRGBx_decoder(UINT32 raw)
return rgb_t(r, g, b);
}
-rgb_t raw_to_rgb_converter::xRGBRRRRGGGGBBBB_decoder(UINT32 raw)
+rgb_t raw_to_rgb_converter::xRGBRRRRGGGGBBBB_bit0_decoder(UINT32 raw)
{
UINT8 r = pal5bit(((raw >> 7) & 0x1e) | ((raw >> 14) & 0x01));
UINT8 g = pal5bit(((raw >> 3) & 0x1e) | ((raw >> 13) & 0x01));
UINT8 b = pal5bit(((raw << 1) & 0x1e) | ((raw >> 12) & 0x01));
return rgb_t(r, g, b);
}
+
+rgb_t raw_to_rgb_converter::xRGBRRRRGGGGBBBB_bit4_decoder(UINT32 raw)
+{
+ UINT8 r = pal5bit(((raw >> 8) & 0x0f) | ((raw >> 10) & 0x10));
+ UINT8 g = pal5bit(((raw >> 4) & 0x0f) | ((raw >> 9) & 0x10));
+ UINT8 b = pal5bit(((raw >> 0) & 0x0f) | ((raw >> 8) & 0x10));
+ return rgb_t(r, g, b);
+}