!
! @(#)device.cfg	6.62 02/04/27
!
! Device-specific configuration file
!
!   xmcd  - Motif(tm) CD Audio Player
!   cda   - Command-line CD Audio Player
!   libdi - CD Audio Player Device Interface Library
!
!   Copyright (C) 1993-2002  Ti Kan
!   E-mail: xmcd@amb.org
!
!   This program is free software; you can redistribute it and/or modify
!   it under the terms of the GNU General Public License as published by
!   the Free Software Foundation; either version 2 of the License, or
!   (at your option) any later version.
!
!   This program is distributed in the hope that it will be useful,
!   but WITHOUT ANY WARRANTY; without even the implied warranty of
!   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
!   GNU General Public License for more details.
!
!   You should have received a copy of the GNU General Public License
!   along with this program; if not, write to the Free Software
!   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
!
! DEVICE CONFIGURATION FILE
!
! Install a copy of this file as XMCDLIB/config/DEVNAME, and edit to suit
! the capability of the CD-ROM device.  XMCDLIB is the XMcd.libdir resource
! (or XMCD_LIBDIR env variable) and DEVNAME is the device node path
! basename.
!
! Users can also override some of these parameters by specifying them
! in an optional $HOME/.xmcdcfg/DEVNAME file.  Parameters that are
! labeled as "No-override" are privileged and cannot be overridden
! by the user in their private configuration files.
!
! cfgver=1	Do not remove this line.
!

! The logical drive number that you want this device to map to.  This
! number is displayed on the main window title bar.
! (No-override)
!
logicalDriveNumber:	0

! Default device list for the CD-ROM player interface.  For a single-CD
! player, only one device should be listed.  For a multi-CD changer,
! there may be one or more devices in this list, depending upon the
! control interface.  Multiple devices are separated by a semi-colon ';'
! character.
!
! Examples:
!	/dev/cdrom0
!	/dev/rcdrom/c0b0t0d0;/dev/rcdrom/c0b0t0d1;/dev/rcdrom/c0b0t0d2
!
deviceList:	/vol/dev/aliases/cdrom0

! Default start-up playback mode.
!
! The supported modes are:
! 0	Standard playback
! 1	CDDA playback
! 2	CDDA save-to-file
! 4	CDDA pipe-to-program
!
! Multiple CDDA modes can be enabled at the same time. Just add the
! mode numbers.  For example, to enable both CDDA playback and CDDA
! save-to-file, specify mode 3.  This parameter is the start-up default.
! The mode can be changed via the user-interface.
!
! Note: CDDA modes are only supported on some OS platforms and with
! certain CD-ROM drives.
!
playMode:		0

! Device Interface Method: Configure xmcd/cda to control the CD-ROM device
! via one of several methods.
!
! Note:
! Changing this parameter is useful only if your xmcd/cda binary is
! compiled to support the selected method.
!
! The supported methods are:
! 0	SCSI pass-through method		(Use this with SCSI drives)
! 1	SunOS/Solaris/Linux/QNX ioctl method	(For non-SCSI drives)
! 2	FreeBSD/OpenBSD/NetBSD ioctl method	(For non-SCSI drives)
! 3	IBM AIX IDE ioctl method		(For IDE/ATAPI drives)
!
! (No-override)
!
deviceInterfaceMethod:	1

! CDDA Method: Configure the method which xmcd/cda would employ to
! play audio using direct CDDA.
!
! The supported methods are:
! 0	None				(Don't do CDDA)
! 1	SYSV IPC method			(Use System V IPC)
!
! (No-override)
!
cddaMethod:		1

! CDDA read method: In CDDA mode, this selects which method is used to
! perform CDDA reads from the CD drive.
!
! The supported methods are:
! 0	None				(Don't do direct CDDA)
! 1	SCSI pass-through method	(Use this with SCSI drives)
! 2	Solaris ioctl method		(For Solaris)
! 3	Linux ioctl method		(For Linux)
! 4	FreeBSD ioctl method		(For FreeBSD/OpenBSD/NetBSD)
! 5	AIX ATAPI/IDE ioctl method	(For AIX)
!
! Note:
! a) Use the SCSI pass-through method for SCSI drives on all platforms
!    for best results.  This is true also for ATAPI/IDE drives under
!    SCSI emulation.
! b) The SCSI pass-through, Linux and FreeBSD CDDA read methods should
!    only be used when the deviceInterfaceMethod parameter is also set to
!    the matching method.
!
! (No-override)
!
cddaReadMethod:		2

! CDDA write method: In CDDA mode, this select which method is used to
! output the digital audio stream to the audio device.
!
! The supported methods are:
! 0	None				(Don't do direct CDDA)
! 1	OSS sound driver method		(For Linux & OSS sound drivers)
! 2	Solaris audio driver method	(For Solaris audio driver)
! 3	Irix audio driver method	(For SGI Irix audio driver)
! 4	HP-UX audio driver method	(For HP-UX audio driver)
! 5	File-only method		(File and pipe only: No audio playback)
!
! Note: The Irix and HP-UX methods are not yet implemented.
!
! (No-override)
!
cddaWriteMethod:	2

! If cddaReadMethod is set to 1, this parameter selects whether a mode
! select SCSI command should be sent to the drive to enable CDDA
! mode prior to sending the read commands.  Setting this parameter to
! True will set the sector size of the device to CDDA mode (2352 bytes).
! This parameter is used only when in a CDDA mode.
!
! (No-override)
!
cddaScsiModeSelect:	0

! If cddaReadMethod is set to 1, this parameter selects which SCSI 
! command is used to read the CDDA.  Many drives support only one of
! these methods, many older drives do not support CDDA at all.
! This parameter is used only when in a CDDA mode.
!
! Valid values are:
! 0	MMC standard Read CD (12) command
! 1	SCSI standard Read (10) command
! 2	NEC vendor-unique Read CD-DA (10) command
! 3	Sony vendor-unique Read CD-DA (12) command
!
! (No-override)
!
cddaScsiReadCommand:	0

! If cddaScsiModeSelect is set to True, this parameter specifies the
! device density code to set via the Mode Select command.  Some drives
! require this in order to read the CDDA data in the correct format.
! This parameter is used only when in a CDDA mode.
!
! Common density codes used are 0 or 130 (0x82).  Only the decimal
! notation should be used here.  130 is usually needed on Toshiba SCSI
! drives.
!
! (No-override)
!
cddaScsiDensity:	0

! This parameter indicates whether the CDDA data as read from the
! drive is in big-endian byte order.  If CDDA playback produces something
! that sounds like white noise, try changing the value of this parameter.
! This parameter is used only when in a CDDA mode.
!
! (No-override)
!
cddaDataBigEndian:	0

! The default CDDA data read chunk size expressed in blocks.
! One second of playback is equal to 75 blocks.  Each block
! equals 2352 bytes of data.  The minimum limit of this parameter
! is 1 block and the maximum is 225 blocks.  This parameter is
! used only when in a CDDA mode.
!
! Note: The actual maximum limit is usually imposed by the
! platform's kernel CD-ROM and/or host bus adapter driver.
!
! (No-override)
!
cddaReadChunkBlocks:	75

! Whether to do overlapped CDDA reads for jitter correction.  Jitter
! correction causes some sectors to be read twice.  It is used
! to eliminate clicks and pops in the sound.  If you have very fast
! hardware or an error-free drive, you can gain performance
! in CDDA save-to-file mode by setting this parameter to False.
! This parameter is the start-up default, and can be changed via
! the user-interface.  It is used only when in a CDDA mode.
!
cddaJitterCorrection:	True

! When running in CDDA save-to-file mode, whether to write a separate
! file for each CD track.  This parameter is the start-up default,
! and can be changed via the user-interface.
!
cddaFilePerTrack:	False

! When running in CDDA save-to-file or CDDA pipe-to-program modes, the
! file format to output the audio data in.  This parameter is the start-up
! default, and can be changed via the user-interface.
!
! Valid values are:
! 0	.raw format (headerless, 16 bit, 44.1 KHz, stereo, little endian)
! 1	.au  format (16 bit, 44.1 KHz, stereo, big endian)
! 2	.wav format (16 bit, 44.1 KHz, stereo, little endian)
!
cddaFileFormat:		0

! CD-ROM drive vendor code.  If your CD-ROM drive is not SCSI-2 compliant,
! this is used to specify that xmcd should issue vendor-unique commands
! rather than SCSI-2 commands.
!
! Note:
! a) Changing this parameter is useful only if your xmcd/cda binary is
!    compiled to provide vendor-unique commands support.
! b) The existence of a vendor-unique module does not imply that all
!    models of CD-ROM made by that manufacturer must use the vendor-
!    unique mode.  For example, the Toshiba XM-3301/3401 and Sony
!    CDU-541/561 are SCSI-2 compliant and should use vendor code 0.
!
! The supported codes are:
! 0	SCSI-2 standard
! 1	Chinon vendor-unique
! 2	Hitachi vendor-unique
! 3	NEC vendor-unique
! 4	Pioneer vendor-unique
! 5	Sony vendor-unique
! 6	Toshiba vendor-unique
! 7	Panasonic/Matsushita vendor-unique
!
! (No-override)
!
driveVendorCode:	0

! Whether xmcd/cda should check the SCSI version of the drive against
! the configured SCSI version.  If this is set to True and a mismatch
! occurs a warning message will be displayed.  This is used only when
! deviceInterfaceMethod is 0 and driveVendorCode is 0. 
!
! (No-override)
!
scsiVersionCheck:	True

! The number of discs a multi-CD changer drive supports.  For a
! single-CD drive, this parameter should be set to 1.
! (no-override)
!
numDiscs:		1

! The method to use when changing discs in a multi-CD changer.
!
! The supported methods are:
! 0	Single-CD drive: no changer
! 1	SCSI LUN addressing method
! 2	SCSI medium changer method
! 3	OS-ioctl method (for non-SCSI drives)
!
! (no-override)
!
mediumChangeMethod:	0

! The base SCSI audio volume value that corresponds to the minimum
! setting of the volume control slider.  This is used to adjust the
! range of audio volume control.  The legal range is 0 to 255.
! This parameter is used only if volumeControlSupport is True.
! (No-override)
!
scsiAudioVolumeBase:	0

! For any given play audio command, the minimum number of audio blocks
! that must be played.  Some CD-ROM drives have a minimum limit.
! Each block represents 1/75 second of audio.
! (No-override)
!
minimumPlayBlocks:	25

! If the CD-ROM drive is SCSI-2 compliant,  this parameter specifies
! whether it supports the Play Audio (10) SCSI command.  This command
! is used only as a fallback to the Play Audio (12) and Play Audio MSF
! commands in case they fail.
! (No-override)
!
playAudio10Support:	False

! If the CD-ROM drive is SCSI-2 compliant, this parameter specifies
! whether it supports the Play Audio (12) SCSI command.  The drive
! must support one of Play Audio (12) or Play Audio MSF in order to
! be useful with xmcd.
! (No-override)
!
playAudio12Support:	False

! If the CD-ROM drive is SCSI-2 compliant, this parameter specifies
! Whether it supports the Play Audio MSF SCSI command. The drive
! must support one of Play Audio (12) or Play Audio MSF in order
! to be useful with xmcd.
! (No-override)
!
playAudioMSFSupport:	True

! If the CD-ROM drive is SCSI-2 compliant,  this parameter specifies
! Whether it supports the Play Audio Track/Index SCSI command.  This
! command must be supported in order to use the Prev Index and Next
! Index buttons.
! (No-override)
!
playAudioTISupport:	True

! Whether the CD-ROM drive supports the disc load feature of the
! Start/Stop Unit SCSI command.
! (No-override)
!
loadSupport:		True

! Whether the CD-ROM drive supports the disc eject feature of the
! Start/Stop Unit SCSI command.  If this item is False, it will also
! automatically force the caddyLockSupport parameter below to False.
! (No-override)
!
ejectSupport:		True

! Whether the block descriptor should be disabled in the
! mode sense/mode select command data.  You may need to change this
! setting to get the volume control slider to work on some SCSI-2
! CD-ROM drives.
! (No-override)
!
modeSenseSetDBD:	False

! If set to True, the 10-byte version of the SCSI Mode Sense and
! Mode Select commands will be used.  Otherwise, the 6-byte version
! will be used.
! (No-override)
!
modeSenseUse10Byte:	False

! Whether the CD-ROM drive supports setting the audio playback volume
! in software.  For SCSI-2 drives, this means the audio page (0xE) of
! the Mode Select SCSI command.  For SCSI-1 drives, this is vendor-
! unique.
! (No-override)
!
volumeControlSupport:	True

! Whether the CD-ROM drive supports setting the audio playback volume
! of the stereo channels independently.  This support is required
! for the Balance Control slider to function.  The volumeControlSupport
! parameter above must be True for this to have any effect.
! (No-override)
!
balanceControlSupport:	True

! Whether the CD-ROM drive supports setting output channel routing.
! This support is required for the channel routing selector to function.
! (No-override)
!
channelRouteSupport:	False

! If the CD-ROM drive is SCSI-2 compliant,  this parameter specifies
! whether it supports the Pause/Resume SCSI command.
! (No-override)
!
pauseResumeSupport:	True

! While in paused state, if the CD-ROM drive requires a resume command
! to be sent before accepting a new play audio command, set this to True.
! This parameter is meaningful only if pauseResumeSupport is True.
! (No-override)
!
strictPauseResume:	False

! While playing audio, if the CD-ROM drive requires a pause command to be
! sent before accepting a new play audio command, set this to True.
! This parameter is meaningful only if pauseResumeSupport is True.
! (No-override)
!
playPausePlay:		False

! Whether the CD-ROM drive supports the Prevent/Allow Medium Removal
! SCSI command.  If this item is False, it will also automatically
! force the caddyLock parameter to False.
! (No-override)
!
caddyLockSupport:	False

! Whether the CD-ROM drive supports data format code 1 (CD-ROM Current
! Position Data) of the Read Subchannel SCSI command.  If this item is
! False, data format code 0 (Sub-Q Channel Data) will be used instead.
! (No-override)
!
curposFormat:		False

! Whether the CD-ROM drive fails the Test Unit Ready SCSI command
! when it is playing audio.
! (No-override)
!
noTURWhenPlaying:	False

! Whether xmcd/cda should attempt to read the CD's TOC (table of content)
! in LBA (logical block address) mode.  If set to False, then the
! MSF (minute second frame) mode will be used.  The driveBlockSize parameter
! must be set correctly in order for the LBA mode to work.
! (No-override)
!
tocLBA:			False

! Whether xmcd/cda should attempt to read subchannel data (playback status)
! in LBA (logical block address) mode.  If set to False, then the
! MSF (minute second frame) mode will be used.  The driveBlockSize parameter
! must be set correctly in order for the LBA mode to work.
! (No-override)
!
subChannelLBA:		False

! The CD-ROM drive's native block size in bytes.  Standard CD-ROM drives
! have 2048-byte blocks, but some platforms (Notably Sun and SGI) use
! CD-ROM drives with 512-byte blocks to mimick a hard disk drive.
! (No-override)
!
driveBlockSize:		2048

! When spinning up the CD, how long to wait (in seconds) for the disc
! to spin up to speed before accessing the drive again.
! (No-override)
spinUpInterval:		3

! Select the volume control taper curve.  You may need to experiment
! with this parameter to get the smoothest range of control from the
! volume control slider. This parameter is used only if
! volumeControlSupport is True.
!
! Supported values for this parameter:
! 0	Apply a linear taper.
! 1	Apply a squared taper (Small change at low settings,
!	increasing as the slider moves toward the upper range).
! 2	Apply an inverse-squared taper (big change at low settings,
!	diminishing as the slider moves toward the upper range).
!
volumeControlTaper:	0

! This allows the volume control setting to be pre-set when xmcd/cda
! first starts.  If set to -1, xmcd/cda will query the CD-ROM drive's
! internal setting and set the volume slider to match.  This will have
! an effect only if the drive and driver supports the appropriate
! functionality.  Valid settings for the parameter is 0-100 and -1.
startupVolume:		-1

! Select the channel routing.  This parameter is used only if
! channelRouteSupport is True.
!
! Supported values for this parameter (0 and 1 are the audio channels on
! the CD, L and R are the output channels):
! 0	Normal stereo:	0->L, 1->R
! 1	Reverse stereo:	0->R, 1->L
! 2	Mono-L:		0->L, 0->R
! 3	Mono-R:		1->L, 1->R	
! 4	Mono-L+R:	0+1->L, 0+1->R
!
channelRoute:		0

! During FF/REW search operations, the number of audio blocks to skip
! to the next audible sample
! (xmcd only)
searchSkipBlocks:	145

! During FF/REW search operations, the amount of time to pause between
! each audio sample (msec)
! (xmcd only)
searchPauseInterval:	80

! During FF/REW search operations, after this many audio samples the
! search speed will be tripled (i.e., the searchSkipBlocks parameter is
! internally multiplied by 3).  If this parameter is set to 0, then
! no speedup will occur.
! (xmcd only)
searchSpeedUpCount:	15

! During FF/REW search operations, the percentage of the current normal
! playback volume to be used for audio samples.  This is used only if
! the volumeControlSupport device specific parameter is set to True.
! (xmcd only)
searchVolumePercent:	35

! During FF/REW search operations, the minimum volume setting for audio
! samples.  This is used only if the volumeControlSupport device specific
! parameter is set to True.
! (xmcd only)
searchMinVolume:	2

! Whether the CD should be spun-down after it is loaded.  This reduces
! wear on the drive if there won't be any audio playback activity for
! a while.
spinDownOnLoad:		True

! Whether the CD should automatically start playing when it is loaded.
! This parameter, if set to True, overrides spinDownOnLoad.
playOnLoad:		False

! Whether the CD should be automatically ejected when done playing.
! "Done" means finished playing the last track on the CD in normal
! mode, or the last track in the shuffle or program mode play sequence.
! This option is only effective if ejectSupport is True.
ejectOnDone:		False

! Whether xmcd or the cda daemon should automatically exit when done
! playing.  "Done" means finished playing the last track on the CD in
! normal mode, or the last track in the shuffle or program mode play
! sequence.
exitOnDone:		False

! Whether the CD should be ejected on program exit.
! This option is only effective if ejectSupport is True.
ejectOnExit:		False

! Whether the CD should be stopped on program exit.
stopOnExit:		True

! Whether xmcd should exit when the CD is ejected.  Although this is
! a generic option, it is added primarily to make xmcd run better
! under Sun Solaris 2.x's Volume Manager.
! This option is only effective if ejectSupport is True.
!
! Note: If this parameter is set to True, then xmcd will exit after
! the CD is ejected, without the usual confirmation dialog box (as you
! would get when pressing the Quit button).
exitOnEject:		False

! Whether xmcd should close the device when the CD is ejected.
! Although this is a generic option, it is added primarily to make
! xmcd run better under Sun Solaris 2.x's Volume Manager.
! This option is only effective if ejectSupport is True.
!
! Note: If this parameter is set to True, then the device will be re-opened
! when a new CD is loaded.  The "exitOnEject" parameter takes precedence
! over this one.
closeOnEject:		True

! Whether to enable the Repeat mode on program startup.
repeatMode:		False

! Whether to enable the Shuffle mode on program startup.
shuffleMode:		False

! Whether to disable the CD-ROM drive front panel eject button when
! a disc is loaded.  Normally this should be set to True.  See also
! the caddyLockSupport and ejectSupport parameters.
caddyLock:		True

! This parameter is meaningful only on a multi-CD changer.  When set to
! True, the normal playback mode will play through all discs in
! sequence.  When set to False, playback will stop after the current
! disc is done playing.  Multi-play will be disabled when the program
! or shuffle mode is enabled.
multiPlay:		False

! This parameter is meaningful only if multiPlay is True.
! When set to True, the discs in the multi-disc changer will be played
! in reverse-order.
reversePlay:		False

