@(#)DRIVES 6.23 01/05/11 SUPPORTED CD-ROM, CD-R, CD-RW and DVD DRIVES -------------------------------------------- This release of xmcd and cda should work with the following CD-ROM, CD-R, CD-RW and DVD drives: Acer CD-610A (#), CD-632A (#), CD-636A (#), CD-640A (#), CD-912E (#) Apple CD SC+, CD-150, CD-300, CD-300i, CD-300e, CD-600e Aztech CDA268-01A (#) Chinon CDS-431 (@), CDX-431 (@), CDS-435 (@), CDX-435*, CDS-525, CDX-525, CDS-535, CDX-535, CDS-545, CDX-545 Compaq CDU-561, CR-503BCQ, CRD-8322 Compro CDR-7501 Creative Labs CD-ROM (#), CD1220S Cyberdrive 120S Digital Equipment Corporation RRD42, RRD43, RRD44, RRD45, RRD46 Goldstar CRD-8160 (#), CRD-8240 (#), CRD-8241 (#), CRD-8322 (#), GCD-R540 (#), GCD-R580 (#) Hewlett Packard XM-3301, XM-3401, XM-3501, XM-3601, XM-4101, CD-Writer 4020, CD-Writer 6020, CD-Writer 7100, CD-Writer 7200, CD-Writer 9100i (#), ATAPI/IDE (Teac CD-532E, others) (#) Hitachi CDR-1650S, CDR-1750S, CDR-1950S, CDR-3650, CDR-3750, CDR-6750, CDR-7730 (#), CDR-7830 (#), CDR-7930 (#), CDR_8030 (#), CDR-8130 (#) IBM 3509-705, 7210-001, 7210-005, 7201-010, CRMC-FX400C (#), Ext-ISA (#) Kenwood UCR-415 Longshine LCS-7260 (#) Media Vision CDR-H93RMV, Reno Micro Design International 600CD4X, SE6CDI Mitsumi FT-810T (#), FX-001S (#). FX-001D (#), FX-001DE (#), FX-120T (#), FX-140S2 (#), FX-320S (#), FX-400B (#), FX-600B (#), FX-800S (#), FX-1200 (#), FX-1600 (#), FX-4010 (#), LU-005S (#) Nakamichi MBR-7, MBR-7.4, MJ-4.8s, MJ-5.16 (#), MJ-5.16s NEC CDR-25, CDR-37, CDR-38 (*), CDR-55, CDR-72, CDR-74, CDR-77, CDR-80, CDR-82, CDR-84, CDR-74-1 (*), CDR-84-1 (*), CDR-210P, CDR-222S, CDR-251 (#), CDR-260 (#), CDR-260R (#), CDR-272 (#), CDR-273 (#), CDR-400, CDR-401, CDR-462, CDR-466, CDR-500, CDR-501, CDR-502, CDR-510, CDR-511, CDR-512, CDR-600, CDR-601, CDR-602, CDR-900, CDR-1410, CDR-1450, CDR-1460, CDR-1610, CDR-1810, CDR-1800 (#), CDR-1900 (#), CDR-1901 (#), CDR-1910, CDR-3010A, CDR-3460, CDR-4300A (#) Optics Storage 8000AT (#) Kotobuki / Matsushita / Panasonic CR-501B, CR-502B, CR-503B, CR-504B, CR-506B, CR-521 (#), CR-522 (#), CR-523 (#), CR-562 (#), CR-563 (#), CR-572 (#), CR-574 (#), CR-581 (#), CR-583 (#), CR-584 (#), CR-585 (#), CR-8005, CW-7501, CW-7502, LF-1004, LK-MC606BP, LK-MC686BP (#) Okano / Wearnes CDD110 (#) Orchid CD-3110 (#) Philips / LMS CDD2600, CDD3600, CM206 (#), PCA80SC Pioneer DRM-600, DRM-600A, DRM-610, DRM-602X, DRM-604X (*)(@), DRM-624X, DRM-1804X, DRM-6324X, DR-411 (#), DR-433, DR-444 (#), DR-466S, DR-533, DR-U06S, DR-U24X, DR-U104X, DR-U124X, DR-UA124X (#), DVD-303R Plextor/Texel DM-3024 (@), DM-5024 (@), DM-3028, DM-5028, PX-43C, PX-45C, PX-63C, PX-65C, PX-83C, PX-85C, PX-12X, PX-20X, PX-32X, PX-40X, PX-R412, PX-R820T, PX-W1210T, PX-W8432T Procom CDT4-3X, CDT4-DS, CDT4-MX, CDT7-3X, CDT7-DS, DSP-DR0020, ICD-MX, MCD-DS, MCDN-3X, SICD-DS, SICDN-3X, SXCD-DS, SXCDN-3X Regal CDC-4X Ricoh MP6200A (#), MP6200S Samsung SC-140B (#)(@), SCR-2430 (#). SCR-3230 (#), SCR-3232 (#)(@) Sanyo CRD-254P (#), CRD-254S, CRD-820P (#), CDR-C3G (#), CDR-H93RMV Silicon Graphics XM-3301, XM-3401, XM-3501, XM-5401 Sony CDR-111 (#), CDU-31A (#), CDU-33A (#), CDU-55E (#), CDU-55S, CDU-76E (#), CDU-76S, CDU-311 (#), CDU-415, CDU-511 (#), CDU-524E (#), CDU-531 (#), CDU-535 (#), CDU-541, CDU-561, CDU-611 (#) CDU-701 (#), CDU-711 (#), CDU-6111, CDU-6211, CDU-7205N (#), CDU-7211, CDU-7811, CDU-8002, CDU-8003, CDU-8003A, CDU-8012 (@), CSD-76S, CSD-880E (#) Stratus D756, D758, D850, D855, D857, D859 Sun ATAPI/IDE (Goldstar CRD-8240, others) (#), Sony (CDU-541, CDU-8012) (@), Toshiba (XM-4101, XM-5401, XM-5701, XM-6201) Tatung CD-1216E (#) Teac CD-50, CD-55A (#), CD-56E (#), CD-56S, CD-512E (#), CD-512S, CD-516S, CD-516E (#), CD-524E (*), CD-524S, CD-532E (#), CD-532S, CD-R50S Toshiba SD-M1402 (#), XM-3101, XM-3201, XM-3301, XM-3401, XM-3501, XM-3601, XM-3701, XM-3801, XM-4101, XM-5201, XM-5301, XM-5302 (#), XM-5401, XM-5402 (#), XM-5601, XM-5602 (#), XM-5701, XM-5702 (#), XM-5901, XM-6002 (#), XM-6102 (#), XM-6201, XM-6302 (#), XM-6401, XM-6502 (#), XM-8100 Yamaha CDE-100, CDR-100, CDE-102, CDR-102, CRW-4260S, CRW-4416S, CRW-8424S Other SCSI-2 compliant CD-ROM/CD-R/CD-RW/DVD drives Other non-SCSI CD-ROM/CD-R/CD-RW/DVD drives (#) (driver support required) Units denoted with a (#) symbol are currently supported only on certain OS platforms that contain the proper device driver for the CD-ROM drive. These drives are either typically used with an ATAPI or proprietary interface card or a sound card. See the "NON-SCSI CD-ROM DRIVES" section below for details. Units denoted with a (@) symbol have additional notes below in the CD-ROM NOTES section. Units denoted with a (*) symbol can be configured to operate in the SCSI-1 or SCSI-2 mode (via jumpers or DIP switch). You must configure the xmcd software accordingly (with the XMCDLIB/config/config.sh program). Depending upon the specific model, you may find that xmcd/cda supports more features while operating in SCSI-2 mode. See the CD-ROM drive owner's manual for details about setting the mode. For multi-disc changers, please refer to the MULTI-DISC CHANGERS section below. If your drive is not listed above, you should first try configuring xmcd for another drive model (of the same type) from the same manufacturer This would usually give you a higher chance that the configuration is correct for your drive, compared to selecting the "Other (SCSI)" or "Other (non-SCSI)" option. The author cannot personally test all these drives, therefore much of this information relies on user feedback. If you have success using xmcd with a drive not listed above, please contact xmcd@amb.org. See the "CD-ROM NOTES" section below for information specific to some of the CD-ROM drives. CD-ROM NOTES ------------ The Chinon CDx-431 and CDx-435 drives do not support commands to implement audio pause and resume operations. Thus, these features are non-functional when these drives are used with xmcd/cda. The CDx-525, CDx-535 and CDx-545 units do not have this limitation. Pioneer DRM-604X units with revisions of the firmware prior to 2403 must be configured to operate in the SCSI-1 mode (DRM-600 emulation, via back panel DIP switches), and xmcd/cda must be configured as if it's operating a DRM-600. Newer DRM-604X units (firmware version 2403 and later) can be set up to run in SCSI-2 mode, and xmcd/cda must be set up accordingly. The Plextor/Texel DM-x024 drive firmware should be version 1.10 or later to avoid system lockups. The DM-x028 drives do not have these restrictions. Some of the Sun CD-ROM drives (Sony OEM CDU-8012) have a firmware problem that can lead to a temporary SCSI bus hang after ejecting a CD with xmcd. The workaround is to increase xmcd's insertPollInterval configuration parameter to 4000 milliseconds or more. See the XMCDLIB/config/common.cfg file. Due to a quirk with the drive, the Samsung SC-140B and SCR-3232 will stop after playing a track. The workaround is to define a play program of all tracks. To avoid possible SCSI bus lock-up, never eject the disc using the eject button on the front panel of the Hitachi SCSI-1 CD-ROM drives while the unit is playing audio. Use the software eject function of xmcd/cda instead. Also, you may wish to adjust the searchSkipBlocks and searchPauseInterval configuration parameters to achieve the best audio sampling effect during xmcd's REW and FF search operations. Note that even if a CD-ROM drive is marketed as SCSI-2 compliant, it still may not implement the full set of audio-related commands that xmcd/cda requires. The supported SCSI drives listed above will work only when connected via a proper SCSI host adapter board. Some x86 PC platforms use SCSI CD-ROM drives but they are connected to sound cards that use a proprietary interface. These may work if xmcd/cda is configured to operate the unit as a non-SCSI drive (see below). Some older CD-ROM drives do not function well when the SCSI host adapter board is configured to "synchronous negotiation" mode. Examples of these include certain NEC and Hitachi units. If you experience malfunctions with xmcd/cda, check the host adapter board configuration and try disabling the synchronous mode. On the Adaptec AHA-1542B, there is a single jumper that controls whether synchronous negotiation is enabled for all devices on the SCSI bus. On more recent Adaptec SCSI adapters, synchronous negotiation is configurable via the SCSISelect setup program, and is settable on a per-ID basis. Please consult your SCSI host adapter board owner's manual for information. Some CD drives take a long time to spin up. If you encounter an error when starting playback of a CD, you may need to adjust the "spinUpInterval" parameter in your XMCDLIB/config/DEVICE file (where DEVICE is the basename of the CD-ROM special file). NON-SCSI CD-ROM DRIVES ---------------------- This release of xmcd and cda supports non-SCSI CD-ROM drives on certain OS platform only. These platforms currently consists of the following: BSDI BSD/OS 3.x Digital UNIX 4.x / Compaq Tru64 UNIX 5.x FreeBSD HP-UX 10.20 and later IBM AIX 4.x Linux NetBSD OpenBSD QNX SCO Open Server release 5.x Sun Solaris 2.x and later On the AIX, FreeBSD, Linux, NetBSD, OpenBSD, QNX and Solaris platforms, xmcd/cda must be configured to operate in the appropriate "ioctl method" when used with these drives (rather than the "SCSI pass-through method"). See the "deviceInterfaceMethod" parameter in the XMCDLIB/config/DEVICE file (where DEVICE is the basename of the CD-ROM special file). On AIX, BSDI BSD/OS, Tru64 UNIX (Digital UNIX), HP-UX, SCO OSR5 and Solaris, the only non-SCSI drives supported are ATAPI drives. For SCO OSR5, you must use the ATAPI BTLD from SCO for these drives. The BSDI, Tru64 UNIX (Digital UNIX), HP-UX and SCO OSR5 platforms support the ATAPI/IDE drives via SCSI emulation. Thus, xmcd/cda will still operate in the SCSI pass-through method with these drives. The specific list of non-SCSI drives supported depends upon the configuration of the OS host CD-ROM driver. You should make sure that a driver for your non-SCSI CD-ROM drive is present in your kernel (or can be added to your kernel). Without the appropriate driver, xmcd/cda will not work. On Linux, refer to the /usr/src/linux/Documentation/cdrom/* files for details about the drivers in your version of the kernel. IDE/ATAPI drives can also be configured to run on recent versions of Linux under "SCSI-emulation". In such a mode, the drive should be configured for xmcd as if it is a SCSI drive. Not all CD-ROM drivers are present in all versions of your OS. Older versions may lack some of these. Also, the specific CD-ROM drives and features supported by these drivers are also version- dependent. See your OS documentation about configuring a kernel to use these drivers. Some CD-ROM drive/controller and OS driver combinations may not work reliably. Please refer to your OS documentation for the currently supported list of drives and controllers. Although the SunOS/Solaris/Linux ioctl method will also work with many SCSI CD-ROM drives on the Linux, SunOS 4.1.x and Solaris platforms, it offers less features than the SCSI pass-through method and is thus not recommended for SCSI drives. Likewise, the FreeBSD/NetBSD/OpenBSD ioctl method should only be used with non-SCSI drives. On QNX, the QNX ioctl method should be used for all CD-ROM drives (including SCSI drives) due to the lack of the SCSI pass-through method. The AIX IDE ioctl method is normally disabled. You must explicitly define -DAIX_IDE in the libdi_d directory when compiling xmcd/cda to enable it. MULTI-DISC CHANGERS ------------------- This version of xmcd/cda supports the use of multi-disc changers and jukeboxes. Depending upon the type of disc changer you have, You must select one of the following methods to enable the disc change capability: 1. SCSI LUN addressing method: This is for SCSI changers that occupy one SCSI ID, but allows software selects the disc via the LUN (logical unit number) address. This method is used only for SCSI disc changers that support eight discs or less. In order for this method to work, your OS platform must support separate device nodes for each LUN of the device. Thus, for a 6-disc changer, there must be six separate device nodes for the changer, one for each of the "slots". Not all platforms support this. On platforms that don't have separate nodes for each LUN, xmcd/cda will not be able to change discs. This method has been tested and works on HP-UX 9.x and 10.x, Linux 2.x, Solaris 2.x and UnixWare 2.x. It may work on other platforms, but I have not tested on them. If you get this method to work on a platform not listed here, please drop me a note at xmcd@amb.org to let me know. On the HP-UX 9.x platforms, the minor device number should be 0x201xy0, where x is the SCSI ID and y is the LUN number. This is documented incorrectly in some HP manuals. Your device nodes should look something like this (this example has SCSI ID 6, 6 discs): crw-r--r-- 1 root sys 7 0x201600 /dev/rdsk/c201d6s0 crw-r--r-- 1 root sys 7 0x201610 /dev/rdsk/c201d6s1 crw-r--r-- 1 root sys 7 0x201620 /dev/rdsk/c201d6s2 crw-r--r-- 1 root sys 7 0x201630 /dev/rdsk/c201d6s3 crw-r--r-- 1 root sys 7 0x201640 /dev/rdsk/c201d6s4 crw-r--r-- 1 root sys 7 0x201650 /dev/rdsk/c201d6s5 2. SCSI medium-changer method: This is for SCSI changers that occupy one SCSI ID, with the player on one LUN and a medium changer mechanism on another LUN. Another variation of this is to have the player on one SCSI ID and the medium changer mechanism on another SCSI ID. This is typically used on SCSI CD-ROM jukeboxes that support more than eight discs. In order for this method to work, your OS platform must support a device node for the CD player as well as a separate device node for the medium changer mechanism. Not all systems support this. On platforms that don't have a separate node for the medium changer, xmcd/cda will not be able to change discs. Platforms that support this interface includes Linux 2.x, UnixWare 2.x/7.x and HP-UX 10.x and later. The medium changer device for each of these platforms are: Linux: /dev/sgX where X is a letter or digit. Typically X would correspond to the order that the device appears in the output of "cat /proc/scsi/scsi". UnixWare: /dev/mc/mcX where X is a digit corresponding to the medium changer's instance number. See mc01(7). HP-UX: /dev/rscsi/cXXtYdZ where XX is a controller number, Y is the SCSI ID and Z is the LUN number. See scsi_ctl(7). This method currently is specifically coded for the Pioneer DRM-1804X 18-disc changer. It may also work with other changers with a similar software interface. Note that in order to use xmcd on a Linux kernel older than 2.0.30 with the Pioneer DRM-1804X (or other CD changers with a medium changer device), you need to make a modification to the SCSI command timeout limit in your Linux SCSI driver. Locate the following kernel source file: /usr/src/linux/drivers/scsi/scsi_ioctl.c Change the MAX_TIMEOUT definition from 9 seconds to at least 120 seconds: Was: #define MAX_TIMEOUT (9 * HZ) Change to: #define MAX_TIMEOUT (120 * HZ) You then need to rebuild the kernel, install it and reboot to have it take effect. See the /usr/src/linux/README file for details. 3. Non-SCSI OS ioctl method: This is for non-SCSI units which has OS ioctl support in the CD-ROM driver for disc change operations. Currently, this method will work only on late versions of Linux kernel 2.0.x and Linux 2.1.x and later. Moreover, it works only for ATAPI/IDE changers via the "ide-cd" driver. See the /usr/src/linux/Documentation/cdrom/ide-cd file for details about which drives are supported. Due to problems in some versions of the ide-cd driver xmcd/cda may have problems changing discs when there are empty slots in the CD changer. The changer control method is configured via the mediumChangeMethod, numDiscs and deviceList parameters. These are set up for you when you install xmcd, or when you run the LIBDIR/xmcd/config.config.sh script. Note that if the "multi-play" option is enabled, xmcd/cda scans each changer slot in order, after a disc is ejected. This is in support of changers that have individually eject-able discs. On changers that use a magazine (where all discs are ejected at once), after the magazine is reinserted, xmcd may "land" on the first CD that it detects while scanning. This is not necessarily the first disc in the magazine. Also, on changers that have individually eject-able slots, the "auto-eject on done" feature will only eject the first disc when the "multi-play" mode is finished.