summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/superdq.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/superdq.c')
-rw-r--r--src/mame/drivers/superdq.c32
1 files changed, 15 insertions, 17 deletions
diff --git a/src/mame/drivers/superdq.c b/src/mame/drivers/superdq.c
index cbf175663c7..ce3f39fccb1 100644
--- a/src/mame/drivers/superdq.c
+++ b/src/mame/drivers/superdq.c
@@ -47,6 +47,10 @@ public:
DECLARE_READ8_MEMBER(superdq_ld_r);
DECLARE_WRITE8_MEMBER(superdq_ld_w);
TILE_GET_INFO_MEMBER(get_tile_info);
+ virtual void machine_start();
+ virtual void machine_reset();
+ virtual void video_start();
+ virtual void palette_init();
};
TILE_GET_INFO_MEMBER(superdq_state::get_tile_info)
@@ -56,11 +60,10 @@ TILE_GET_INFO_MEMBER(superdq_state::get_tile_info)
SET_TILE_INFO_MEMBER(0, tile, m_color_bank, 0);
}
-static VIDEO_START( superdq )
+void superdq_state::video_start()
{
- superdq_state *state = machine.driver_data<superdq_state>();
- state->m_tilemap = &machine.tilemap().create(tilemap_get_info_delegate(FUNC(superdq_state::get_tile_info),state), TILEMAP_SCAN_ROWS, 8, 8, 32, 32);
+ m_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(superdq_state::get_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 32, 32);
}
static SCREEN_UPDATE_RGB32( superdq )
@@ -80,9 +83,9 @@ static SCREEN_UPDATE_RGB32( superdq )
*
*************************************/
-static PALETTE_INIT( superdq )
+void superdq_state::palette_init()
{
- const UINT8 *color_prom = machine.root_device().memregion("proms")->base();
+ const UINT8 *color_prom = machine().root_device().memregion("proms")->base();
int i;
static const int resistances[3] = { 820, 390, 200 };
double rweights[3], gweights[3], bweights[2];
@@ -94,7 +97,7 @@ static PALETTE_INIT( superdq )
2, &resistances[1], bweights, 220, 0);
/* initialize the palette with these colors */
- for (i = 0; i < machine.total_colors(); i++)
+ for (i = 0; i < machine().total_colors(); i++)
{
int bit0, bit1, bit2;
int r, g, b;
@@ -116,17 +119,16 @@ static PALETTE_INIT( superdq )
bit1 = (color_prom[i] >> 0) & 0x01;
b = combine_2_weights(bweights, bit1, bit0);
- palette_set_color(machine, i, MAKE_RGB(r, g, b));
+ palette_set_color(machine(), i, MAKE_RGB(r, g, b));
}
}
-static MACHINE_RESET( superdq )
+void superdq_state::machine_reset()
{
- superdq_state *state = machine.driver_data<superdq_state>();
- state->m_ld_in_latch = 0;
- state->m_ld_out_latch = 0xff;
- state->m_color_bank = 0;
+ m_ld_in_latch = 0;
+ m_ld_out_latch = 0xff;
+ m_color_bank = 0;
}
static INTERRUPT_GEN( superdq_vblank )
@@ -332,7 +334,7 @@ static const sn76496_config psg_intf =
*
*************************************/
-static MACHINE_START( superdq )
+void superdq_state::machine_start()
{
}
@@ -345,8 +347,6 @@ static MACHINE_CONFIG_START( superdq, superdq_state )
MCFG_CPU_IO_MAP(superdq_io)
MCFG_CPU_VBLANK_INT("screen", superdq_vblank)
- MCFG_MACHINE_START(superdq)
- MCFG_MACHINE_RESET(superdq)
MCFG_LASERDISC_LDV1000_ADD("laserdisc")
MCFG_LASERDISC_OVERLAY_STATIC(256, 256, superdq)
@@ -357,8 +357,6 @@ static MACHINE_CONFIG_START( superdq, superdq_state )
MCFG_GFXDECODE(superdq)
MCFG_PALETTE_LENGTH(32)
- MCFG_PALETTE_INIT(superdq)
- MCFG_VIDEO_START(superdq)
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")