diff options
Diffstat (limited to 'src/devices/bus/scsi/scsicd.cpp')
-rw-r--r-- | src/devices/bus/scsi/scsicd.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/devices/bus/scsi/scsicd.cpp b/src/devices/bus/scsi/scsicd.cpp new file mode 100644 index 00000000000..9ee7d92668f --- /dev/null +++ b/src/devices/bus/scsi/scsicd.cpp @@ -0,0 +1,41 @@ +// license:BSD-3-Clause +// copyright-holders:smf +/*************************************************************************** + + scsicd.c - Implementation of a SCSI CD-ROM device + +***************************************************************************/ + +#include "scsicd.h" + +// device type definition +const device_type SCSICD = &device_creator<scsicd_device>; + +scsicd_device::scsicd_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + scsihle_device(mconfig, SCSICD, "SCSI CD", tag, owner, clock, "scsicd", __FILE__) +{ +} + +scsicd_device::scsicd_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : + scsihle_device(mconfig, type, name, tag, owner, clock, shortname, source) +{ +} + +void scsicd_device::device_start() +{ + m_image = subdevice<cdrom_image_device>("image"); + m_cdda = subdevice<cdda_device>("cdda"); + + scsihle_device::device_start(); +} + +static MACHINE_CONFIG_FRAGMENT(scsi_cdrom) + MCFG_CDROM_ADD("image") + MCFG_CDROM_INTERFACE("cdrom") + MCFG_SOUND_ADD("cdda", CDDA, 0) +MACHINE_CONFIG_END + +machine_config_constructor scsicd_device::device_mconfig_additions() const +{ + return MACHINE_CONFIG_NAME(scsi_cdrom); +} |