Convert screen update functions to RGB32 in numerous games (nw)

This is intended to expedite CRTC-based video modernization.
This commit is contained in:
AJR 2019-05-10 15:38:17 -04:00
parent 7641722f32
commit cc46387d51
69 changed files with 160 additions and 229 deletions

View File

@ -471,7 +471,6 @@ void _4roses_state::_4roses(machine_config &config)
screen.set_size((124+1)*4, (30+1)*8); /* guess. taken from funworld games */ screen.set_size((124+1)*4, (30+1)*8); /* guess. taken from funworld games */
screen.set_visarea(0*4, 96*4-1, 0*8, 29*8-1); /* guess. taken from funworld games */ screen.set_visarea(0*4, 96*4-1, 0*8, 29*8-1); /* guess. taken from funworld games */
screen.set_screen_update(FUNC(_4roses_state::screen_update_funworld)); screen.set_screen_update(FUNC(_4roses_state::screen_update_funworld));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_4roses); GFXDECODE(config, m_gfxdecode, "palette", gfx_4roses);

View File

@ -512,7 +512,7 @@ private:
void fclown_ay8910_w(offs_t offset, u8 data); void fclown_ay8910_w(offs_t offset, u8 data);
TILE_GET_INFO_MEMBER(get_fclown_tile_info); TILE_GET_INFO_MEMBER(get_fclown_tile_info);
void _5clown_palette(palette_device &palette) const; void _5clown_palette(palette_device &palette) const;
uint32_t screen_update_fclown(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_fclown(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void fcaudio_map(address_map &map); void fcaudio_map(address_map &map);
void fclown_map(address_map &map); void fclown_map(address_map &map);
@ -574,7 +574,7 @@ void _5clown_state::video_start()
} }
uint32_t _5clown_state::screen_update_fclown(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t _5clown_state::screen_update_fclown(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -1049,7 +1049,6 @@ void _5clown_state::fclown(machine_config &config)
screen.set_size((39+1)*8, (31+1)*8); screen.set_size((39+1)*8, (31+1)*8);
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1);
screen.set_screen_update(FUNC(_5clown_state::screen_update_fclown)); screen.set_screen_update(FUNC(_5clown_state::screen_update_fclown));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_fclown); GFXDECODE(config, m_gfxdecode, m_palette, gfx_fclown);
PALETTE(config, m_palette, FUNC(_5clown_state::_5clown_palette), 256); PALETTE(config, m_palette, FUNC(_5clown_state::_5clown_palette), 256);

View File

@ -75,7 +75,7 @@ private:
DECLARE_WRITE8_MEMBER(mux_w); DECLARE_WRITE8_MEMBER(mux_w);
DECLARE_WRITE8_MEMBER(yumefuda_output_w); DECLARE_WRITE8_MEMBER(yumefuda_output_w);
TILE_GET_INFO_MEMBER(y_get_bg_tile_info); TILE_GET_INFO_MEMBER(y_get_bg_tile_info);
uint32_t screen_update_yumefuda(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_yumefuda(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void main_map(address_map &map); void main_map(address_map &map);
void port_map(address_map &map); void port_map(address_map &map);
@ -114,7 +114,7 @@ void albazg_state::video_start()
m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(albazg_state::y_get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 32); m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(albazg_state::y_get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 32);
} }
uint32_t albazg_state::screen_update_yumefuda(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t albazg_state::screen_update_yumefuda(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -383,7 +383,6 @@ void albazg_state::yumefuda(machine_config &config)
screen.set_size(32*8, 32*8); screen.set_size(32*8, 32*8);
screen.set_visarea_full(); screen.set_visarea_full();
screen.set_screen_update(FUNC(albazg_state::screen_update_yumefuda)); screen.set_screen_update(FUNC(albazg_state::screen_update_yumefuda));
screen.set_palette("palette");
h46505_device &crtc(H46505(config, "crtc", MASTER_CLOCK/16)); /* hand tuned to get ~60 fps */ h46505_device &crtc(H46505(config, "crtc", MASTER_CLOCK/16)); /* hand tuned to get ~60 fps */
crtc.set_screen("screen"); crtc.set_screen("screen");

View File

@ -476,8 +476,8 @@ private:
DECLARE_WRITE8_MEMBER(out_c_w); DECLARE_WRITE8_MEMBER(out_c_w);
void amaticmg_palette(palette_device &palette) const; void amaticmg_palette(palette_device &palette) const;
void amaticmg2_palette(palette_device &palette) const; void amaticmg2_palette(palette_device &palette) const;
uint32_t screen_update_amaticmg(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_amaticmg(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
uint32_t screen_update_amaticmg2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_amaticmg2(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(amaticmg2_irq); DECLARE_WRITE_LINE_MEMBER(amaticmg2_irq);
void encf(uint8_t ciphertext, int address, uint8_t &plaintext, int &newaddress); void encf(uint8_t ciphertext, int address, uint8_t &plaintext, int &newaddress);
void decrypt(int key1, int key2); void decrypt(int key1, int key2);
@ -497,7 +497,7 @@ void amaticmg_state::video_start()
{ {
} }
uint32_t amaticmg_state::screen_update_amaticmg(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t amaticmg_state::screen_update_amaticmg(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
gfx_element *gfx = m_gfxdecode->gfx(0); gfx_element *gfx = m_gfxdecode->gfx(0);
int y, x; int y, x;
@ -522,7 +522,7 @@ uint32_t amaticmg_state::screen_update_amaticmg(screen_device &screen, bitmap_in
return 0; return 0;
} }
uint32_t amaticmg_state::screen_update_amaticmg2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t amaticmg_state::screen_update_amaticmg2(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
gfx_element *gfx = m_gfxdecode->gfx(0); gfx_element *gfx = m_gfxdecode->gfx(0);
int y, x; int y, x;
@ -873,7 +873,6 @@ void amaticmg_state::amaticmg(machine_config &config)
screen.set_size(512, 256); screen.set_size(512, 256);
screen.set_visarea_full(); screen.set_visarea_full();
screen.set_screen_update(FUNC(amaticmg_state::screen_update_amaticmg)); screen.set_screen_update(FUNC(amaticmg_state::screen_update_amaticmg));
screen.set_palette(m_palette);
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK)); mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK));
crtc.set_screen("screen"); crtc.set_screen("screen");

View File

@ -453,7 +453,7 @@ private:
virtual void video_start() override; virtual void video_start() override;
void aristmk4_palette(palette_device &palette) const; void aristmk4_palette(palette_device &palette) const;
void lions_palette(palette_device &palette) const; void lions_palette(palette_device &palette) const;
uint32_t screen_update_aristmk4(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_aristmk4(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
TIMER_CALLBACK_MEMBER(note_input_reset); TIMER_CALLBACK_MEMBER(note_input_reset);
TIMER_CALLBACK_MEMBER(coin_input_reset); TIMER_CALLBACK_MEMBER(coin_input_reset);
TIMER_CALLBACK_MEMBER(hopper_reset); TIMER_CALLBACK_MEMBER(hopper_reset);
@ -509,7 +509,7 @@ void aristmk4_state::uBackgroundColour()
} }
} }
uint32_t aristmk4_state::screen_update_aristmk4(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t aristmk4_state::screen_update_aristmk4(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
gfx_element *gfx = m_gfxdecode->gfx(0); gfx_element *gfx = m_gfxdecode->gfx(0);
int x,y; int x,y;
@ -1798,7 +1798,6 @@ void aristmk4_state::aristmk4(machine_config &config)
screen.set_visarea(0, 304-1, 0, 216-1); /* from the crtc registers... updated by crtc */ screen.set_visarea(0, 304-1, 0, 216-1); /* from the crtc registers... updated by crtc */
screen.set_screen_update(FUNC(aristmk4_state::screen_update_aristmk4)); screen.set_screen_update(FUNC(aristmk4_state::screen_update_aristmk4));
screen.screen_vblank().set_inputline(m_maincpu, M6809_IRQ_LINE, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, M6809_IRQ_LINE, HOLD_LINE);
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_aristmk4); GFXDECODE(config, m_gfxdecode, m_palette, gfx_aristmk4);
PALETTE(config, m_palette, FUNC(aristmk4_state::aristmk4_palette), 512); PALETTE(config, m_palette, FUNC(aristmk4_state::aristmk4_palette), 512);

View File

@ -465,7 +465,7 @@ private:
DECLARE_WRITE_LINE_MEMBER(avtbingo_w); DECLARE_WRITE_LINE_MEMBER(avtbingo_w);
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
void avt_palette(palette_device &palette) const; void avt_palette(palette_device &palette) const;
uint32_t screen_update_avt(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_avt(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void avt_map(address_map &map); void avt_map(address_map &map);
void avt_portmap(address_map &map); void avt_portmap(address_map &map);
@ -540,7 +540,7 @@ void avt_state::video_start()
} }
uint32_t avt_state::screen_update_avt(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t avt_state::screen_update_avt(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
int x,y; int x,y;
int count; int count;
@ -971,7 +971,6 @@ void avt_state::avt(machine_config &config)
screen.set_size(32*8, 32*8); screen.set_size(32*8, 32*8);
screen.set_visarea_full(); /* 240x224 (through CRTC) */ screen.set_visarea_full(); /* 240x224 (through CRTC) */
screen.set_screen_update(FUNC(avt_state::screen_update_avt)); screen.set_screen_update(FUNC(avt_state::screen_update_avt));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_avt); GFXDECODE(config, m_gfxdecode, m_palette, gfx_avt);
PALETTE(config, m_palette, FUNC(avt_state::avt_palette), 8*16); PALETTE(config, m_palette, FUNC(avt_state::avt_palette), 8*16);

View File

@ -144,7 +144,7 @@ private:
DECLARE_WRITE_LINE_MEMBER(via_ca2_out); DECLARE_WRITE_LINE_MEMBER(via_ca2_out);
DECLARE_READ8_MEMBER(dips1_r); DECLARE_READ8_MEMBER(dips1_r);
DECLARE_WRITE8_MEMBER(input_mux_w); DECLARE_WRITE8_MEMBER(input_mux_w);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void init_stats(const uint8_t *table, int table_len, int address); void init_stats(const uint8_t *table, int table_len, int address);
void main_mem(address_map &map); void main_mem(address_map &map);
void ramdac_map(address_map &map); void ramdac_map(address_map &map);
@ -160,7 +160,7 @@ private:
}; };
uint32_t bmcbowl_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t bmcbowl_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
/* /*
280x230,4 bitmap layers, 8bpp, 280x230,4 bitmap layers, 8bpp,
@ -168,7 +168,7 @@ uint32_t bmcbowl_state::screen_update(screen_device &screen, bitmap_ind16 &bitma
*/ */
int x,y,z,pixdat; int x,y,z,pixdat;
bitmap.fill(m_palette->black_pen(), cliprect); bitmap.fill(rgb_t::black(), cliprect);
z=0; z=0;
for (y=0;y<230;y++) for (y=0;y<230;y++)
@ -178,30 +178,30 @@ uint32_t bmcbowl_state::screen_update(screen_device &screen, bitmap_ind16 &bitma
pixdat = m_vid2[0x8000+z]; pixdat = m_vid2[0x8000+z];
if(pixdat&0xff) if(pixdat&0xff)
bitmap.pix16(y, x+1) = (pixdat&0xff); bitmap.pix32(y, x+1) = m_palette->pen(pixdat&0xff);
if(pixdat>>8) if(pixdat>>8)
bitmap.pix16(y, x) = (pixdat>>8); bitmap.pix32(y, x) = m_palette->pen(pixdat>>8);
pixdat = m_vid2[z]; pixdat = m_vid2[z];
if(pixdat&0xff) if(pixdat&0xff)
bitmap.pix16(y, x+1) = (pixdat&0xff); bitmap.pix32(y, x+1) = m_palette->pen(pixdat&0xff);
if(pixdat>>8) if(pixdat>>8)
bitmap.pix16(y, x) = (pixdat>>8); bitmap.pix32(y, x) = m_palette->pen(pixdat>>8);
pixdat = m_vid1[0x8000+z]; pixdat = m_vid1[0x8000+z];
if(pixdat&0xff) if(pixdat&0xff)
bitmap.pix16(y, x+1) = (pixdat&0xff); bitmap.pix32(y, x+1) = m_palette->pen(pixdat&0xff);
if(pixdat>>8) if(pixdat>>8)
bitmap.pix16(y, x) = (pixdat>>8); bitmap.pix32(y, x) = m_palette->pen(pixdat>>8);
pixdat = m_vid1[z]; pixdat = m_vid1[z];
if(pixdat&0xff) if(pixdat&0xff)
bitmap.pix16(y, x+1) = (pixdat&0xff); bitmap.pix32(y, x+1) = m_palette->pen(pixdat&0xff);
if(pixdat>>8) if(pixdat>>8)
bitmap.pix16(y, x) = (pixdat>>8); bitmap.pix32(y, x) = m_palette->pen(pixdat>>8);
z++; z++;
} }
@ -473,7 +473,6 @@ void bmcbowl_state::bmcbowl(machine_config &config)
screen.set_size(35*8, 30*8); screen.set_size(35*8, 30*8);
screen.set_visarea(0*8, 35*8-1, 0*8, 29*8-1); screen.set_visarea(0*8, 35*8-1, 0*8, 29*8-1);
screen.set_screen_update(FUNC(bmcbowl_state::screen_update)); screen.set_screen_update(FUNC(bmcbowl_state::screen_update));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, M68K_IRQ_2, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, M68K_IRQ_2, HOLD_LINE);
PALETTE(config, m_palette).set_entries(256); PALETTE(config, m_palette).set_entries(256);

View File

@ -34,7 +34,7 @@ public:
{ } { }
DECLARE_WRITE8_MEMBER(coin_output_w); DECLARE_WRITE8_MEMBER(coin_output_w);
uint32_t screen_update_buster(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_buster(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void buster(machine_config &config); void buster(machine_config &config);
void mainmap(address_map &map); void mainmap(address_map &map);
protected: protected:
@ -51,7 +51,7 @@ void buster_state::video_start()
{ {
} }
uint32_t buster_state::screen_update_buster(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t buster_state::screen_update_buster(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
gfx_element *gfx = m_gfxdecode->gfx(0); gfx_element *gfx = m_gfxdecode->gfx(0);
int count = 0x0000; int count = 0x0000;
@ -336,7 +336,6 @@ void buster_state::buster(machine_config &config)
screen.set_size(256, 256); screen.set_size(256, 256);
screen.set_visarea(0, 256-1, 16, 256-16-1); screen.set_visarea(0, 256-1, 16, 256-16-1);
screen.set_screen_update(FUNC(buster_state::screen_update_buster)); screen.set_screen_update(FUNC(buster_state::screen_update_buster));
screen.set_palette(m_palette);
mc6845_device &crtc(MC6845(config, "crtc", XTAL(3'579'545)/4)); //unknown clock / type mc6845_device &crtc(MC6845(config, "crtc", XTAL(3'579'545)/4)); //unknown clock / type
crtc.set_screen("screen"); crtc.set_screen("screen");

View File

@ -2595,7 +2595,6 @@ void calomega_state::sys903(machine_config &config)
screen.set_size((39+1)*8, (31+1)*8); /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */ screen.set_size((39+1)*8, (31+1)*8); /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */
screen.set_visarea(0*8, 32*8-1, 0*8, 31*8-1); /* Taken from MC6845 init, registers 01 & 06 */ screen.set_visarea(0*8, 32*8-1, 0*8, 31*8-1); /* Taken from MC6845 init, registers 01 & 06 */
screen.set_screen_update(FUNC(calomega_state::screen_update_calomega)); screen.set_screen_update(FUNC(calomega_state::screen_update_calomega));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_calomega); GFXDECODE(config, m_gfxdecode, m_palette, gfx_calomega);
PALETTE(config, m_palette, FUNC(calomega_state::calomega_palette), 256); // or 128? is the upper half of the PROMs really valid colors? PALETTE(config, m_palette, FUNC(calomega_state::calomega_palette), 256); // or 128? is the upper half of the PROMs really valid colors?

View File

@ -73,7 +73,7 @@ public:
private: private:
DECLARE_READ8_MEMBER(unknown_r); DECLARE_READ8_MEMBER(unknown_r);
void carrera_palette(palette_device &palette) const; void carrera_palette(palette_device &palette) const;
uint32_t screen_update_carrera(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_carrera(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void carrera_map(address_map &map); void carrera_map(address_map &map);
void io_map(address_map &map); void io_map(address_map &map);
@ -268,7 +268,7 @@ static GFXDECODE_START( gfx_carrera )
GFXDECODE_ENTRY( "gfx1", 0, tiles8x8_layout, 0, 1 ) GFXDECODE_ENTRY( "gfx1", 0, tiles8x8_layout, 0, 1 )
GFXDECODE_END GFXDECODE_END
uint32_t carrera_state::screen_update_carrera(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t carrera_state::screen_update_carrera(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
int x,y; int x,y;
int count = 0; int count = 0;
@ -329,7 +329,6 @@ void carrera_state::carrera(machine_config &config)
screen.set_size(512, 256); screen.set_size(512, 256);
screen.set_visarea_full(); screen.set_visarea_full();
screen.set_screen_update(FUNC(carrera_state::screen_update_carrera)); screen.set_screen_update(FUNC(carrera_state::screen_update_carrera));
screen.set_palette(m_palette);
mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK / 16)); mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK / 16));
crtc.set_screen("screen"); crtc.set_screen("screen");

View File

@ -67,7 +67,7 @@ private:
TILE_GET_INFO_MEMBER(get_fg_tile_info); TILE_GET_INFO_MEMBER(get_fg_tile_info);
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
uint32_t screen_update_chance32(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_chance32(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void chance32_map(address_map &map); void chance32_map(address_map &map);
void chance32_portmap(address_map &map); void chance32_portmap(address_map &map);
@ -117,7 +117,7 @@ void chance32_state::video_start()
} }
uint32_t chance32_state::screen_update_chance32(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t chance32_state::screen_update_chance32(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
m_fg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_fg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
@ -474,7 +474,6 @@ void chance32_state::chance32(machine_config &config)
screen.set_size(40*16, 32*8); screen.set_size(40*16, 32*8);
screen.set_visarea(0, 35*16-1, 0, 29*8-1); screen.set_visarea(0, 35*16-1, 0, 29*8-1);
screen.set_screen_update(FUNC(chance32_state::screen_update_chance32)); screen.set_screen_update(FUNC(chance32_state::screen_update_chance32));
screen.set_palette("palette");
h46505_device &crtc(H46505(config, "crtc", 12000000/16)); /* 52.786 Hz (similar to Major Poker) */ h46505_device &crtc(H46505(config, "crtc", 12000000/16)); /* 52.786 Hz (similar to Major Poker) */
crtc.set_screen("screen"); crtc.set_screen("screen");

View File

@ -172,7 +172,7 @@ public:
void init_coinmstr(); void init_coinmstr();
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
virtual void video_start() override; virtual void video_start() override;
uint32_t screen_update_coinmstr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_coinmstr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu; required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode; required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette; required_device<palette_device> m_palette;
@ -1248,7 +1248,7 @@ void coinmstr_state::video_start()
m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(coinmstr_state::get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 46, 32); m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(coinmstr_state::get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 46, 32);
} }
uint32_t coinmstr_state::screen_update_coinmstr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t coinmstr_state::screen_update_coinmstr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -1280,7 +1280,6 @@ void coinmstr_state::coinmstr(machine_config &config)
screen.set_size(64*8, 64*8); screen.set_size(64*8, 64*8);
screen.set_visarea(0*8, 46*8-1, 0*8, 32*8-1); screen.set_visarea(0*8, 46*8-1, 0*8, 32*8-1);
screen.set_screen_update(FUNC(coinmstr_state::screen_update_coinmstr)); screen.set_screen_update(FUNC(coinmstr_state::screen_update_coinmstr));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_coinmstr); GFXDECODE(config, m_gfxdecode, m_palette, gfx_coinmstr);
PALETTE(config, m_palette).set_entries(46*32*4); PALETTE(config, m_palette).set_entries(46*32*4);

View File

@ -628,7 +628,6 @@ void docastle_state::docastle(machine_config &config)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_raw(XTAL(9'828'000)/2, 0x138, 8, 0x100-8, 0x108, 0, 0xc0); // from CRTC screen.set_raw(XTAL(9'828'000)/2, 0x138, 8, 0x100-8, 0x108, 0, 0xc0); // from CRTC
screen.set_screen_update(FUNC(docastle_state::screen_update_docastle)); screen.set_screen_update(FUNC(docastle_state::screen_update_docastle));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_docastle); GFXDECODE(config, m_gfxdecode, m_palette, gfx_docastle);
PALETTE(config, m_palette, FUNC(docastle_state::docastle_palette), 512); PALETTE(config, m_palette, FUNC(docastle_state::docastle_palette), 512);

View File

@ -79,7 +79,7 @@ private:
DECLARE_WRITE8_MEMBER(memory_write_byte); DECLARE_WRITE8_MEMBER(memory_write_byte);
DECLARE_WRITE8_MEMBER(dark_1_clr); DECLARE_WRITE8_MEMBER(dark_1_clr);
DECLARE_WRITE8_MEMBER(dark_2_clr); DECLARE_WRITE8_MEMBER(dark_2_clr);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void fastinvaders_map(address_map &map); void fastinvaders_map(address_map &map);
void fastinvaders_io_base(address_map &map); void fastinvaders_io_base(address_map &map);
@ -220,11 +220,11 @@ void fastinvaders_state::video_start()
{ {
} }
uint32_t fastinvaders_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t fastinvaders_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
gfx_element *gfx = m_gfxdecode->gfx(0); gfx_element *gfx = m_gfxdecode->gfx(0);
bitmap.fill(0, cliprect); bitmap.fill(rgb_t::black(), cliprect);
int count = 0; int count = 0;
for (int y = 0; y < 19; y++) for (int y = 0; y < 19; y++)
@ -656,7 +656,6 @@ void fastinvaders_state::fastinvaders(machine_config &config)
screen.set_size(64*16, 32*16); screen.set_size(64*16, 32*16);
screen.set_visarea(0*16, 40*16-1, 0*14, 19*14-1); screen.set_visarea(0*16, 40*16-1, 0*14, 19*14-1);
screen.set_screen_update(FUNC(fastinvaders_state::screen_update)); screen.set_screen_update(FUNC(fastinvaders_state::screen_update));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_fastinvaders); GFXDECODE(config, m_gfxdecode, "palette", gfx_fastinvaders);
PALETTE(config, "palette", palette_device::MONOCHROME); PALETTE(config, "palette", palette_device::MONOCHROME);

View File

@ -368,7 +368,7 @@ private:
DECLARE_WRITE8_MEMBER(ayportb_w); DECLARE_WRITE8_MEMBER(ayportb_w);
void fortecar_palette(palette_device &palette) const; void fortecar_palette(palette_device &palette) const;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void fortecar_map(address_map &map); void fortecar_map(address_map &map);
void fortecar_ports(address_map &map); void fortecar_ports(address_map &map);
@ -384,7 +384,7 @@ void fortecar_state::machine_start()
m_lamps.resolve(); m_lamps.resolve();
} }
uint32_t fortecar_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t fortecar_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
int count = 0; int count = 0;
@ -700,7 +700,6 @@ void fortecar_state::fortecar(machine_config &config)
screen.set_size(640, 256); screen.set_size(640, 256);
screen.set_visarea(0, 600-1, 0, 240-1); /* driven by CRTC */ screen.set_visarea(0, 600-1, 0, 240-1); /* driven by CRTC */
screen.set_screen_update(FUNC(fortecar_state::screen_update)); screen.set_screen_update(FUNC(fortecar_state::screen_update));
screen.set_palette(m_palette);
EEPROM_93C56_16BIT(config, "eeprom").default_value(0); EEPROM_93C56_16BIT(config, "eeprom").default_value(0);

View File

@ -3024,7 +3024,6 @@ void funworld_state::fw1stpal(machine_config &config)
screen.set_size((124+1)*4, (30+1)*8); /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */ screen.set_size((124+1)*4, (30+1)*8); /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */
screen.set_visarea(0*4, 96*4-1, 0*8, 29*8-1); /* Taken from MC6845 init, registers 01 & 06 */ screen.set_visarea(0*4, 96*4-1, 0*8, 29*8-1); /* Taken from MC6845 init, registers 01 & 06 */
screen.set_screen_update(FUNC(funworld_state::screen_update_funworld)); screen.set_screen_update(FUNC(funworld_state::screen_update_funworld));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_fw1stpal); GFXDECODE(config, m_gfxdecode, m_palette, gfx_fw1stpal);
PALETTE(config, m_palette, FUNC(funworld_state::funworld_palette), 0x200); PALETTE(config, m_palette, FUNC(funworld_state::funworld_palette), 0x200);

View File

@ -233,7 +233,7 @@ private:
virtual void video_start() override; virtual void video_start() override;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void gluck2_map(address_map &map); void gluck2_map(address_map &map);
}; };
@ -279,7 +279,7 @@ void gluck2_state::video_start()
} }
uint32_t gluck2_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t gluck2_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -503,7 +503,6 @@ void gluck2_state::gluck2(machine_config &config)
screen.set_size((39+1)*8, (38+1)*8); /* from MC6845 init, registers 00 & 04. (value - 1) */ screen.set_size((39+1)*8, (38+1)*8); /* from MC6845 init, registers 00 & 04. (value - 1) */
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); /* from MC6845 init, registers 01 & 06. */ screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); /* from MC6845 init, registers 01 & 06. */
screen.set_screen_update(FUNC(gluck2_state::screen_update)); screen.set_screen_update(FUNC(gluck2_state::screen_update));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_gluck2); GFXDECODE(config, m_gfxdecode, "palette", gfx_gluck2);
PALETTE(config, "palette", palette_device::RGB_444_PROMS, "proms", 256); PALETTE(config, "palette", palette_device::RGB_444_PROMS, "proms", 256);

View File

@ -1351,7 +1351,7 @@ public:
DECLARE_WRITE8_MEMBER(sound_w); DECLARE_WRITE8_MEMBER(sound_w);
DECLARE_WRITE8_MEMBER(mux_w); DECLARE_WRITE8_MEMBER(mux_w);
uint32_t screen_update_goldnpkr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_goldnpkr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
protected: protected:
virtual void machine_start() override { m_lamps.resolve(); } virtual void machine_start() override { m_lamps.resolve(); }
@ -1510,7 +1510,7 @@ VIDEO_START_MEMBER(goldnpkr_state,wcrdxtnd)
m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(goldnpkr_state::wcrdxtnd_get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 32); m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(goldnpkr_state::wcrdxtnd_get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 32);
} }
uint32_t goldnpkr_state::screen_update_goldnpkr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t goldnpkr_state::screen_update_goldnpkr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -4386,7 +4386,6 @@ void goldnpkr_state::goldnpkr_base(machine_config &config)
screen.set_size((39+1)*8, (31+1)*8); /* From MC6845 init, registers 00 & 04 (programmed with value-1). */ screen.set_size((39+1)*8, (31+1)*8); /* From MC6845 init, registers 00 & 04 (programmed with value-1). */
screen.set_visarea(0*8, 32*8-1, 0*8, 29*8-1); /* From MC6845 init, registers 01 & 06. */ screen.set_visarea(0*8, 32*8-1, 0*8, 29*8-1); /* From MC6845 init, registers 01 & 06. */
screen.set_screen_update(FUNC(goldnpkr_state::screen_update_goldnpkr)); screen.set_screen_update(FUNC(goldnpkr_state::screen_update_goldnpkr));
screen.set_palette(m_palette);
mc6845_device &crtc(MC6845(config, "crtc", CPU_CLOCK)); /* 68B45 or 6845s @ CPU clock */ mc6845_device &crtc(MC6845(config, "crtc", CPU_CLOCK)); /* 68B45 or 6845s @ CPU clock */
crtc.set_screen("screen"); crtc.set_screen("screen");
@ -4749,7 +4748,6 @@ void blitz_state::megadpkr(machine_config &config)
screen.set_size((32)*8, (32)*8); screen.set_size((32)*8, (32)*8);
screen.set_visarea_full(); screen.set_visarea_full();
screen.set_screen_update(FUNC(goldnpkr_state::screen_update_goldnpkr)); screen.set_screen_update(FUNC(goldnpkr_state::screen_update_goldnpkr));
screen.set_palette(m_palette);
mc6845_device &crtc(MC6845(config, "crtc", CPU_CLOCK)); mc6845_device &crtc(MC6845(config, "crtc", CPU_CLOCK));
crtc.set_screen("screen"); crtc.set_screen("screen");

View File

@ -8457,7 +8457,6 @@ void goldstar_state::goldstar(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_goldstar); GFXDECODE(config, m_gfxdecode, m_palette, gfx_goldstar);
@ -8491,7 +8490,6 @@ void goldstar_state::goldstbl(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_bl); GFXDECODE(config, m_gfxdecode, m_palette, gfx_bl);
@ -8537,7 +8535,6 @@ void sanghopm_state::star100(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(sanghopm_state::screen_update_sangho)); screen.set_screen_update(FUNC(sanghopm_state::screen_update_sangho));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
PALETTE(config, m_palette).set_entries(0x100); PALETTE(config, m_palette).set_entries(0x100);
@ -8576,7 +8573,6 @@ void goldstar_state::super9(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_super9); GFXDECODE(config, m_gfxdecode, m_palette, gfx_super9);
@ -8667,7 +8663,6 @@ void cb3_state::ncb3(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3); GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3);
@ -8745,7 +8740,6 @@ void goldstar_state::wcherry(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_cb3e); GFXDECODE(config, m_gfxdecode, m_palette, gfx_cb3e);
@ -8790,7 +8784,6 @@ void cmaster_state::cm(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_cmbitmap); GFXDECODE(config, m_gfxdecode, m_palette, gfx_cmbitmap);
@ -8838,7 +8831,6 @@ void goldstar_state::cmast91(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 1*8, 31*8-1); screen.set_visarea(0*8, 64*8-1, 1*8, 31*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_cmast91)); screen.set_screen_update(FUNC(goldstar_state::screen_update_cmast91));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_cmast91); GFXDECODE(config, m_gfxdecode, m_palette, gfx_cmast91);
@ -8893,7 +8885,6 @@ void wingco_state::lucky8(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set(FUNC(wingco_state::masked_irq)); screen.screen_vblank().set(FUNC(wingco_state::masked_irq));
GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3); GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3);
@ -8945,7 +8936,6 @@ void wingco_state::bingowng(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(wingco_state::screen_update_bingowng)); screen.set_screen_update(FUNC(wingco_state::screen_update_bingowng));
screen.set_palette(m_palette);
screen.screen_vblank().set(FUNC(wingco_state::masked_irq)); screen.screen_vblank().set(FUNC(wingco_state::masked_irq));
GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3); GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3);
@ -9067,7 +9057,6 @@ void wingco_state::magodds(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(wingco_state::screen_update_magical)); screen.set_screen_update(FUNC(wingco_state::screen_update_magical));
screen.set_palette(m_palette);
screen.screen_vblank().set(FUNC(wingco_state::masked_irq)); screen.screen_vblank().set(FUNC(wingco_state::masked_irq));
GFXDECODE(config, m_gfxdecode, m_palette, gfx_magodds); GFXDECODE(config, m_gfxdecode, m_palette, gfx_magodds);
@ -9116,7 +9105,6 @@ void goldstar_state::kkotnoli(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI); screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3); GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3);
@ -9153,7 +9141,6 @@ void goldstar_state::ladylinr(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI); screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3); GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3);
@ -9201,7 +9188,6 @@ void wingco_state::wcat3(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI); screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3); GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3);
@ -9249,7 +9235,6 @@ void cmaster_state::amcoe1(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_cm); GFXDECODE(config, m_gfxdecode, m_palette, gfx_cm);
@ -9304,7 +9289,6 @@ void cmaster_state::amcoe2(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_cm); GFXDECODE(config, m_gfxdecode, m_palette, gfx_cm);
@ -9354,7 +9338,6 @@ void unkch_state::unkch(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 1*8, 31*8-1); screen.set_visarea(0*8, 64*8-1, 1*8, 31*8-1);
screen.set_screen_update(FUNC(unkch_state::screen_update_unkch)); screen.set_screen_update(FUNC(unkch_state::screen_update_unkch));
screen.set_palette(m_palette);
screen.screen_vblank().set(FUNC(unkch_state::vblank_irq)); screen.screen_vblank().set(FUNC(unkch_state::vblank_irq));
GFXDECODE(config, m_gfxdecode, m_palette, gfx_unkch); GFXDECODE(config, m_gfxdecode, m_palette, gfx_unkch);
@ -9390,7 +9373,6 @@ void goldstar_state::pkrmast(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE); screen.screen_vblank().set_inputline(m_maincpu, 0, HOLD_LINE);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_pkrmast); GFXDECODE(config, m_gfxdecode, m_palette, gfx_pkrmast);
@ -9426,7 +9408,6 @@ void unkch_state::megaline(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI); screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_megaline); GFXDECODE(config, m_gfxdecode, m_palette, gfx_megaline);
@ -9468,7 +9449,6 @@ void unkch_state::bonusch(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar)); screen.set_screen_update(FUNC(goldstar_state::screen_update_goldstar));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI); screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_megaline); GFXDECODE(config, m_gfxdecode, m_palette, gfx_megaline);
@ -9514,7 +9494,6 @@ void unkch_state::feverch(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1); screen.set_visarea(0*8, 64*8-1, 2*8, 30*8-1);
screen.set_screen_update(FUNC(unkch_state::screen_update_unkch)); screen.set_screen_update(FUNC(unkch_state::screen_update_unkch));
screen.set_palette(m_palette);
screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI); screen.screen_vblank().set_inputline(m_maincpu, INPUT_LINE_NMI);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3); GFXDECODE(config, m_gfxdecode, m_palette, gfx_ncb3);

View File

@ -93,7 +93,7 @@ private:
DECLARE_WRITE_LINE_MEMBER(hitpoker_irq); DECLARE_WRITE_LINE_MEMBER(hitpoker_irq);
DECLARE_READ8_MEMBER(irq_clear_r); DECLARE_READ8_MEMBER(irq_clear_r);
virtual void video_start() override; virtual void video_start() override;
uint32_t screen_update_hitpoker(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_hitpoker(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
required_device<mc68hc11_cpu_device> m_maincpu; required_device<mc68hc11_cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode; required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette; required_device<palette_device> m_palette;
@ -111,12 +111,12 @@ void hitpoker_state::video_start()
m_colorram = std::make_unique<uint8_t[]>(0x2000); m_colorram = std::make_unique<uint8_t[]>(0x2000);
} }
uint32_t hitpoker_state::screen_update_hitpoker(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t hitpoker_state::screen_update_hitpoker(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
int count = 0; int count = 0;
int y,x; int y,x;
bitmap.fill(0, cliprect); bitmap.fill(rgb_t::black(), cliprect);
for (y=0;y<31;y++) for (y=0;y<31;y++)
{ {
@ -478,7 +478,6 @@ void hitpoker_state::hitpoker(machine_config &config)
screen.set_size(648, 480); //setted by the CRTC screen.set_size(648, 480); //setted by the CRTC
screen.set_visarea(0, 648-1, 0, 240-1); screen.set_visarea(0, 648-1, 0, 240-1);
screen.set_screen_update(FUNC(hitpoker_state::screen_update_hitpoker)); screen.set_screen_update(FUNC(hitpoker_state::screen_update_hitpoker));
screen.set_palette(m_palette);
h46505_device &crtc(H46505(config, "crtc", CRTC_CLOCK/2)); /* hand tuned to get ~60 fps */ h46505_device &crtc(H46505(config, "crtc", CRTC_CLOCK/2)); /* hand tuned to get ~60 fps */
crtc.set_screen("screen"); crtc.set_screen("screen");

View File

@ -114,7 +114,7 @@ private:
DECLARE_WRITE8_MEMBER(testb_w); DECLARE_WRITE8_MEMBER(testb_w);
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
void jokrwild_palette(palette_device &palette) const; void jokrwild_palette(palette_device &palette) const;
uint32_t screen_update_jokrwild(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_jokrwild(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void jokrwild_map(address_map &map); void jokrwild_map(address_map &map);
}; };
@ -154,7 +154,7 @@ void jokrwild_state::video_start()
m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(jokrwild_state::get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 24, 26); m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(jokrwild_state::get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 24, 26);
} }
uint32_t jokrwild_state::screen_update_jokrwild(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t jokrwild_state::screen_update_jokrwild(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -438,7 +438,6 @@ void jokrwild_state::jokrwild(machine_config &config)
screen.set_size((32+1)*8, (32+1)*8); // From MC6845, registers 00 & 04. (value-1) screen.set_size((32+1)*8, (32+1)*8); // From MC6845, registers 00 & 04. (value-1)
screen.set_visarea(0*8, 24*8-1, 0*8, 26*8-1); // From MC6845, registers 01 & 06. screen.set_visarea(0*8, 24*8-1, 0*8, 26*8-1); // From MC6845, registers 01 & 06.
screen.set_screen_update(FUNC(jokrwild_state::screen_update_jokrwild)); screen.set_screen_update(FUNC(jokrwild_state::screen_update_jokrwild));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_jokrwild); GFXDECODE(config, m_gfxdecode, "palette", gfx_jokrwild);
PALETTE(config, "palette", FUNC(jokrwild_state::jokrwild_palette), 512); PALETTE(config, "palette", FUNC(jokrwild_state::jokrwild_palette), 512);

View File

@ -225,7 +225,7 @@ private:
DECLARE_WRITE8_MEMBER(unk_w); DECLARE_WRITE8_MEMBER(unk_w);
DECLARE_READ8_MEMBER(mux_port_r); DECLARE_READ8_MEMBER(mux_port_r);
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
uint32_t screen_update_jubileep(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_jubileep(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(jubileep_interrupt); INTERRUPT_GEN_MEMBER(jubileep_interrupt);
void jubileep_cru_map(address_map &map); void jubileep_cru_map(address_map &map);
void jubileep_map(address_map &map); void jubileep_map(address_map &map);
@ -284,7 +284,7 @@ void jubilee_state::video_start()
m_bg_tilemap->set_scrolldx(8, 0); /* guess */ m_bg_tilemap->set_scrolldx(8, 0); /* guess */
} }
uint32_t jubilee_state::screen_update_jubileep(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t jubilee_state::screen_update_jubileep(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -687,7 +687,6 @@ void jubilee_state::jubileep(machine_config &config)
screen.set_size(32*8, 32*8); /* (47+1*8, 38+1*8) from CRTC settings */ screen.set_size(32*8, 32*8); /* (47+1*8, 38+1*8) from CRTC settings */
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); /* (32*8, 32*8) from CRTC settings */ screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); /* (32*8, 32*8) from CRTC settings */
screen.set_screen_update(FUNC(jubilee_state::screen_update_jubileep)); screen.set_screen_update(FUNC(jubilee_state::screen_update_jubileep));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_jubileep); GFXDECODE(config, m_gfxdecode, "palette", gfx_jubileep);
PALETTE(config, "palette").set_entries(8); PALETTE(config, "palette").set_entries(8);

View File

@ -127,8 +127,8 @@ private:
TILE_GET_INFO_MEMBER(get_sc1_tile_info); TILE_GET_INFO_MEMBER(get_sc1_tile_info);
void kingdrby_palette(palette_device &palette) const; void kingdrby_palette(palette_device &palette) const;
void kingdrbb_palette(palette_device &palette) const; void kingdrbb_palette(palette_device &palette) const;
uint32_t screen_update_kingdrby(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_kingdrby(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect); void draw_sprites(bitmap_rgb32 &bitmap, const rectangle &cliprect);
void cowrace_sound_io(address_map &map); void cowrace_sound_io(address_map &map);
void cowrace_sound_map(address_map &map); void cowrace_sound_map(address_map &map);
@ -227,7 +227,7 @@ static const uint8_t hw_sprite[16] =
0x22, 0x22, 0x22, 0x22, 0x22, 0x11, 0x22, 0x22 0x22, 0x22, 0x22, 0x22, 0x22, 0x11, 0x22, 0x22
}; };
void kingdrby_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect) void kingdrby_state::draw_sprites(bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
uint8_t *spriteram = m_spriteram; uint8_t *spriteram = m_spriteram;
int count = 0; int count = 0;
@ -271,7 +271,7 @@ void kingdrby_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprec
} }
} }
uint32_t kingdrby_state::screen_update_kingdrby(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t kingdrby_state::screen_update_kingdrby(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
const rectangle &visarea = screen.visible_area(); const rectangle &visarea = screen.visible_area();
rectangle clip; rectangle clip;
@ -1007,7 +1007,6 @@ void kingdrby_state::kingdrby(machine_config &config)
screen.set_size(256, 256); screen.set_size(256, 256);
screen.set_visarea(0, 256-1, 0, 224-1); /* controlled by CRTC */ screen.set_visarea(0, 256-1, 0, 224-1); /* controlled by CRTC */
screen.set_screen_update(FUNC(kingdrby_state::screen_update_kingdrby)); screen.set_screen_update(FUNC(kingdrby_state::screen_update_kingdrby));
screen.set_palette(m_palette);
mc6845_device &crtc(MC6845(config, "crtc", CLK_1/32)); /* 53.333 Hz. guess */ mc6845_device &crtc(MC6845(config, "crtc", CLK_1/32)); /* 53.333 Hz. guess */
crtc.set_screen("screen"); crtc.set_screen("screen");

View File

@ -136,7 +136,7 @@ private:
DECLARE_WRITE8_MEMBER(counters_w); DECLARE_WRITE8_MEMBER(counters_w);
DECLARE_READ8_MEMBER(test_r); DECLARE_READ8_MEMBER(test_r);
template<uint8_t Reel> TILE_GET_INFO_MEMBER(get_reel_tile_info); template<uint8_t Reel> TILE_GET_INFO_MEMBER(get_reel_tile_info);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(irq); INTERRUPT_GEN_MEMBER(irq);
void _7smash_io(address_map &map); void _7smash_io(address_map &map);
@ -202,14 +202,14 @@ void luckgrln_state::video_start()
save_item(NAME(m_palette_ram)); save_item(NAME(m_palette_ram));
} }
uint32_t luckgrln_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t luckgrln_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
int count = 0; int count = 0;
const rectangle &visarea = screen.visible_area(); const rectangle &visarea = screen.visible_area();
rectangle clip = visarea; rectangle clip = visarea;
bitmap.fill(0, cliprect); bitmap.fill(rgb_t::black(), cliprect);
for (int i = 0; i < 64; i++) for (int i = 0; i < 64; i++)
{ {
@ -881,7 +881,6 @@ void luckgrln_state::luckgrln(machine_config &config)
screen.set_size(512, 256); screen.set_size(512, 256);
screen.set_visarea(0, 512-1, 0, 256-1); screen.set_visarea(0, 512-1, 0, 256-1);
screen.set_screen_update(FUNC(luckgrln_state::screen_update)); screen.set_screen_update(FUNC(luckgrln_state::screen_update));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_luckgrln); GFXDECODE(config, m_gfxdecode, m_palette, gfx_luckgrln);
PALETTE(config, m_palette).set_entries(0x8000); PALETTE(config, m_palette).set_entries(0x8000);

View File

@ -491,7 +491,7 @@ private:
void magicfly_palette(palette_device &palette) const; void magicfly_palette(palette_device &palette) const;
void bchance_palette(palette_device &palette) const; void bchance_palette(palette_device &palette) const;
DECLARE_VIDEO_START(7mezzo); DECLARE_VIDEO_START(7mezzo);
uint32_t screen_update_magicfly(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_magicfly(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void magicfly_map(address_map &map); void magicfly_map(address_map &map);
}; };
@ -576,7 +576,7 @@ VIDEO_START_MEMBER(magicfly_state, 7mezzo)
} }
uint32_t magicfly_state::screen_update_magicfly(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t magicfly_state::screen_update_magicfly(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -955,7 +955,6 @@ void magicfly_state::magicfly(machine_config &config)
screen.set_size((39+1)*8, (31+1)*8); /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1). */ screen.set_size((39+1)*8, (31+1)*8); /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1). */
screen.set_visarea(0*8, 32*8-1, 0*8, 29*8-1); /* Taken from MC6845 init, registers 01 & 06. */ screen.set_visarea(0*8, 32*8-1, 0*8, 29*8-1); /* Taken from MC6845 init, registers 01 & 06. */
screen.set_screen_update(FUNC(magicfly_state::screen_update_magicfly)); screen.set_screen_update(FUNC(magicfly_state::screen_update_magicfly));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_magicfly); GFXDECODE(config, m_gfxdecode, "palette", gfx_magicfly);
PALETTE(config, "palette", FUNC(magicfly_state::magicfly_palette), 32); PALETTE(config, "palette", FUNC(magicfly_state::magicfly_palette), 32);

View File

@ -507,7 +507,7 @@ private:
DECLARE_WRITE8_MEMBER(pulses_w); DECLARE_WRITE8_MEMBER(pulses_w);
TILE_GET_INFO_MEMBER(bg_get_tile_info); TILE_GET_INFO_MEMBER(bg_get_tile_info);
TILE_GET_INFO_MEMBER(fg_get_tile_info); TILE_GET_INFO_MEMBER(fg_get_tile_info);
uint32_t screen_update_majorpkr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_majorpkr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void map(address_map &map); void map(address_map &map);
void palettebanks(address_map &map); void palettebanks(address_map &map);
void portmap(address_map &map); void portmap(address_map &map);
@ -562,7 +562,7 @@ void majorpkr_state::video_start()
} }
uint32_t majorpkr_state::screen_update_majorpkr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t majorpkr_state::screen_update_majorpkr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0);
m_fg_tilemap->draw(screen, bitmap, cliprect, 0); m_fg_tilemap->draw(screen, bitmap, cliprect, 0);
@ -1021,7 +1021,6 @@ void majorpkr_state::majorpkr(machine_config &config)
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
screen.set_raw(CRTC_CLOCK*16, (47+1)*16, 0, (36*16)-16, (36+1)*8, 0, (28*8)); // from CRTC registers. screen.set_raw(CRTC_CLOCK*16, (47+1)*16, 0, (36*16)-16, (36+1)*8, 0, (28*8)); // from CRTC registers.
screen.set_screen_update(FUNC(majorpkr_state::screen_update_majorpkr)); screen.set_screen_update(FUNC(majorpkr_state::screen_update_majorpkr));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_majorpkr); GFXDECODE(config, m_gfxdecode, "palette", gfx_majorpkr);

View File

@ -247,7 +247,7 @@ private:
DECLARE_WRITE8_MEMBER(mpu12wbk_colorram_w); DECLARE_WRITE8_MEMBER(mpu12wbk_colorram_w);
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
void mpu12wbk_palette(palette_device &palette) const; void mpu12wbk_palette(palette_device &palette) const;
uint32_t screen_update_mpu12wbk(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_mpu12wbk(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void mpu12wbk_map(address_map &map); void mpu12wbk_map(address_map &map);
}; };
@ -293,7 +293,7 @@ void mpu12wbk_state::video_start()
} }
uint32_t mpu12wbk_state::screen_update_mpu12wbk(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t mpu12wbk_state::screen_update_mpu12wbk(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -509,7 +509,6 @@ void mpu12wbk_state::mpu12wbk(machine_config &config)
screen.set_size((32+1)*8, (32+1)*8); /* From MC6845, registers 00 & 04. (value-1) */ screen.set_size((32+1)*8, (32+1)*8); /* From MC6845, registers 00 & 04. (value-1) */
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); /* Driven by MC6845, registers 01 & 06 */ screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); /* Driven by MC6845, registers 01 & 06 */
screen.set_screen_update(FUNC(mpu12wbk_state::screen_update_mpu12wbk)); screen.set_screen_update(FUNC(mpu12wbk_state::screen_update_mpu12wbk));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_mpu12wbk); GFXDECODE(config, m_gfxdecode, "palette", gfx_mpu12wbk);
PALETTE(config, "palette", FUNC(mpu12wbk_state::mpu12wbk_palette), 512); PALETTE(config, "palette", FUNC(mpu12wbk_state::mpu12wbk_palette), 512);

View File

@ -39,7 +39,7 @@ private:
optional_shared_ptr<uint8_t> m_dealem_videoram; optional_shared_ptr<uint8_t> m_dealem_videoram;
DECLARE_MACHINE_RESET(dealem_vid); DECLARE_MACHINE_RESET(dealem_vid);
void dealem_palette(palette_device &palette) const; void dealem_palette(palette_device &palette) const;
uint32_t screen_update_dealem(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_dealem(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(dealem_vsync_changed); DECLARE_WRITE_LINE_MEMBER(dealem_vsync_changed);
required_device<gfxdecode_device> m_gfxdecode; required_device<gfxdecode_device> m_gfxdecode;
void dealem_memmap(address_map &map); void dealem_memmap(address_map &map);
@ -124,7 +124,7 @@ void mpu4dealem_state::dealem_palette(palette_device &palette) const
} }
uint32_t mpu4dealem_state::screen_update_dealem(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t mpu4dealem_state::screen_update_dealem(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
int count = 0; int count = 0;
for (int y = 0; y < 32; y++) for (int y = 0; y < 32; y++)
@ -220,7 +220,6 @@ void mpu4dealem_state::dealem(machine_config &config)
screen.set_visarea(0*8, 40*8-1, 0*8, 31*8-1); /* Taken from 6845 init, registers 01 & 06 */ screen.set_visarea(0*8, 40*8-1, 0*8, 31*8-1); /* Taken from 6845 init, registers 01 & 06 */
screen.set_refresh_hz(56); /* Measured accurately from the flip-flop, but 6845 handles this */ screen.set_refresh_hz(56); /* Measured accurately from the flip-flop, but 6845 handles this */
screen.set_screen_update(FUNC(mpu4dealem_state::screen_update_dealem)); screen.set_screen_update(FUNC(mpu4dealem_state::screen_update_dealem));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_dealem); GFXDECODE(config, m_gfxdecode, m_palette, gfx_dealem);

View File

@ -141,7 +141,7 @@ private:
DECLARE_WRITE8_MEMBER(outport_w); DECLARE_WRITE8_MEMBER(outport_w);
void murogem_palette(palette_device &palette) const; void murogem_palette(palette_device &palette) const;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void murogem_map(address_map &map); void murogem_map(address_map &map);
}; };
@ -227,7 +227,7 @@ void murogem_state::murogem_palette(palette_device &palette) const
{ {
} }
uint32_t murogem_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t murogem_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
bitmap.fill(0, cliprect); bitmap.fill(0, cliprect);
@ -263,7 +263,6 @@ void murogem_state::murogem(machine_config &config)
screen.set_size((39+1)*8, (38+1)*8); screen.set_size((39+1)*8, (38+1)*8);
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1);
screen.set_screen_update(FUNC(murogem_state::screen_update)); screen.set_screen_update(FUNC(murogem_state::screen_update));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_murogem); GFXDECODE(config, m_gfxdecode, m_palette, gfx_murogem);
PALETTE(config, m_palette, FUNC(murogem_state::murogem_palette), 0x100); PALETTE(config, m_palette, FUNC(murogem_state::murogem_palette), 0x100);

View File

@ -86,7 +86,7 @@ private:
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
void nibble_palette(palette_device &palette) const; void nibble_palette(palette_device &palette) const;
uint32_t screen_update_nibble(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_nibble(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(nibble_interrupt); INTERRUPT_GEN_MEMBER(nibble_interrupt);
void nibble_map(address_map &map); void nibble_map(address_map &map);
@ -125,7 +125,7 @@ void nibble_state::video_start()
m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(nibble_state::get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 32); m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(nibble_state::get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 32);
} }
uint32_t nibble_state::screen_update_nibble(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t nibble_state::screen_update_nibble(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -346,7 +346,6 @@ void nibble_state::nibble(machine_config &config)
screen.set_size(32*8, 32*8); screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1);
screen.set_screen_update(FUNC(nibble_state::screen_update_nibble)); screen.set_screen_update(FUNC(nibble_state::screen_update_nibble));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_nibble); GFXDECODE(config, m_gfxdecode, "palette", gfx_nibble);

View File

@ -346,7 +346,7 @@ private:
TIMER_CALLBACK_MEMBER(assert_lp); TIMER_CALLBACK_MEMBER(assert_lp);
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
MC6845_ON_UPDATE_ADDR_CHANGED(crtc_addr); MC6845_ON_UPDATE_ADDR_CHANGED(crtc_addr);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void load_superdata(const char *bank_name); void load_superdata(const char *bank_name);
void peplus_palette(palette_device &palette) const; void peplus_palette(palette_device &palette) const;
void handle_lightpen(); void handle_lightpen();
@ -966,7 +966,7 @@ void peplus_state::video_start()
save_item(NAME(m_vid_address)); save_item(NAME(m_vid_address));
} }
uint32_t peplus_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t peplus_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
@ -1388,7 +1388,6 @@ void peplus_state::peplus(machine_config &config)
m_screen->set_size((52+1)*8, (31+1)*8); m_screen->set_size((52+1)*8, (31+1)*8);
m_screen->set_visarea(0*8, 40*8-1, 0*8, 25*8-1); m_screen->set_visarea(0*8, 40*8-1, 0*8, 25*8-1);
m_screen->set_screen_update(FUNC(peplus_state::screen_update)); m_screen->set_screen_update(FUNC(peplus_state::screen_update));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_peplus); GFXDECODE(config, m_gfxdecode, m_palette, gfx_peplus);
PALETTE(config, m_palette, FUNC(peplus_state::peplus_palette), 16*16*2); PALETTE(config, m_palette, FUNC(peplus_state::peplus_palette), 16*16*2);

View File

@ -110,7 +110,7 @@ private:
virtual void video_start() override; virtual void video_start() override;
void progolf_palette(palette_device &palette) const; void progolf_palette(palette_device &palette) const;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void main_cpu(address_map &map); void main_cpu(address_map &map);
void sound_cpu(address_map &map); void sound_cpu(address_map &map);
}; };
@ -136,7 +136,7 @@ void progolf_state::video_start()
} }
uint32_t progolf_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t progolf_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
int count,color,x,y,xi,yi; int count,color,x,y,xi,yi;
@ -175,7 +175,7 @@ uint32_t progolf_state::screen_update(screen_device &screen, bitmap_ind16 &bitma
color = m_fg_fb[(xi+yi*8)+count*0x40]; color = m_fg_fb[(xi+yi*8)+count*0x40];
if(color != 0 && cliprect.contains(x+yi, 256-y+xi)) if(color != 0 && cliprect.contains(x+yi, 256-y+xi))
bitmap.pix16(x+yi, 256-y+xi) = m_palette->pen((color & 0x7)); bitmap.pix32(x+yi, 256-y+xi) = m_palette->pen((color & 0x7));
} }
} }
@ -440,7 +440,6 @@ void progolf_state::progolf(machine_config &config)
screen.set_size(256, 256); screen.set_size(256, 256);
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1);
screen.set_screen_update(FUNC(progolf_state::screen_update)); screen.set_screen_update(FUNC(progolf_state::screen_update));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_progolf); GFXDECODE(config, m_gfxdecode, m_palette, gfx_progolf);
PALETTE(config, m_palette, FUNC(progolf_state::progolf_palette), 32 * 3); PALETTE(config, m_palette, FUNC(progolf_state::progolf_palette), 32 * 3);

View File

@ -44,7 +44,7 @@ private:
required_shared_ptr<uint8_t> m_cram; required_shared_ptr<uint8_t> m_cram;
uint8_t m_hbeat; uint8_t m_hbeat;
virtual void video_start() override; virtual void video_start() override;
uint32_t screen_update_royalgum(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_royalgum(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu; required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode; required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette; required_device<palette_device> m_palette;
@ -56,7 +56,7 @@ void rgum_state::video_start()
{ {
} }
uint32_t rgum_state::screen_update_royalgum(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t rgum_state::screen_update_royalgum(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
int x,y,count; int x,y,count;
gfx_element *gfx = m_gfxdecode->gfx(0); gfx_element *gfx = m_gfxdecode->gfx(0);
@ -258,7 +258,6 @@ void rgum_state::rgum(machine_config &config)
screen.set_size(256, 256); screen.set_size(256, 256);
screen.set_visarea(0, 256-1, 0, 256-1); screen.set_visarea(0, 256-1, 0, 256-1);
screen.set_screen_update(FUNC(rgum_state::screen_update_royalgum)); screen.set_screen_update(FUNC(rgum_state::screen_update_royalgum));
screen.set_palette(m_palette);
mc6845_device &crtc(MC6845(config, "crtc", 24000000/16)); /* unknown clock & type, hand tuned to get ~50 fps (?) */ mc6845_device &crtc(MC6845(config, "crtc", 24000000/16)); /* unknown clock & type, hand tuned to get ~50 fps (?) */
crtc.set_screen("screen"); crtc.set_screen("screen");

View File

@ -115,7 +115,8 @@ class royalmah_state : public driver_device
public: public:
royalmah_state(const machine_config &mconfig, device_type type, const char *tag) : royalmah_state(const machine_config &mconfig, device_type type, const char *tag) :
driver_device(mconfig, type, tag), driver_device(mconfig, type, tag),
m_maincpu(*this,"maincpu"), m_maincpu(*this, "maincpu"),
m_palette(*this, "palette"),
m_ay(*this, "aysnd"), m_ay(*this, "aysnd"),
m_videoram(*this, "videoram"), m_videoram(*this, "videoram"),
m_audiocpu(*this, "audiocpu"), m_audiocpu(*this, "audiocpu"),
@ -250,7 +251,7 @@ private:
void royalmah_palette(palette_device &palette) const; void royalmah_palette(palette_device &palette) const;
void mjderngr_palette(palette_device &palette) const; void mjderngr_palette(palette_device &palette) const;
uint32_t screen_update_royalmah(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_royalmah(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(suzume_irq); INTERRUPT_GEN_MEMBER(suzume_irq);
@ -293,6 +294,7 @@ private:
virtual void machine_start() override; virtual void machine_start() override;
required_device<cpu_device> m_maincpu; required_device<cpu_device> m_maincpu;
required_device<palette_device> m_palette;
required_device<ay8910_device> m_ay; required_device<ay8910_device> m_ay;
required_shared_ptr<uint8_t> m_videoram; required_shared_ptr<uint8_t> m_videoram;
optional_device<cpu_device> m_audiocpu; optional_device<cpu_device> m_audiocpu;
@ -417,7 +419,7 @@ WRITE8_MEMBER(royalmah_state::mjderngr_palbank_w)
} }
uint32_t royalmah_state::screen_update_royalmah(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t royalmah_state::screen_update_royalmah(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
for (offs_t offs = 0; offs < 0x4000; offs++) for (offs_t offs = 0; offs < 0x4000; offs++)
{ {
@ -431,7 +433,7 @@ uint32_t royalmah_state::screen_update_royalmah(screen_device &screen, bitmap_in
{ {
uint8_t pen = ((data2 >> 1) & 0x08) | ((data2 << 2) & 0x04) | ((data1 >> 3) & 0x02) | ((data1 >> 0) & 0x01); uint8_t pen = ((data2 >> 1) & 0x08) | ((data2 << 2) & 0x04) | ((data1 >> 3) & 0x02) | ((data1 >> 0) & 0x01);
bitmap.pix16(y, x) = (m_palette_base << 4) | pen; bitmap.pix32(y, x) = m_palette->pen((m_palette_base << 4) | pen);
x = (m_flip_screen) ? x - 1 : x + 1; x = (m_flip_screen) ? x - 1 : x + 1;
data1 = data1 >> 1; data1 = data1 >> 1;
@ -3551,7 +3553,6 @@ void royalmah_state::royalmah(machine_config &config)
screen.set_refresh_hz(60); screen.set_refresh_hz(60);
screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500) /* not accurate */); screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500) /* not accurate */);
screen.set_screen_update(FUNC(royalmah_state::screen_update_royalmah)); screen.set_screen_update(FUNC(royalmah_state::screen_update_royalmah));
screen.set_palette("palette");
/* sound hardware */ /* sound hardware */
SPEAKER(config, "speaker").front_center(); SPEAKER(config, "speaker").front_center();

View File

@ -140,7 +140,7 @@ private:
DECLARE_WRITE8_MEMBER(banksel_w); DECLARE_WRITE8_MEMBER(banksel_w);
DECLARE_WRITE8_MEMBER(lamps_w); DECLARE_WRITE8_MEMBER(lamps_w);
void sanremo_palette(palette_device &palette) const; void sanremo_palette(palette_device &palette) const;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void sanremo_map(address_map &map); void sanremo_map(address_map &map);
void sanremo_portmap(address_map &map); void sanremo_portmap(address_map &map);
}; };
@ -176,7 +176,7 @@ void sanremo_state::video_start()
save_item(NAME(m_banksel)); save_item(NAME(m_banksel));
} }
uint32_t sanremo_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t sanremo_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -372,7 +372,6 @@ void sanremo_state::sanremo(machine_config &config)
screen.set_size(70*8, 41*8); screen.set_size(70*8, 41*8);
screen.set_visarea(0, 48*8-1, 0, 38*8-1); screen.set_visarea(0, 48*8-1, 0, 38*8-1);
screen.set_screen_update(FUNC(sanremo_state::screen_update)); screen.set_screen_update(FUNC(sanremo_state::screen_update));
screen.set_palette("palette");
mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK)); mc6845_device &crtc(MC6845(config, "crtc", CRTC_CLOCK));
// *** MC6845 init *** // *** MC6845 init ***

View File

@ -198,7 +198,7 @@ private:
TILE_GET_INFO_MEMBER(get_reel_2_tile_info); TILE_GET_INFO_MEMBER(get_reel_2_tile_info);
TILE_GET_INFO_MEMBER(get_reel_3_tile_info); TILE_GET_INFO_MEMBER(get_reel_3_tile_info);
TILE_GET_INFO_MEMBER(get_reel_4_tile_info); TILE_GET_INFO_MEMBER(get_reel_4_tile_info);
uint32_t screen_update_skylncr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_skylncr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(skylncr_vblank_interrupt); INTERRUPT_GEN_MEMBER(skylncr_vblank_interrupt);
void bdream97_opcode_map(address_map &map); void bdream97_opcode_map(address_map &map);
void io_map_mbutrfly(address_map &map); void io_map_mbutrfly(address_map &map);
@ -314,11 +314,11 @@ void skylncr_state::video_start()
} }
uint32_t skylncr_state::screen_update_skylncr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t skylncr_state::screen_update_skylncr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
int i; int i;
bitmap.fill(0, cliprect); bitmap.fill(rgb_t::black(), cliprect);
m_reel_1_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_reel_1_tilemap->draw(screen, bitmap, cliprect, 0, 0);
// are these hardcoded, or registers? // are these hardcoded, or registers?
@ -1675,7 +1675,6 @@ void skylncr_state::skylncr(machine_config &config)
screen.set_size(512, 256); screen.set_size(512, 256);
screen.set_visarea(0, 512-1, 0, 256-1); screen.set_visarea(0, 512-1, 0, 256-1);
screen.set_screen_update(FUNC(skylncr_state::screen_update_skylncr)); screen.set_screen_update(FUNC(skylncr_state::screen_update_skylncr));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_skylncr); GFXDECODE(config, m_gfxdecode, m_palette, gfx_skylncr);
PALETTE(config, m_palette).set_entries(0x200); PALETTE(config, m_palette).set_entries(0x200);

View File

@ -819,7 +819,6 @@ void snk6502_state::sasuke(machine_config &config)
screen.set_size(32*8, 32*8); screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 0*8, 28*8-1); screen.set_visarea(0*8, 32*8-1, 0*8, 28*8-1);
screen.set_screen_update(FUNC(snk6502_state::screen_update)); screen.set_screen_update(FUNC(snk6502_state::screen_update));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_sasuke); GFXDECODE(config, m_gfxdecode, m_palette, gfx_sasuke);
PALETTE(config, m_palette, FUNC(snk6502_state::satansat_palette), 32); PALETTE(config, m_palette, FUNC(snk6502_state::satansat_palette), 32);
@ -864,7 +863,6 @@ void snk6502_state::vanguard(machine_config &config)
screen.set_size(32*8, 32*8); screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 0*8, 28*8-1); screen.set_visarea(0*8, 32*8-1, 0*8, 28*8-1);
screen.set_screen_update(FUNC(snk6502_state::screen_update)); screen.set_screen_update(FUNC(snk6502_state::screen_update));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_vanguard); GFXDECODE(config, m_gfxdecode, m_palette, gfx_vanguard);
PALETTE(config, m_palette, FUNC(snk6502_state::snk6502_palette), 64); PALETTE(config, m_palette, FUNC(snk6502_state::snk6502_palette), 64);

View File

@ -322,7 +322,6 @@ void speedatk_state::speedatk(machine_config &config)
screen.set_size(320, 256); screen.set_size(320, 256);
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1);
screen.set_screen_update(FUNC(speedatk_state::screen_update)); screen.set_screen_update(FUNC(speedatk_state::screen_update));
screen.set_palette(m_palette);
H46505(config, m_crtc, MASTER_CLOCK/16); /* hand tuned to get ~60 fps */ H46505(config, m_crtc, MASTER_CLOCK/16); /* hand tuned to get ~60 fps */
m_crtc->set_screen("screen"); m_crtc->set_screen("screen");

View File

@ -49,7 +49,7 @@ private:
DECLARE_WRITE8_MEMBER(out_w); DECLARE_WRITE8_MEMBER(out_w);
void summit_palette(palette_device &palette) const; void summit_palette(palette_device &palette) const;
uint32_t screen_update_summit(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_summit(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void mainmap(address_map &map); void mainmap(address_map &map);
}; };
@ -58,7 +58,7 @@ void summit_state::video_start()
{ {
} }
uint32_t summit_state::screen_update_summit(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t summit_state::screen_update_summit(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
gfx_element *gfx = m_gfxdecode->gfx(0); gfx_element *gfx = m_gfxdecode->gfx(0);
int count = 0x0000; int count = 0x0000;
@ -328,7 +328,6 @@ void summit_state::summit(machine_config &config)
screen.set_size(256, 256); screen.set_size(256, 256);
screen.set_visarea(0, 256-1, 16, 256-16-1); screen.set_visarea(0, 256-1, 16, 256-16-1);
screen.set_screen_update(FUNC(summit_state::screen_update_summit)); screen.set_screen_update(FUNC(summit_state::screen_update_summit));
screen.set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_summit); GFXDECODE(config, m_gfxdecode, m_palette, gfx_summit);
PALETTE(config, m_palette, FUNC(summit_state::summit_palette), 256); PALETTE(config, m_palette, FUNC(summit_state::summit_palette), 256);

View File

@ -201,7 +201,7 @@ private:
DECLARE_WRITE8_MEMBER(supercrd_colorram_w); DECLARE_WRITE8_MEMBER(supercrd_colorram_w);
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
void supercrd_palette(palette_device &palette) const; void supercrd_palette(palette_device &palette) const;
uint32_t screen_update_supercrd(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_supercrd(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void supercrd_map(address_map &map); void supercrd_map(address_map &map);
}; };
@ -283,7 +283,7 @@ void supercrd_state::video_start()
} }
uint32_t supercrd_state::screen_update_supercrd(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t supercrd_state::screen_update_supercrd(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -441,7 +441,6 @@ void supercrd_state::supercrd(machine_config &config)
screen.set_size((124+1)*4, (30+1)*8); /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */ screen.set_size((124+1)*4, (30+1)*8); /* Taken from MC6845 init, registers 00 & 04. Normally programmed with (value-1) */
screen.set_visarea(0*4, 96*4-1, 0*8, 29*8-1); /* Taken from MC6845 init, registers 01 & 06 */ screen.set_visarea(0*4, 96*4-1, 0*8, 29*8-1); /* Taken from MC6845 init, registers 01 & 06 */
screen.set_screen_update(FUNC(supercrd_state::screen_update_supercrd)); screen.set_screen_update(FUNC(supercrd_state::screen_update_supercrd));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_supercrd); GFXDECODE(config, m_gfxdecode, "palette", gfx_supercrd);
PALETTE(config, "palette", FUNC(supercrd_state::supercrd_palette), 0x200); PALETTE(config, "palette", FUNC(supercrd_state::supercrd_palette), 0x200);

View File

@ -251,7 +251,7 @@ private:
uint8_t inputs_r(offs_t offset); uint8_t inputs_r(offs_t offset);
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
void tmspoker_palette(palette_device &palette) const; void tmspoker_palette(palette_device &palette) const;
uint32_t screen_update_tmspoker(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_tmspoker(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(tmspoker_interrupt); INTERRUPT_GEN_MEMBER(tmspoker_interrupt);
void tmspoker_cru_map(address_map &map); void tmspoker_cru_map(address_map &map);
@ -288,7 +288,7 @@ void tmspoker_state::video_start()
m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(tmspoker_state::get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 32); m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(tmspoker_state::get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 32);
} }
uint32_t tmspoker_state::screen_update_tmspoker(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t tmspoker_state::screen_update_tmspoker(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;
@ -592,7 +592,6 @@ void tmspoker_state::tmspoker(machine_config &config)
screen.set_size(32*8, 32*8); screen.set_size(32*8, 32*8);
screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1);
screen.set_screen_update(FUNC(tmspoker_state::screen_update_tmspoker)); screen.set_screen_update(FUNC(tmspoker_state::screen_update_tmspoker));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_tmspoker); GFXDECODE(config, m_gfxdecode, "palette", gfx_tmspoker);
PALETTE(config, "palette", FUNC(tmspoker_state::tmspoker_palette), 256); PALETTE(config, "palette", FUNC(tmspoker_state::tmspoker_palette), 256);

View File

@ -1964,7 +1964,6 @@ void toaplan1_rallybik_state::rallybik(machine_config &config)
m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL55, VBEND, VBSTART); m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL55, VBEND, VBSTART);
m_screen->set_screen_update(FUNC(toaplan1_rallybik_state::screen_update)); m_screen->set_screen_update(FUNC(toaplan1_rallybik_state::screen_update));
m_screen->screen_vblank().set(FUNC(toaplan1_rallybik_state::screen_vblank)); m_screen->screen_vblank().set(FUNC(toaplan1_rallybik_state::screen_vblank));
m_screen->set_palette(m_palette);
TOAPLAN_SCU(config, m_spritegen, 0); TOAPLAN_SCU(config, m_spritegen, 0);
m_spritegen->set_palette(m_palette); m_spritegen->set_palette(m_palette);
@ -1999,7 +1998,6 @@ void toaplan1_state::truxton(machine_config &config)
m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART); m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART);
m_screen->set_screen_update(FUNC(toaplan1_state::screen_update)); m_screen->set_screen_update(FUNC(toaplan1_state::screen_update));
m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank)); m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1); GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16)); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16));
@ -2030,7 +2028,6 @@ void toaplan1_state::hellfire(machine_config &config)
m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND+16, VBSTART+16); m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND+16, VBSTART+16);
m_screen->set_screen_update(FUNC(toaplan1_state::screen_update)); m_screen->set_screen_update(FUNC(toaplan1_state::screen_update));
m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank)); m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1); GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16)); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16));
@ -2063,7 +2060,6 @@ void toaplan1_state::zerowing(machine_config &config)
m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND+16, VBSTART+16); m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND+16, VBSTART+16);
m_screen->set_screen_update(FUNC(toaplan1_state::screen_update)); m_screen->set_screen_update(FUNC(toaplan1_state::screen_update));
m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank)); m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1); GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16)); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16));
@ -2099,7 +2095,6 @@ void toaplan1_demonwld_state::demonwld(machine_config &config)
m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL55, VBEND+16, VBSTART+16); m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL55, VBEND+16, VBSTART+16);
m_screen->set_screen_update(FUNC(toaplan1_demonwld_state::screen_update)); m_screen->set_screen_update(FUNC(toaplan1_demonwld_state::screen_update));
m_screen->screen_vblank().set(FUNC(toaplan1_demonwld_state::screen_vblank)); m_screen->screen_vblank().set(FUNC(toaplan1_demonwld_state::screen_vblank));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1); GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16)); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16));
@ -2132,7 +2127,6 @@ void toaplan1_samesame_state::samesame(machine_config &config)
m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART); m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART);
m_screen->set_screen_update(FUNC(toaplan1_samesame_state::screen_update)); m_screen->set_screen_update(FUNC(toaplan1_samesame_state::screen_update));
m_screen->screen_vblank().set(FUNC(toaplan1_samesame_state::screen_vblank)); m_screen->screen_vblank().set(FUNC(toaplan1_samesame_state::screen_vblank));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1); GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16)); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16));
@ -2165,7 +2159,6 @@ void toaplan1_state::outzone(machine_config &config)
m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL55, VBEND, VBSTART); m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL55, VBEND, VBSTART);
m_screen->set_screen_update(FUNC(toaplan1_state::screen_update)); m_screen->set_screen_update(FUNC(toaplan1_state::screen_update));
m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank)); m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1); GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16)); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16));
@ -2198,7 +2191,6 @@ void toaplan1_state::outzonecv(machine_config &config)
m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART); m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART);
m_screen->set_screen_update(FUNC(toaplan1_state::screen_update)); m_screen->set_screen_update(FUNC(toaplan1_state::screen_update));
m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank)); m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1); GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16)); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16));
@ -2231,7 +2223,6 @@ void toaplan1_state::vimana(machine_config &config)
m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART); m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART);
m_screen->set_screen_update(FUNC(toaplan1_state::screen_update)); m_screen->set_screen_update(FUNC(toaplan1_state::screen_update));
m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank)); m_screen->screen_vblank().set(FUNC(toaplan1_state::screen_vblank));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1); GFXDECODE(config, m_gfxdecode, m_palette, gfx_toaplan1);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16)); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, (64*16)+(64*16));

View File

@ -442,7 +442,6 @@ void truco_state::truco(machine_config &config)
screen.set_size(256, 192); screen.set_size(256, 192);
screen.set_visarea(0, 256-1, 0, 192-1); screen.set_visarea(0, 256-1, 0, 192-1);
screen.set_screen_update(FUNC(truco_state::screen_update)); screen.set_screen_update(FUNC(truco_state::screen_update));
screen.set_palette("palette");
PALETTE(config, "palette", FUNC(truco_state::truco_palette), 16); PALETTE(config, "palette", FUNC(truco_state::truco_palette), 16);

View File

@ -699,7 +699,6 @@ void twincobr_state::twincobr(machine_config &config)
m_screen->set_screen_update(FUNC(twincobr_state::screen_update)); m_screen->set_screen_update(FUNC(twincobr_state::screen_update));
m_screen->screen_vblank().set(m_spriteram16, FUNC(buffered_spriteram16_device::vblank_copy_rising)); m_screen->screen_vblank().set(m_spriteram16, FUNC(buffered_spriteram16_device::vblank_copy_rising));
m_screen->screen_vblank().append(FUNC(twincobr_state::twincobr_vblank_irq)); m_screen->screen_vblank().append(FUNC(twincobr_state::twincobr_vblank_irq));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_twincobr); GFXDECODE(config, m_gfxdecode, m_palette, gfx_twincobr);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 1792); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 1792);

View File

@ -234,7 +234,6 @@ void usgames_state::usg32(machine_config &config)
screen.set_size(64*8, 32*8); screen.set_size(64*8, 32*8);
screen.set_visarea(7*8, 57*8-1, 0*8, 31*8-1); screen.set_visarea(7*8, 57*8-1, 0*8, 31*8-1);
screen.set_screen_update(FUNC(usgames_state::screen_update)); screen.set_screen_update(FUNC(usgames_state::screen_update));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_usgames); GFXDECODE(config, m_gfxdecode, "palette", gfx_usgames);
PALETTE(config, "palette", FUNC(usgames_state::usgames_palette), 2*256); PALETTE(config, "palette", FUNC(usgames_state::usgames_palette), 2*256);

View File

@ -196,7 +196,7 @@ private:
uint16_t m_datA40000; uint16_t m_datA40000;
void nvram_init(nvram_device &nvram, void *data, size_t size); void nvram_init(nvram_device &nvram, void *data, size_t size);
uint32_t screen_update_nevada(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_nevada(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void nevada_palette(palette_device &palette) const; void nevada_palette(palette_device &palette) const;
template<int N> uint8_t duart_r(offs_t offset); template<int N> uint8_t duart_r(offs_t offset);
@ -303,7 +303,7 @@ void nevada_state::video_start()
} }
/***************************************************************************/ /***************************************************************************/
uint32_t nevada_state::screen_update_nevada(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t nevada_state::screen_update_nevada(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_tilemap->draw(screen, bitmap, cliprect, 0, 0);
@ -589,7 +589,6 @@ void nevada_state::nevada(machine_config &config)
screen.set_size((42+1)*8, (32+1)*8); /* From MC6845 init, registers 00 & 04 (programmed with value-1). */ screen.set_size((42+1)*8, (32+1)*8); /* From MC6845 init, registers 00 & 04 (programmed with value-1). */
screen.set_visarea(0*8, 31*8-1, 0*8, 31*8-1); /* From MC6845 init, registers 01 & 06. */ screen.set_visarea(0*8, 31*8-1, 0*8, 31*8-1); /* From MC6845 init, registers 01 & 06. */
screen.set_screen_update(FUNC(nevada_state::screen_update_nevada)); screen.set_screen_update(FUNC(nevada_state::screen_update_nevada));
screen.set_palette("palette");
GFXDECODE(config, m_gfxdecode, "palette", gfx_nevada); GFXDECODE(config, m_gfxdecode, "palette", gfx_nevada);
PALETTE(config, "palette", FUNC(nevada_state::nevada_palette), 256); PALETTE(config, "palette", FUNC(nevada_state::nevada_palette), 256);

View File

@ -432,7 +432,6 @@ void wardner_state::wardner(machine_config &config)
m_screen->set_screen_update(FUNC(wardner_state::screen_update)); m_screen->set_screen_update(FUNC(wardner_state::screen_update));
m_screen->screen_vblank().set(m_spriteram8, FUNC(buffered_spriteram8_device::vblank_copy_rising)); m_screen->screen_vblank().set(m_spriteram8, FUNC(buffered_spriteram8_device::vblank_copy_rising));
m_screen->screen_vblank().append(FUNC(wardner_state::wardner_vblank_irq)); m_screen->screen_vblank().append(FUNC(wardner_state::wardner_vblank_irq));
m_screen->set_palette(m_palette);
GFXDECODE(config, m_gfxdecode, m_palette, gfx_wardner); GFXDECODE(config, m_gfxdecode, m_palette, gfx_wardner);
PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 4096); PALETTE(config, m_palette).set_format(palette_device::xBGR_555, 4096);

View File

@ -70,7 +70,7 @@ private:
DECLARE_WRITE_LINE_MEMBER(write_acia_clock); DECLARE_WRITE_LINE_MEMBER(write_acia_clock);
DECLARE_WRITE_LINE_MEMBER(update_aciabaud_scale); DECLARE_WRITE_LINE_MEMBER(update_aciabaud_scale);
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
uint32_t screen_update_calomega(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_calomega(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void calomega_palette(palette_device &palette) const; void calomega_palette(palette_device &palette) const;
void s903mod_map(address_map &map); void s903mod_map(address_map &map);

View File

@ -85,9 +85,9 @@ private:
TILE_GET_INFO_MEMBER(get_tile_info); TILE_GET_INFO_MEMBER(get_tile_info);
void docastle_palette(palette_device &palette) const; void docastle_palette(palette_device &palette) const;
DECLARE_VIDEO_START(dorunrun); DECLARE_VIDEO_START(dorunrun);
uint32_t screen_update_docastle(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_docastle(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void video_start_common( uint32_t tile_transmask ); void video_start_common( uint32_t tile_transmask );
void draw_sprites( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect ); void draw_sprites( screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect );
DECLARE_WRITE_LINE_MEMBER(docastle_tint); DECLARE_WRITE_LINE_MEMBER(docastle_tint);
DECLARE_WRITE_LINE_MEMBER(idsoccer_adpcm_int); DECLARE_WRITE_LINE_MEMBER(idsoccer_adpcm_int);
void docastle_io_map(address_map &map); void docastle_io_map(address_map &map);

View File

@ -52,7 +52,7 @@ protected:
virtual void machine_start() override { m_lamps.resolve(); } virtual void machine_start() override { m_lamps.resolve(); }
virtual void video_start() override; virtual void video_start() override;
void funworld_palette(palette_device &palette) const; void funworld_palette(palette_device &palette) const;
uint32_t screen_update_funworld(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_funworld(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
void magicrd2_map(address_map &map); void magicrd2_map(address_map &map);

View File

@ -56,8 +56,8 @@ public:
DECLARE_VIDEO_START(cherrym); DECLARE_VIDEO_START(cherrym);
void cmast91_palette(palette_device &palette) const; void cmast91_palette(palette_device &palette) const;
void lucky8_palette(palette_device &palette) const; void lucky8_palette(palette_device &palette) const;
uint32_t screen_update_goldstar(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_goldstar(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
uint32_t screen_update_cmast91(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_cmast91(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void ladylinr(machine_config &config); void ladylinr(machine_config &config);
void wcherry(machine_config &config); void wcherry(machine_config &config);
@ -166,7 +166,7 @@ public:
void init_tcl(); void init_tcl();
void init_super7(); void init_super7();
uint32_t screen_update_amcoe1a(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_amcoe1a(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void cm(machine_config &config); void cm(machine_config &config);
void cmasterc(machine_config &config); void cmasterc(machine_config &config);
@ -227,9 +227,9 @@ public:
DECLARE_VIDEO_START(bingowng); DECLARE_VIDEO_START(bingowng);
DECLARE_VIDEO_START(magical); DECLARE_VIDEO_START(magical);
void magodds_palette(palette_device &palette) const; void magodds_palette(palette_device &palette) const;
uint32_t screen_update_bingowng(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_bingowng(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
uint32_t screen_update_magical(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_magical(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
uint32_t screen_update_mbstar(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_mbstar(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(masked_irq); DECLARE_WRITE_LINE_MEMBER(masked_irq);
@ -309,7 +309,7 @@ public:
DECLARE_WRITE8_MEMBER(reel3_attrram_w); DECLARE_WRITE8_MEMBER(reel3_attrram_w);
DECLARE_VIDEO_START(sangho); DECLARE_VIDEO_START(sangho);
uint32_t screen_update_sangho(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_sangho(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void star100(machine_config &config); void star100(machine_config &config);
void star100_map(address_map &map); void star100_map(address_map &map);
@ -355,7 +355,7 @@ public:
void init_unkch4(); void init_unkch4();
DECLARE_VIDEO_START(unkch); DECLARE_VIDEO_START(unkch);
uint32_t screen_update_unkch(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_unkch(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(vblank_irq); DECLARE_WRITE_LINE_MEMBER(vblank_irq);

View File

@ -80,7 +80,7 @@ protected:
DECLARE_VIDEO_START(snk6502); DECLARE_VIDEO_START(snk6502);
void snk6502_palette(palette_device &palette); void snk6502_palette(palette_device &palette);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(satansat_interrupt); INTERRUPT_GEN_MEMBER(satansat_interrupt);
INTERRUPT_GEN_MEMBER(snk6502_interrupt); INTERRUPT_GEN_MEMBER(snk6502_interrupt);

View File

@ -51,7 +51,7 @@ private:
virtual void video_start() override; virtual void video_start() override;
void speedatk_palette(palette_device &palette) const; void speedatk_palette(palette_device &palette) const;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
uint8_t iox_key_matrix_calc(uint8_t p_side); uint8_t iox_key_matrix_calc(uint8_t p_side);

View File

@ -121,7 +121,7 @@ protected:
template<unsigned Layer> TILE_GET_INFO_MEMBER(get_tile_info); template<unsigned Layer> TILE_GET_INFO_MEMBER(get_tile_info);
DECLARE_MACHINE_RESET(zerowing); DECLARE_MACHINE_RESET(zerowing);
u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(screen_vblank); DECLARE_WRITE_LINE_MEMBER(screen_vblank);
void interrupt(); void interrupt();
@ -132,7 +132,10 @@ protected:
void set_scrolls(); void set_scrolls();
void register_common(); void register_common();
void log_vram(); void log_vram();
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect ); void draw_sprites(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect );
void draw_sprite_custom(screen_device &screen, bitmap_rgb32 &dest_bmp, const rectangle &clip, gfx_element *gfx,
u32 code, u32 color, int flipx, int flipy, int sx, int sy,
int priority);
void reset_sound(); void reset_sound();
DECLARE_WRITE_LINE_MEMBER(reset_callback); DECLARE_WRITE_LINE_MEMBER(reset_callback);
required_device<m68000_device> m_maincpu; required_device<m68000_device> m_maincpu;
@ -177,7 +180,7 @@ private:
DECLARE_WRITE_LINE_MEMBER(coin_lockout_1_w); DECLARE_WRITE_LINE_MEMBER(coin_lockout_1_w);
DECLARE_WRITE_LINE_MEMBER(coin_lockout_2_w); DECLARE_WRITE_LINE_MEMBER(coin_lockout_2_w);
u16 tileram_r(offs_t offset); u16 tileram_r(offs_t offset);
u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(screen_vblank); DECLARE_WRITE_LINE_MEMBER(screen_vblank);
required_device<toaplan_scu_device> m_spritegen; required_device<toaplan_scu_device> m_spritegen;

View File

@ -16,6 +16,7 @@ public:
driver_device(mconfig, type, tag), driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"), m_maincpu(*this, "maincpu"),
m_watchdog(*this, "watchdog"), m_watchdog(*this, "watchdog"),
m_palette(*this, "palette"),
m_dac(*this, "dac"), m_dac(*this, "dac"),
m_videoram(*this, "videoram"), m_videoram(*this, "videoram"),
m_battery_ram(*this, "battery_ram") m_battery_ram(*this, "battery_ram")
@ -30,6 +31,7 @@ protected:
private: private:
required_device<cpu_device> m_maincpu; required_device<cpu_device> m_maincpu;
required_device<watchdog_timer_device> m_watchdog; required_device<watchdog_timer_device> m_watchdog;
required_device<palette_device> m_palette;
required_device<dac_bit_interface> m_dac; required_device<dac_bit_interface> m_dac;
required_shared_ptr<uint8_t> m_videoram; required_shared_ptr<uint8_t> m_videoram;
@ -45,7 +47,7 @@ private:
void truco_palette(palette_device &palette) const; void truco_palette(palette_device &palette) const;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(interrupt); INTERRUPT_GEN_MEMBER(interrupt);
void main_map(address_map &map); void main_map(address_map &map);

View File

@ -125,7 +125,7 @@ protected:
TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_bg_tile_info);
TILE_GET_INFO_MEMBER(get_fg_tile_info); TILE_GET_INFO_MEMBER(get_fg_tile_info);
TILE_GET_INFO_MEMBER(get_tx_tile_info); TILE_GET_INFO_MEMBER(get_tx_tile_info);
u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(twincobr_vblank_irq); DECLARE_WRITE_LINE_MEMBER(twincobr_vblank_irq);
DECLARE_WRITE_LINE_MEMBER(wardner_vblank_irq); DECLARE_WRITE_LINE_MEMBER(wardner_vblank_irq);
void twincobr_create_tilemaps(); void twincobr_create_tilemaps();

View File

@ -47,7 +47,7 @@ private:
void usgames_palette(palette_device &palette) const; void usgames_palette(palette_device &palette) const;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void usg185_map(address_map &map); void usg185_map(address_map &map);
void usgames_map(address_map &map); void usgames_map(address_map &map);
}; };

View File

@ -53,7 +53,7 @@ void calomega_state::video_start()
m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(calomega_state::get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 31); m_bg_tilemap = &machine().tilemap().create(*m_gfxdecode, tilemap_get_info_delegate(FUNC(calomega_state::get_bg_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 31);
} }
uint32_t calomega_state::screen_update_calomega(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t calomega_state::screen_update_calomega(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;

View File

@ -119,7 +119,7 @@ VIDEO_START_MEMBER(docastle_state,dorunrun)
video_start_common(0xff00); video_start_common(0xff00);
} }
void docastle_state::draw_sprites( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect ) void docastle_state::draw_sprites( screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect )
{ {
int offs; int offs;
@ -210,7 +210,7 @@ void docastle_state::draw_sprites( screen_device &screen, bitmap_ind16 &bitmap,
} }
} }
uint32_t docastle_state::screen_update_docastle(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t docastle_state::screen_update_docastle(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_do_tilemap->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE, 0); m_do_tilemap->draw(screen, bitmap, cliprect, TILEMAP_DRAW_OPAQUE, 0);
draw_sprites(screen, bitmap, cliprect); draw_sprites(screen, bitmap, cliprect);

View File

@ -144,7 +144,7 @@ void multiwin_state::video_start()
} }
uint32_t funworld_state::screen_update_funworld(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t funworld_state::screen_update_funworld(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
return 0; return 0;

View File

@ -153,9 +153,9 @@ WRITE8_MEMBER(goldstar_state::goldstar_fa00_w)
uint32_t goldstar_state::screen_update_goldstar(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t goldstar_state::screen_update_goldstar(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
bitmap.fill(m_palette->black_pen(), cliprect); bitmap.fill(rgb_t::black(), cliprect);
if (!(m_cm_enable_reg & 0x01)) if (!(m_cm_enable_reg & 0x01))
return 0; return 0;
@ -198,9 +198,9 @@ uint32_t goldstar_state::screen_update_goldstar(screen_device &screen, bitmap_in
} }
uint32_t goldstar_state::screen_update_cmast91(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t goldstar_state::screen_update_cmast91(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
bitmap.fill(m_palette->black_pen(), cliprect); bitmap.fill(rgb_t::black(), cliprect);
if (!(m_cm_enable_reg & 0x01)) if (!(m_cm_enable_reg & 0x01))
return 0; return 0;
@ -295,9 +295,9 @@ WRITE8_MEMBER(cmaster_state::background_col_w)
} }
uint32_t cmaster_state::screen_update_amcoe1a(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t cmaster_state::screen_update_amcoe1a(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
bitmap.fill(m_palette->black_pen(), cliprect); bitmap.fill(rgb_t::black(), cliprect);
if (!(m_cm_enable_reg & 0x01)) if (!(m_cm_enable_reg & 0x01))
return 0; return 0;
@ -376,9 +376,9 @@ VIDEO_START_MEMBER(wingco_state, magical)
} }
uint32_t wingco_state::screen_update_bingowng(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t wingco_state::screen_update_bingowng(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
bitmap.fill(m_palette->black_pen(), cliprect); bitmap.fill(rgb_t::black(), cliprect);
if (!(m_cm_enable_reg & 0x01)) if (!(m_cm_enable_reg & 0x01))
return 0; return 0;
@ -414,9 +414,9 @@ uint32_t wingco_state::screen_update_bingowng(screen_device &screen, bitmap_ind1
return 0; return 0;
} }
uint32_t wingco_state::screen_update_magical(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t wingco_state::screen_update_magical(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
bitmap.fill(m_palette->black_pen(), cliprect); bitmap.fill(rgb_t::black(), cliprect);
if (!(m_cm_enable_reg & 0x01)) if (!(m_cm_enable_reg & 0x01))
return 0; return 0;
@ -466,9 +466,9 @@ uint32_t wingco_state::screen_update_magical(screen_device &screen, bitmap_ind16
} }
uint32_t wingco_state::screen_update_mbstar(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t wingco_state::screen_update_mbstar(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
bitmap.fill(m_palette->black_pen(), cliprect); bitmap.fill(rgb_t::black(), cliprect);
if (!(m_cm_enable_reg & 0x01)) if (!(m_cm_enable_reg & 0x01))
return 0; return 0;
@ -616,9 +616,9 @@ VIDEO_START_MEMBER(sanghopm_state, sangho)
} }
uint32_t sanghopm_state::screen_update_sangho(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t sanghopm_state::screen_update_sangho(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
bitmap.fill(m_palette->black_pen(), cliprect); bitmap.fill(rgb_t::black(), cliprect);
m_bg_tilemap->set_scrolly(0, -16); m_bg_tilemap->set_scrolly(0, -16);
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
@ -724,9 +724,9 @@ VIDEO_START_MEMBER(unkch_state, unkch)
m_cm_enable_reg = 0x0b; m_cm_enable_reg = 0x0b;
} }
uint32_t unkch_state::screen_update_unkch(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t unkch_state::screen_update_unkch(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
bitmap.fill(m_palette->black_pen(), cliprect); bitmap.fill(rgb_t::black(), cliprect);
if (!(m_cm_enable_reg & 0x01)) if (!(m_cm_enable_reg & 0x01))
return 0; return 0;

View File

@ -188,7 +188,7 @@ VIDEO_START_MEMBER(snk6502_state,pballoon)
} }
uint32_t snk6502_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t snk6502_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_bg_tilemap->draw(screen, bitmap, cliprect, 0, 0);
m_fg_tilemap->draw(screen, bitmap, cliprect, 0, 0); m_fg_tilemap->draw(screen, bitmap, cliprect, 0, 0);

View File

@ -70,14 +70,14 @@ WRITE8_MEMBER(speedatk_state::m6845_w)
} }
} }
uint32_t speedatk_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t speedatk_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
int x,y; int x,y;
int count; int count;
uint16_t tile; uint16_t tile;
uint8_t color, region; uint8_t color, region;
bitmap.fill(0, cliprect); bitmap.fill(rgb_t::black(), cliprect);
count = (m_crtc_vreg[0x0c]<<8)|(m_crtc_vreg[0x0d] & 0xff); count = (m_crtc_vreg[0x0c]<<8)|(m_crtc_vreg[0x0d] & 0xff);

View File

@ -671,7 +671,7 @@ void toaplan1_state::log_vram()
***************************************************************************/ ***************************************************************************/
// custom function to draw a single sprite. needed to keep correct sprites - sprites and sprites - tilemaps priorities // custom function to draw a single sprite. needed to keep correct sprites - sprites and sprites - tilemaps priorities
static void draw_sprite_custom(screen_device &screen, bitmap_ind16 &dest_bmp, const rectangle &clip, gfx_element *gfx, void toaplan1_state::draw_sprite_custom(screen_device &screen, bitmap_rgb32 &dest_bmp, const rectangle &clip, gfx_element *gfx,
u32 code, u32 color, int flipx, int flipy, int sx, int sy, u32 code, u32 color, int flipx, int flipy, int sx, int sy,
int priority) int priority)
{ {
@ -680,6 +680,7 @@ static void draw_sprite_custom(screen_device &screen, bitmap_ind16 &dest_bmp, co
bitmap_ind8 &priority_bitmap = screen.priority(); bitmap_ind8 &priority_bitmap = screen.priority();
const int sprite_screen_height = ((1 << 16) * gfx->height() + 0x8000) >> 16; const int sprite_screen_height = ((1 << 16) * gfx->height() + 0x8000) >> 16;
const int sprite_screen_width = ((1 << 16) * gfx->width() + 0x8000) >> 16; const int sprite_screen_width = ((1 << 16) * gfx->width() + 0x8000) >> 16;
const pen_t *pens = &m_palette->pen(pal_base);
if (sprite_screen_width && sprite_screen_height) if (sprite_screen_width && sprite_screen_height)
{ {
@ -742,7 +743,7 @@ static void draw_sprite_custom(screen_device &screen, bitmap_ind16 &dest_bmp, co
for (int y = sy; y < ey; y++) for (int y = sy; y < ey; y++)
{ {
const u8 *source = source_base + (y_index >> 16) * gfx->rowbytes(); const u8 *source = source_base + (y_index >> 16) * gfx->rowbytes();
u16 *dest = &dest_bmp.pix16(y); u32 *dest = &dest_bmp.pix32(y);
u8 *pri = &priority_bitmap.pix8(y); u8 *pri = &priority_bitmap.pix8(y);
int x_index = x_index_base; int x_index = x_index_base;
@ -752,7 +753,7 @@ static void draw_sprite_custom(screen_device &screen, bitmap_ind16 &dest_bmp, co
if (c != 0) if (c != 0)
{ {
if (pri[x] < priority) if (pri[x] < priority)
dest[x] = pal_base + c; dest[x] = pens[c];
pri[x] = 0xff; // mark it "already drawn" pri[x] = 0xff; // mark it "already drawn"
} }
x_index += dx; x_index += dx;
@ -765,7 +766,7 @@ static void draw_sprite_custom(screen_device &screen, bitmap_ind16 &dest_bmp, co
} }
void toaplan1_state::draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) void toaplan1_state::draw_sprites(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
u16 *source = (u16 *)m_buffered_spriteram.get(); u16 *source = (u16 *)m_buffered_spriteram.get();
u16 *size = (u16 *)m_buffered_spritesizeram.get(); u16 *size = (u16 *)m_buffered_spritesizeram.get();
@ -832,10 +833,10 @@ void toaplan1_state::draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, c
/*************************************************************************** /***************************************************************************
Draw the game screen in the given bitmap_ind16. Draw the game screen in the given bitmap.
***************************************************************************/ ***************************************************************************/
u32 toaplan1_rallybik_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) u32 toaplan1_rallybik_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
log_vram(); log_vram();
@ -862,7 +863,7 @@ u32 toaplan1_rallybik_state::screen_update(screen_device &screen, bitmap_ind16 &
return 0; return 0;
} }
u32 toaplan1_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) u32 toaplan1_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
log_vram(); log_vram();

View File

@ -88,17 +88,17 @@ void toaplan_scu_device::draw_sprites_to_tempbitmap(const rectangle &cliprect, u
/*************************************************************************** /***************************************************************************
Draw the game screen in the given bitmap_ind16. Draw the game screen in the given bitmap.
***************************************************************************/ ***************************************************************************/
void toaplan_scu_device::copy_sprites_from_tempbitmap(bitmap_ind16 &bitmap, const rectangle &cliprect, int priority) void toaplan_scu_device::copy_sprites_from_tempbitmap(bitmap_rgb32 &bitmap, const rectangle &cliprect, int priority)
{ {
const int colourbase = gfx(0)->colorbase(); const pen_t *pens = &palette().pen(gfx(0)->colorbase());
for (int y = cliprect.min_y; y <= cliprect.max_y; y++) for (int y = cliprect.min_y; y <= cliprect.max_y; y++)
{ {
u16* srcline = &m_temp_spritebitmap.pix16(y); u16 *srcline = &m_temp_spritebitmap.pix16(y);
u16* dstline = &bitmap.pix16(y); u32 *dstline = &bitmap.pix32(y);
for (int x = cliprect.min_x; x <= cliprect.max_x; x++) for (int x = cliprect.min_x; x <= cliprect.max_x; x++)
{ {
@ -108,7 +108,7 @@ void toaplan_scu_device::copy_sprites_from_tempbitmap(bitmap_ind16 &bitmap, cons
{ {
if (pix & 0xf) if (pix & 0xf)
{ {
dstline[x] = (pix & 0x3ff) + colourbase; dstline[x] = pens[pix & 0x3ff];
} }
} }
} }

View File

@ -20,7 +20,7 @@ public:
} }
void draw_sprites_to_tempbitmap(const rectangle &cliprect, u16* spriteram, u32 bytes); void draw_sprites_to_tempbitmap(const rectangle &cliprect, u16* spriteram, u32 bytes);
void copy_sprites_from_tempbitmap(bitmap_ind16 &bitmap, const rectangle &cliprect, int priority); void copy_sprites_from_tempbitmap(bitmap_rgb32 &bitmap, const rectangle &cliprect, int priority);
void alloc_sprite_bitmap(screen_device &screen); void alloc_sprite_bitmap(screen_device &screen);
protected: protected:

View File

@ -32,7 +32,7 @@ void truco_state::truco_palette(palette_device &palette) const
} }
} }
uint32_t truco_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t truco_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
uint8_t const *videoram = m_videoram; uint8_t const *videoram = m_videoram;
@ -42,7 +42,7 @@ uint32_t truco_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap,
{ {
int const pixel = (videoram[x >> 1] >> ((x & 1) ? 0 : 4)) & 0x0f; int const pixel = (videoram[x >> 1] >> ((x & 1) ? 0 : 4)) & 0x0f;
bitmap.pix16(y, x) = pixel; bitmap.pix32(y, x) = m_palette->pen(pixel);
} }
videoram += 0x80; videoram += 0x80;

View File

@ -364,7 +364,7 @@ void twincobr_state::log_vram()
} }
u32 twincobr_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) u32 twincobr_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
log_vram(); log_vram();
@ -383,7 +383,7 @@ u32 twincobr_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, c
if (!m_display_on) if (!m_display_on)
{ {
bitmap.fill(0, cliprect); bitmap.fill(rgb_t::black(), cliprect);
} }
else else
{ {

View File

@ -53,7 +53,7 @@ WRITE8_MEMBER(usgames_state::charram_w)
} }
uint32_t usgames_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) uint32_t usgames_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{ {
m_tilemap->draw(screen, bitmap, cliprect, 0,0); m_tilemap->draw(screen, bitmap, cliprect, 0,0);
return 0; return 0;