summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/video/vulgus.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/video/vulgus.c')
-rw-r--r--src/mame/video/vulgus.c24
1 files changed, 11 insertions, 13 deletions
diff --git a/src/mame/video/vulgus.c b/src/mame/video/vulgus.c
index b26a290e5a8..3848b55fca7 100644
--- a/src/mame/video/vulgus.c
+++ b/src/mame/video/vulgus.c
@@ -16,13 +16,11 @@
***************************************************************************/
-void vulgus_state::palette_init()
+PALETTE_INIT_MEMBER(vulgus_state, vulgus)
{
const UINT8 *color_prom = memregion("proms")->base();
int i;
- machine().colortable = colortable_alloc(machine(), 256);
-
for (i = 0;i < 256;i++)
{
int bit0,bit1,bit2,bit3,r,g,b;
@@ -43,7 +41,7 @@ void vulgus_state::palette_init()
bit3 = (color_prom[2*256] >> 3) & 0x01;
b = 0x0e * bit0 + 0x1f * bit1 + 0x43 * bit2 + 0x8f * bit3;
- colortable_palette_set_color(machine().colortable,i,rgb_t(r,g,b));
+ palette.set_indirect_color(i,rgb_t(r,g,b));
color_prom++;
}
@@ -53,19 +51,19 @@ void vulgus_state::palette_init()
/* characters use colors 32-47 (?) */
for (i = 0;i < m_gfxdecode->gfx(0)->colors() * m_gfxdecode->gfx(0)->granularity();i++)
- colortable_entry_set_value(machine().colortable, m_gfxdecode->gfx(0)->colorbase() + i, 32 + *color_prom++);
+ palette.set_pen_indirect(m_gfxdecode->gfx(0)->colorbase() + i, 32 + *color_prom++);
/* sprites use colors 16-31 */
for (i = 0;i < m_gfxdecode->gfx(2)->colors() * m_gfxdecode->gfx(2)->granularity();i++)
- colortable_entry_set_value(machine().colortable, m_gfxdecode->gfx(2)->colorbase() + i, 16 + *color_prom++);
+ palette.set_pen_indirect(m_gfxdecode->gfx(2)->colorbase() + i, 16 + *color_prom++);
/* background tiles use colors 0-15, 64-79, 128-143, 192-207 in four banks */
for (i = 0;i < m_gfxdecode->gfx(1)->colors() * m_gfxdecode->gfx(1)->granularity() / 4;i++)
{
- colortable_entry_set_value(machine().colortable, m_gfxdecode->gfx(1)->colorbase() + 0*32*8 + i, *color_prom);
- colortable_entry_set_value(machine().colortable, m_gfxdecode->gfx(1)->colorbase() + 1*32*8 + i, *color_prom + 64);
- colortable_entry_set_value(machine().colortable, m_gfxdecode->gfx(1)->colorbase() + 2*32*8 + i, *color_prom + 128);
- colortable_entry_set_value(machine().colortable, m_gfxdecode->gfx(1)->colorbase() + 3*32*8 + i, *color_prom + 192);
+ palette.set_pen_indirect(m_gfxdecode->gfx(1)->colorbase() + 0*32*8 + i, *color_prom);
+ palette.set_pen_indirect(m_gfxdecode->gfx(1)->colorbase() + 1*32*8 + i, *color_prom + 64);
+ palette.set_pen_indirect(m_gfxdecode->gfx(1)->colorbase() + 2*32*8 + i, *color_prom + 128);
+ palette.set_pen_indirect(m_gfxdecode->gfx(1)->colorbase() + 3*32*8 + i, *color_prom + 192);
color_prom++;
}
}
@@ -116,7 +114,7 @@ void vulgus_state::video_start()
m_fg_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(vulgus_state::get_fg_tile_info),this),TILEMAP_SCAN_ROWS, 8, 8,32,32);
m_bg_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(vulgus_state::get_bg_tile_info),this),TILEMAP_SCAN_COLS,16,16,32,32);
- colortable_configure_tilemap_groups(machine().colortable, m_fg_tilemap, m_gfxdecode->gfx(0), 47);
+ m_palette->configure_tilemap_groups(*m_fg_tilemap, *m_gfxdecode->gfx(0), 47);
}
@@ -194,14 +192,14 @@ void vulgus_state::draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect)
do
{
- m_gfxdecode->gfx(2)->transpen(bitmap,cliprect,
+ m_gfxdecode->gfx(2)->transpen(m_palette,bitmap,cliprect,
code + i,
col,
flip_screen(),flip_screen(),
sx, sy + 16 * i * dir,15);
/* draw again with wraparound */
- m_gfxdecode->gfx(2)->transpen(bitmap,cliprect,
+ m_gfxdecode->gfx(2)->transpen(m_palette,bitmap,cliprect,
code + i,
col,
flip_screen(),flip_screen(),