From 2f823ff24f1bed7cc230facbb5c9a72b83dbb8c2 Mon Sep 17 00:00:00 2001 From: Aaron Giles Date: Mon, 21 Jul 2008 17:02:59 +0000 Subject: Laserdiscs are now devices. Updated all drivers accordingly. --- src/mame/drivers/esh.c | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) (limited to 'src/mame/drivers/esh.c') diff --git a/src/mame/drivers/esh.c b/src/mame/drivers/esh.c index 7901ec59e1b..3a0a85bf030 100644 --- a/src/mame/drivers/esh.c +++ b/src/mame/drivers/esh.c @@ -30,7 +30,7 @@ Todo: /* Misc variables */ -static laserdisc_info *discinfo; +static const device_config *laserdisc; static UINT8 *tile_ram; static UINT8 *tile_control_ram; @@ -46,8 +46,8 @@ static VIDEO_UPDATE( esh ) fillbitmap(bitmap, 0, cliprect); /* display disc information */ - if (discinfo != NULL && ld_video_visible) - popmessage("%s", laserdisc_describe_state(discinfo)); + if (ld_video_visible) + popmessage("%s", laserdisc_describe_state(laserdisc)); /* Draw tiles */ for (charx = 0; charx < 32; charx++) @@ -77,12 +77,12 @@ static VIDEO_UPDATE( esh ) /* MEMORY HANDLERS */ static READ8_HANDLER(ldp_read) { - return laserdisc_data_r(discinfo); + return laserdisc_data_r(laserdisc); } static WRITE8_HANDLER(ldp_write) { - laserdisc_data_w(discinfo,data); + laserdisc_data_w(laserdisc,data); } static WRITE8_HANDLER(misc_write) @@ -258,12 +258,6 @@ static GFXDECODE_START( esh ) GFXDECODE_ENTRY(REGION_GFX1, 0, esh_gfx_layout, 0x0, 0x100) GFXDECODE_END -static MACHINE_START( esh ) -{ - discinfo = laserdisc_init(machine, LASERDISC_TYPE_LDV1000, get_disk_handle(0), 0); - return; -} - static TIMER_CALLBACK( irq_stop ) { cpunum_set_input_line(machine, 0, 0, CLEAR_LINE); @@ -275,7 +269,12 @@ static INTERRUPT_GEN( vblank_callback_esh ) cpunum_set_input_line(machine, 0, 0, ASSERT_LINE); timer_set(ATTOTIME_IN_USEC(50), NULL, 0, irq_stop); - laserdisc_vsync(discinfo); + laserdisc_vsync(laserdisc); +} + +static MACHINE_START( esh ) +{ + laserdisc = device_list_find_by_tag(machine->config->devicelist, LASERDISC, "laserdisc"); } @@ -287,8 +286,11 @@ static MACHINE_DRIVER_START( esh ) MDRV_CPU_IO_MAP(z80_0_io,0) MDRV_CPU_VBLANK_INT("main", vblank_callback_esh) - MDRV_MACHINE_START(esh) MDRV_NVRAM_HANDLER(generic_0fill) + + MDRV_MACHINE_START(esh) + + MDRV_LASERDISC_ADD("laserdisc", PIONEER_LDV1000, 0, "laserdisc") /* video */ @@ -306,6 +308,12 @@ static MACHINE_DRIVER_START( esh ) MDRV_VIDEO_UPDATE(esh) /* sound */ + MDRV_SPEAKER_STANDARD_STEREO("left", "right") + + MDRV_SOUND_ADD("laserdisc", CUSTOM, 0) + MDRV_SOUND_CONFIG(laserdisc_custom_interface) + MDRV_SOUND_ROUTE(0, "left", 1.0) + MDRV_SOUND_ROUTE(1, "right", 1.0) MACHINE_DRIVER_END -- cgit v1.2.3