home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-12-19 | 62.8 KB | 1,951 lines |
- Newsgroups: comp.sources.x
- From: ti@bazooka.amb.org (Ti Kan)
- Subject: v21i066: xmcd - X11/Motif CD audio player, Part04/13
- Message-ID: <1993Dec19.193840.24063@sparky.sterling.com>
- X-Md4-Signature: 4fe215d92d0fb07c56d4e353e4883037
- Sender: chris@sparky.sterling.com (Chris Olson)
- Organization: Sterling Software
- Date: Sun, 19 Dec 1993 19:38:40 GMT
- Approved: chris@sterling.com
-
- Submitted-by: ti@bazooka.amb.org (Ti Kan)
- Posting-number: Volume 21, Issue 66
- Archive-name: xmcd/part04
- Environment: X11, OSF/Motif
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 4 (of 13)."
- # Contents: patchlevel.h resource.h util.h widget.h xmcd.h
- # Wrapped by ti@bazooka on Mon Nov 8 10:35:19 1993
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'patchlevel.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'patchlevel.h'\"
- else
- echo shar: Extracting \"'patchlevel.h'\" \(1150 characters\)
- sed "s/^X//" >'patchlevel.h' <<'END_OF_FILE'
- X/*
- X * xmcd - Motif(tm) CD Audio Player
- X *
- X * Copyright (C) 1993 Ti Kan
- X * E-mail: ti@amb.org
- X *
- X * This program is free software; you can redistribute it and/or modify
- X * it under the terms of the GNU General Public License as published by
- X * the Free Software Foundation; either version 2 of the License, or
- X * (at your option) any later version.
- X *
- X * This program is distributed in the hope that it will be useful,
- X * but WITHOUT ANY WARRANTY; without even the implied warranty of
- X * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- X * GNU General Public License for more details.
- X *
- X * You should have received a copy of the GNU General Public License
- X * along with this program; if not, write to the Free Software
- X * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- X *
- X */
- X#ifndef __PATCHLEVEL_H__
- X#define __PATCHLEVEL_H__
- X
- X#ifndef LINT
- Xstatic char *_patchlevel_h_ident_ = "@(#)patchlevel.h 1.16 93/09/28";
- X#endif
- X
- X#define VERSION "1.0" /* The version number */
- X#define VERSION_EXT "" /* Version number extension */
- X#define PATCHLEVEL 0 /* The patch level */
- X
- X#endif /* __PATCHLEVEL_H__ */
- END_OF_FILE
- if test 1150 -ne `wc -c <'patchlevel.h'`; then
- echo shar: \"'patchlevel.h'\" unpacked with wrong size!
- fi
- # end of 'patchlevel.h'
- fi
- if test -f 'resource.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'resource.h'\"
- else
- echo shar: Extracting \"'resource.h'\" \(32884 characters\)
- sed "s/^X//" >'resource.h' <<'END_OF_FILE'
- X/*
- X * xmcd - Motif(tm) CD Audio Player
- X *
- X * Copyright (C) 1993 Ti Kan
- X * E-mail: ti@amb.org
- X *
- X * This program is free software; you can redistribute it and/or modify
- X * it under the terms of the GNU General Public License as published by
- X * the Free Software Foundation; either version 2 of the License, or
- X * (at your option) any later version.
- X *
- X * This program is distributed in the hope that it will be useful,
- X * but WITHOUT ANY WARRANTY; without even the implied warranty of
- X * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- X * GNU General Public License for more details.
- X *
- X * You should have received a copy of the GNU General Public License
- X * along with this program; if not, write to the Free Software
- X * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- X *
- X */
- X#ifndef __RESOURCE_H__
- X#define __RESOURCE_H__
- X
- X#ifndef LINT
- Xstatic char *_resource_h_ident_ = "@(#)resource.h 1.91 93/09/28";
- X#endif
- X
- X#define XmcdNdevnum "devnum"
- X#define XmcdCDevnum "Devnum"
- X#define XmcdNdevice "device"
- X#define XmcdCDevice "Device"
- X#define XmcdNlibdir "libdir"
- X#define XmcdCLibdir "Libdir"
- X#define XmcdNdbdir "dbdir"
- X#define XmcdCDbdir "Dbdir"
- X#define XmcdNmaxDbdirs "maxDbdirs"
- X#define XmcdCMaxDbdirs "MaxDbdirs"
- X#define XmcdNdbFileMode "dbFileMode"
- X#define XmcdCDbFileMode "DbFileMode"
- X
- X#define XmcdNcaddyLock "caddyLock"
- X#define XmcdCCaddyLock "CaddyLock"
- X#define XmcdNstatusPollInterval "statusPollInterval"
- X#define XmcdCStatusPollInterval "StatusPollInterval"
- X#define XmcdNinsertPollInterval "insertPollInterval"
- X#define XmcdCInsertPollInterval "InsertPollInterval"
- X#define XmcdNpreviousThreshold "previousThreshold"
- X#define XmcdCPreviousThreshold "PreviousThreshold"
- X#define XmcdNsearchSkipBlocks "searchSkipBlocks"
- X#define XmcdCSearchSkipBlocks "SearchSkipBlocks"
- X#define XmcdNsearchPauseInterval "searchPauseInterval"
- X#define XmcdCSearchPauseInterval "SearchPauseInterval"
- X#define XmcdNsearchSpeedUpCount "searchSpeedUpCount"
- X#define XmcdCSearchSpeedUpCount "SearchSpeedUpCount"
- X#define XmcdNsearchVolumePercent "searchVolumePercent"
- X#define XmcdCSearchVolumePercent "SearchVolumePercent"
- X#define XmcdNsearchMinVolume "searchMinVolume"
- X#define XmcdCSearchMinVolume "SearchMinVolume"
- X#define XmcdNsampleBlocks "sampleBlocks"
- X#define XmcdCSampleBlocks "SampleBlocks"
- X#define XmcdNminimumPlayBlocks "minimumPlayBlocks"
- X#define XmcdCMinimumPlayBlocks "MinimumPlayBlocks"
- X#define XmcdNdisplayBlinkOnInterval "displayBlinkOnInterval"
- X#define XmcdCDisplayBlinkOnInterval "DisplayBlinkOnInterval"
- X#define XmcdNdisplayBlinkOffInterval "displayBlinkOffInterval"
- X#define XmcdCDisplayBlinkOffInterval "DisplayBlinkOffInterval"
- X#define XmcdNdriveVendorCode "driveVendorCode"
- X#define XmcdCDriveVendorCode "DriveVendorCode"
- X#define XmcdNplayAudio10Support "playAudio10Support"
- X#define XmcdCPlayAudio10Support "PlayAudio10Support"
- X#define XmcdNplayAudio12Support "playAudio12Support"
- X#define XmcdCPlayAudio12Support "PlayAudio12Support"
- X#define XmcdNplayAudioMSFSupport "playAudioMSFSupport"
- X#define XmcdCPlayAudioMSFSupport "PlayAudioMSFSupport"
- X#define XmcdNplayAudioTISupport "playAudioTISupport"
- X#define XmcdCPlayAudioTISupport "PlayAudioTISupport"
- X#define XmcdNloadSupport "loadSupport"
- X#define XmcdCLoadSupport "LoadSupport"
- X#define XmcdNejectSupport "ejectSupport"
- X#define XmcdCEjectSupport "EjectSupport"
- X#define XmcdNvolumeControlSupport "volumeControlSupport"
- X#define XmcdCVolumeControlSupport "VolumeControlSupport"
- X#define XmcdNvolumeControlSetDBD "volumeControlSetDBD"
- X#define XmcdCVolumeControlSetDBD "VolumeControlSetDBD"
- X#define XmcdNscsiAudioVolumeBase "scsiAudioVolumeBase"
- X#define XmcdCScsiAudioVolumeBase "ScsiAudioVolumeBase"
- X#define XmcdNvolumeControlTaper "volumeControlTaper"
- X#define XmcdCVolumeControlTaper "VolumeControlTaper"
- X#define XmcdNpauseResumeSupport "pauseResumeSupport"
- X#define XmcdCPauseResumeSupport "PauseResumeSupport"
- X#define XmcdNcaddyLockSupport "caddyLockSupport"
- X#define XmcdCCaddyLockSupport "CaddyLockSupport"
- X#define XmcdNspinDownOnLoad "spinDownOnLoad"
- X#define XmcdCSpinDownOnLoad "SpinDownOnLoad"
- X#define XmcdNejectOnExit "ejectOnExit"
- X#define XmcdCEjectOnExit "EjectOnExit"
- X#define XmcdNstopOnExit "stopOnExit"
- X#define XmcdCStopOnExit "StopOnExit"
- X#define XmcdNshowScsiErrMsg "showScsiErrMsg"
- X#define XmcdCShowScsiErrMsg "ShowScsiErrMsg"
- X#define XmcdNmainShowFocus "mainShowFocus"
- X#define XmcdCMainShowFocus "MainShowFocus"
- X
- X#define XmcdNmainWindowTitle "mainWindowTitle"
- X#define XmcdCMainWindowTitle "MainWindowTitle"
- X#define XmcdNdbModeMsg "dbModeMsg"
- X#define XmcdCDbModeMsg "DbModeMsg"
- X#define XmcdNprogModeMsg "progModeMsg"
- X#define XmcdCProgModeMsg "ProgModeMsg"
- X#define XmcdNelapseMsg "elapseMsg"
- X#define XmcdCElapseMsg "ElapseMsg"
- X#define XmcdNremainTrackMsg "remainTrackMsg"
- X#define XmcdCRemainTrackMsg "RemainTrackMsg"
- X#define XmcdNremainDiscMsg "remainDiscMsg"
- X#define XmcdCRemainDiscMsg "RemainDiscMsg"
- X#define XmcdNplayMsg "playMsg"
- X#define XmcdCPlayMsg "PlayMsg"
- X#define XmcdNpauseMsg "pauseMsg"
- X#define XmcdCPauseMsg "PauseMsg"
- X#define XmcdNreadyMsg "readyMsg"
- X#define XmcdCReadyMsg "ReadyMsg"
- X#define XmcdNsampleMsg "sampleMsg"
- X#define XmcdCSampleMsg "SampleMsg"
- X#define XmcdNusageMsg "usageMsg"
- X#define XmcdCUsageMsg "UsageMsg"
- X#define XmcdNbadOptsMsg "badOptsMsg"
- X#define XmcdCBadOptsMsg "BadOptsMsg"
- X#define XmcdNnoDiscMsg "noDiscMsg"
- X#define XmcdCNoDiscMsg "NoDiscMsg"
- X#define XmcdNdevBusyMsg "devBusyMsg"
- X#define XmcdCDevBusyMsg "DevBusyMsg"
- X#define XmcdNdataMsg "dataMsg"
- X#define XmcdCDataMsg "DataMsg"
- X#define XmcdNwarningMsg "warningMsg"
- X#define XmcdCWarningMsg "WarningMsg"
- X#define XmcdNfatalMsg "fatalMsg"
- X#define XmcdCFatalMsg "FatalMsg"
- X#define XmcdNconfirmMsg "confirmMsg"
- X#define XmcdCConfirmMsg "ConfirmMsg"
- X#define XmcdNinfoMsg "infoMsg"
- X#define XmcdCInfoMsg "InfoMsg"
- X#define XmcdNaboutMsg "aboutMsg"
- X#define XmcdCAboutMsg "AboutMsg"
- X#define XmcdNquitMsg "quitMsg"
- X#define XmcdCQuitMsg "QuitMsg"
- X#define XmcdNnoMemMsg "noMemMsg"
- X#define XmcdCNoMemMsg "NoMemMsg"
- X#define XmcdNnoHelpMsg "noHelpMsg"
- X#define XmcdCNoHelpMsg "NoHelpMsg"
- X#define XmcdNnoLinkMsg "noLinkMsg"
- X#define XmcdCNoLinkMsg "NoLinkMsg"
- X#define XmcdNnoDbMsg "noDbMsg"
- X#define XmcdCNoDbMsg "NoDbMsg"
- X#define XmcdNnotRomMsg "notRomMsg"
- X#define XmcdCNotRomMsg "NotRomMsg"
- X#define XmcdNnotScsi2Msg "notScsi2Msg"
- X#define XmcdCNotScsi2Msg "NotScsi2Msg"
- X#define XmcdNmodeErrMsg "modeErrMsg"
- X#define XmcdCModeErrMsg "ModeErrMsg"
- X#define XmcdNstatErrMsg "statErrMsg"
- X#define XmcdCStatErrMsg "StatErrMsg"
- X#define XmcdNnodeErrMsg "nodeErrMsg"
- X#define XmcdCNodeErrMsg "NodeErrMsg"
- X#define XmcdNseqFmtErrMsg "seqFmtErrMsg"
- X#define XmcdCSeqFmtErrMsg "SeqFmtErrMsg"
- X#define XmcdNdbdirsErrMsg "dbdirsErrMsg"
- X#define XmcdCDbdirsErrMsg "DbdirsErrMsg"
- X#define XmcdNrecovErrMsg "recovErrMsg"
- X#define XmcdCRecovErrMsg "RecovErrMsg"
- X#define XmcdNmaxErrMsg "maxErrMsg"
- X#define XmcdCMaxErrMsg "MaxErrMsg"
- X#define XmcdNsavErrForkMsg "savErrForkMsg"
- X#define XmcdCSavErrForkMsg "SavErrForkMsg"
- X#define XmcdNsavErrSuidMsg "savErrSuidMsg"
- X#define XmcdCSavErrSuidMsg "SavErrSuidMsg"
- X#define XmcdNsavErrOpenMsg "savErrOpenMsg"
- X#define XmcdCSavErrOpenMsg "SavErrOpenMsg"
- X#define XmcdNsavErrKilledMsg "savErrKilledMsg"
- X#define XmcdCSavErrKilledMsg "SavErrKilledMsg"
- X#define XmcdNlnkErrForkMsg "lnkErrForkMsg"
- X#define XmcdCLnkErrForkMsg "LnkErrForkMsg"
- X#define XmcdNlnkErrSuidMsg "lnkErrSuidMsg"
- X#define XmcdCLnkErrSuidMsg "LnkErrSuidMsg"
- X#define XmcdNlnkErrLinkMsg "lnkErrLinkMsg"
- X#define XmcdCLnkErrLinkMsg "LnkErrLinkMsg"
- X#define XmcdNlnkErrKilledMsg "lnkErrKilledMsg"
- X#define XmcdCLnkErrKilledMsg "LnkErrKilledMsg"
- X
- X#define XmcdNbuttonLabelKey "buttonLabelKey"
- X#define XmcdCButtonLabelKey "ButtonLabelKey"
- X#define XmcdNlockKey "lockKey"
- X#define XmcdCLockKey "LockKey"
- X#define XmcdNrepeatKey "repeatKey"
- X#define XmcdCRepeatKey "RepeatKey"
- X#define XmcdNshuffleKey "shuffleKey"
- X#define XmcdCShuffleKey "ShuffleKey"
- X#define XmcdNejectKey "ejectKey"
- X#define XmcdCEjectKey "EjectKey"
- X#define XmcdNpowerOffKey "powerOffKey"
- X#define XmcdCPowerOffKey "PowerOffKey"
- X#define XmcdNdbprogKey "dbprogKey"
- X#define XmcdCDbprogKey "DbprogKey"
- X#define XmcdNhelpKey "helpKey"
- X#define XmcdCHelpKey "HelpKey"
- X#define XmcdNtimeKey "timeKey"
- X#define XmcdCTimeKey "TimeKey"
- X#define XmcdNabKey "abKey"
- X#define XmcdCAbKey "AbKey"
- X#define XmcdNsampleKey "sampleKey"
- X#define XmcdCSampleKey "SampleKey"
- X#define XmcdNkeypadKey "keypadKey"
- X#define XmcdCKeypadKey "KeypadKey"
- X#define XmcdNplayPauseKey "playPauseKey"
- X#define XmcdCPlayPauseKey "PlayPauseKey"
- X#define XmcdNstopKey "stopKey"
- X#define XmcdCStopKey "StopKey"
- X#define XmcdNprevTrackKey "prevTrackKey"
- X#define XmcdCPrevTrackKey "PrevTrackKey"
- X#define XmcdNnextTrackKey "nextTrackKey"
- X#define XmcdCNextTrackKey "NextTrackKey"
- X#define XmcdNprevIndexKey "prevIndexKey"
- X#define XmcdCPrevIndexKey "PrevIndexKey"
- X#define XmcdNnextIndexKey "nextIndexKey"
- X#define XmcdCNextIndexKey "NextIndexKey"
- X#define XmcdNrewKey "rewKey"
- X#define XmcdCRewKey "RewKey"
- X#define XmcdNffKey "ffKey"
- X#define XmcdCFfKey "FfKey"
- X#define XmcdNkeypadNumKey0 "keypadNumKey0"
- X#define XmcdCKeypadNumKey0 "KeypadNumKey0"
- X#define XmcdNkeypadNumKey1 "keypadNumKey1"
- X#define XmcdCKeypadNumKey1 "KeypadNumKey1"
- X#define XmcdNkeypadNumKey2 "keypadNumKey2"
- X#define XmcdCKeypadNumKey2 "KeypadNumKey2"
- X#define XmcdNkeypadNumKey3 "keypadNumKey3"
- X#define XmcdCKeypadNumKey3 "KeypadNumKey3"
- X#define XmcdNkeypadNumKey4 "keypadNumKey4"
- X#define XmcdCKeypadNumKey4 "KeypadNumKey4"
- X#define XmcdNkeypadNumKey5 "keypadNumKey5"
- X#define XmcdCKeypadNumKey5 "KeypadNumKey5"
- X#define XmcdNkeypadNumKey6 "keypadNumKey6"
- X#define XmcdCKeypadNumKey6 "KeypadNumKey6"
- X#define XmcdNkeypadNumKey7 "keypadNumKey7"
- X#define XmcdCKeypadNumKey7 "KeypadNumKey7"
- X#define XmcdNkeypadNumKey8 "keypadNumKey8"
- X#define XmcdCKeypadNumKey8 "KeypadNumKey8"
- X#define XmcdNkeypadNumKey9 "keypadNumKey9"
- X#define XmcdCKeypadNumKey9 "KeypadNumKey9"
- X#define XmcdNkeypadEnterKey "keypadEnterKey"
- X#define XmcdCKeypadEnterKey "KeypadEnterKey"
- X#define XmcdNkeypadClearKey "keypadClearKey"
- X#define XmcdCKeypadClearKey "KeypadClearKey"
- X#define XmcdNkeypadCancelKey "keypadCancelKey"
- X#define XmcdCKeypadCancelKey "KeypadCancelKey"
- X
- X
- XSTATIC XtResource resources[] = {
- X {
- X XmcdNdevnum, XmcdCDevnum,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, devnum), XmRImmediate,
- X (XtPointer) DEVNUM,
- X },
- X {
- X XmcdNdevice, XmcdCDevice,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, device), XmRImmediate,
- X (XtPointer) DEVICE,
- X },
- X {
- X XmcdNlibdir, XmcdCLibdir,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, libdir), XmRImmediate,
- X (XtPointer) CDLIBDIR,
- X },
- X {
- X XmcdNdbdir, XmcdCDbdir,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, dbdir), XmRImmediate,
- X (XtPointer) CDDBDIR,
- X },
- X {
- X XmcdNmaxDbdirs, XmcdCMaxDbdirs,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, max_dbdirs), XmRImmediate,
- X (XtPointer) MAX_DBDIRS,
- X },
- X {
- X XmcdNdbFileMode, XmcdCDbFileMode,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, dbfile_mode), XmRImmediate,
- X (XtPointer) DBFILE_MODE,
- X },
- X {
- X XmcdNcaddyLock, XmcdCCaddyLock,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, caddy_lock), XmRImmediate,
- X (XtPointer) CADDY_LOCK,
- X },
- X {
- X XmcdNspinDownOnLoad, XmcdCSpinDownOnLoad,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, load_spindown), XmRImmediate,
- X (XtPointer) LOAD_SPINDOWN,
- X },
- X {
- X XmcdNejectOnExit, XmcdCEjectOnExit,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, exit_eject), XmRImmediate,
- X (XtPointer) EXIT_EJECT,
- X },
- X {
- X XmcdNstopOnExit, XmcdCStopOnExit,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, exit_stop), XmRImmediate,
- X (XtPointer) EXIT_STOP,
- X },
- X {
- X XmcdNshowScsiErrMsg, XmcdCShowScsiErrMsg,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, scsierr_msg), XmRImmediate,
- X (XtPointer) SCSIERR_MSG,
- X },
- X {
- X XmcdNmainShowFocus, XmcdCMainShowFocus,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, main_showfocus), XmRImmediate,
- X (XtPointer) MAIN_SHOWFOCUS,
- X },
- X {
- X XmcdNstatusPollInterval, XmcdCStatusPollInterval,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, stat_interval), XmRImmediate,
- X (XtPointer) STATUS_INTERVAL,
- X },
- X {
- X XmcdNinsertPollInterval, XmcdCInsertPollInterval,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, ins_interval), XmRImmediate,
- X (XtPointer) INSERT_INTERVAL,
- X },
- X {
- X XmcdNpreviousThreshold, XmcdCPreviousThreshold,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, prev_threshold), XmRImmediate,
- X (XtPointer) PREV_THRESHOLD,
- X },
- X {
- X XmcdNsearchSkipBlocks, XmcdCSearchSkipBlocks,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, skip_blks), XmRImmediate,
- X (XtPointer) SKIP_BLKS,
- X },
- X {
- X XmcdNsearchPauseInterval, XmcdCSearchPauseInterval,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, skip_pause), XmRImmediate,
- X (XtPointer) SKIP_PAUSE,
- X },
- X {
- X XmcdNsearchSpeedUpCount, XmcdCSearchSpeedUpCount,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, skip_spdup), XmRImmediate,
- X (XtPointer) SKIP_SPDUP,
- X },
- X {
- X XmcdNsearchVolumePercent, XmcdCSearchVolumePercent,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, skip_vol), XmRImmediate,
- X (XtPointer) SKIP_VOL,
- X },
- X {
- X XmcdNsearchMinVolume, XmcdCSearchMinVolume,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, skip_minvol), XmRImmediate,
- X (XtPointer) SKIP_MINVOL,
- X },
- X {
- X XmcdNsampleBlocks, XmcdCSampleBlocks,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, sample_blks), XmRImmediate,
- X (XtPointer) SAMPLE_BLKS,
- X },
- X {
- X XmcdNminimumPlayBlocks, XmcdCMinimumPlayBlocks,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, min_playblks), XmRImmediate,
- X (XtPointer) MIN_PLAYBLKS,
- X },
- X {
- X XmcdNdisplayBlinkOnInterval, XmcdCDisplayBlinkOnInterval,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, blinkon_interval), XmRImmediate,
- X (XtPointer) BLINKON_INTERVAL,
- X },
- X {
- X XmcdNdisplayBlinkOffInterval, XmcdCDisplayBlinkOffInterval,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, blinkoff_interval), XmRImmediate,
- X (XtPointer) BLINKOFF_INTERVAL,
- X },
- X {
- X XmcdNdriveVendorCode, XmcdCDriveVendorCode,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, vendor_code), XmRImmediate,
- X (XtPointer) VENDOR_CODE,
- X },
- X {
- X XmcdNplayAudio10Support, XmcdCPlayAudio10Support,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, play10_supp), XmRImmediate,
- X (XtPointer) PLAY10_SUPP,
- X },
- X {
- X XmcdNplayAudio12Support, XmcdCPlayAudio12Support,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, play12_supp), XmRImmediate,
- X (XtPointer) PLAY12_SUPP,
- X },
- X {
- X XmcdNplayAudioMSFSupport, XmcdCPlayAudioMSFSupport,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, playmsf_supp), XmRImmediate,
- X (XtPointer) PLAYMSF_SUPP,
- X },
- X {
- X XmcdNplayAudioTISupport, XmcdCPlayAudioTISupport,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, playti_supp), XmRImmediate,
- X (XtPointer) PLAYTI_SUPP,
- X },
- X {
- X XmcdNloadSupport, XmcdCLoadSupport,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, load_supp), XmRImmediate,
- X (XtPointer) LOAD_SUPP,
- X },
- X {
- X XmcdNejectSupport, XmcdCEjectSupport,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, eject_supp), XmRImmediate,
- X (XtPointer) EJECT_SUPP,
- X },
- X {
- X XmcdNvolumeControlSupport, XmcdCVolumeControlSupport,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, mselvol_supp), XmRImmediate,
- X (XtPointer) MSELVOL_SUPP,
- X },
- X {
- X XmcdNvolumeControlSetDBD, XmcdCVolumeControlSetDBD,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, mselvol_dbd), XmRImmediate,
- X (XtPointer) MSELVOL_DBD,
- X },
- X {
- X XmcdNscsiAudioVolumeBase, XmcdCScsiAudioVolumeBase,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, base_scsivol), XmRImmediate,
- X (XtPointer) BASE_SCSIVOL,
- X },
- X {
- X XmcdNvolumeControlTaper, XmcdCVolumeControlTaper,
- X XmRInt, sizeof(int),
- X XtOffsetOf(AppData, vol_taper), XmRImmediate,
- X (XtPointer) VOL_TAPER,
- X },
- X {
- X XmcdNpauseResumeSupport, XmcdCPauseResumeSupport,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, pause_supp), XmRImmediate,
- X (XtPointer) PAUSE_SUPP,
- X },
- X {
- X XmcdNcaddyLockSupport, XmcdCCaddyLockSupport,
- X XmRBoolean, sizeof(Boolean),
- X XtOffsetOf(AppData, caddylock_supp), XmRImmediate,
- X (XtPointer) CADDYLOCK_SUPP,
- X },
- X {
- X XmcdNmainWindowTitle, XmcdCMainWindowTitle,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, main_title), XmRImmediate,
- X (XtPointer) MAIN_TITLE,
- X },
- X {
- X XmcdNdbModeMsg, XmcdCDbModeMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_dbmode), XmRImmediate,
- X (XtPointer) STR_DBMODE,
- X },
- X {
- X XmcdNprogModeMsg, XmcdCProgModeMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_progmode), XmRImmediate,
- X (XtPointer) STR_PROGMODE,
- X },
- X {
- X XmcdNelapseMsg, XmcdCElapseMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_elapse), XmRImmediate,
- X (XtPointer) STR_ELAPSE,
- X },
- X {
- X XmcdNremainTrackMsg, XmcdCRemainTrackMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_remaintrk), XmRImmediate,
- X (XtPointer) STR_REMAIN_TRK,
- X },
- X {
- X XmcdNremainDiscMsg, XmcdCRemainDiscMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_remaindisc), XmRImmediate,
- X (XtPointer) STR_REMAIN_DISC,
- X },
- X {
- X XmcdNplayMsg, XmcdCPlayMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_play), XmRImmediate,
- X (XtPointer) STR_PLAY,
- X },
- X {
- X XmcdNpauseMsg, XmcdCPauseMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_pause), XmRImmediate,
- X (XtPointer) STR_PAUSE,
- X },
- X {
- X XmcdNreadyMsg, XmcdCReadyMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_ready), XmRImmediate,
- X (XtPointer) STR_READY,
- X },
- X {
- X XmcdNsampleMsg, XmcdCSampleMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_sample), XmRImmediate,
- X (XtPointer) STR_SAMPLE,
- X },
- X {
- X XmcdNusageMsg, XmcdCUsageMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_usage), XmRImmediate,
- X (XtPointer) STR_USAGE,
- X },
- X {
- X XmcdNbadOptsMsg, XmcdCBadOptsMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_badopts), XmRImmediate,
- X (XtPointer) STR_BADOPTS,
- X },
- X {
- X XmcdNnoDiscMsg, XmcdCNoDiscMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_nodisc), XmRImmediate,
- X (XtPointer) STR_NODISC,
- X },
- X {
- X XmcdNdevBusyMsg, XmcdCDevBusyMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_busy), XmRImmediate,
- X (XtPointer) STR_BUSY,
- X },
- X {
- X XmcdNdataMsg, XmcdCDataMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_data), XmRImmediate,
- X (XtPointer) STR_DATA,
- X },
- X {
- X XmcdNwarningMsg, XmcdCWarningMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_warning), XmRImmediate,
- X (XtPointer) STR_WARNING,
- X },
- X {
- X XmcdNfatalMsg, XmcdCFatalMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_fatal), XmRImmediate,
- X (XtPointer) STR_FATAL,
- X },
- X {
- X XmcdNconfirmMsg, XmcdCConfirmMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_confirm), XmRImmediate,
- X (XtPointer) STR_CONFIRM,
- X },
- X {
- X XmcdNinfoMsg, XmcdCInfoMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_info), XmRImmediate,
- X (XtPointer) STR_INFO,
- X },
- X {
- X XmcdNaboutMsg, XmcdCAboutMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_about), XmRImmediate,
- X (XtPointer) STR_ABOUT,
- X },
- X {
- X XmcdNquitMsg, XmcdCQuitMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_quit), XmRImmediate,
- X (XtPointer) STR_QUIT,
- X },
- X {
- X XmcdNnoMemMsg, XmcdCNoMemMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_nomemory), XmRImmediate,
- X (XtPointer) STR_NOMEMORY,
- X },
- X {
- X XmcdNnoHelpMsg, XmcdCNoHelpMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_nohelp), XmRImmediate,
- X (XtPointer) STR_NOHELP,
- X },
- X {
- X XmcdNnoLinkMsg, XmcdCNoLinkMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_nolink), XmRImmediate,
- X (XtPointer) STR_NOLINK,
- X },
- X {
- X XmcdNnoDbMsg, XmcdCNoDbMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_nodb), XmRImmediate,
- X (XtPointer) STR_NODB,
- X },
- X {
- X XmcdNnotRomMsg, XmcdCNotRomMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_notrom), XmRImmediate,
- X (XtPointer) STR_NOTROM,
- X },
- X {
- X XmcdNnotScsi2Msg, XmcdCNotScsi2Msg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_notscsi2), XmRImmediate,
- X (XtPointer) STR_NOTSCSI2,
- X },
- X {
- X XmcdNmodeErrMsg, XmcdCModeErrMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_moderr), XmRImmediate,
- X (XtPointer) STR_MODERR,
- X },
- X {
- X XmcdNstatErrMsg, XmcdCStatErrMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_staterr), XmRImmediate,
- X (XtPointer) STR_STATERR,
- X },
- X {
- X XmcdNnodeErrMsg, XmcdCNodeErrMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_noderr), XmRImmediate,
- X (XtPointer) STR_NODERR,
- X },
- X {
- X XmcdNseqFmtErrMsg, XmcdCSeqFmtErrMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_seqfmterr), XmRImmediate,
- X (XtPointer) STR_SEQFMTERR,
- X },
- X {
- X XmcdNdbdirsErrMsg, XmcdCDbdirsErrMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_dbdirserr), XmRImmediate,
- X (XtPointer) STR_DBDIRSERR,
- X },
- X {
- X XmcdNrecovErrMsg, XmcdCRecovErrMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_recoverr), XmRImmediate,
- X (XtPointer) STR_RECOVERR,
- X },
- X {
- X XmcdNmaxErrMsg, XmcdCMaxErrMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_maxerr), XmRImmediate,
- X (XtPointer) STR_MAXERR,
- X },
- X {
- X XmcdNsavErrForkMsg, XmcdCSavErrForkMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_saverr_fork), XmRImmediate,
- X (XtPointer) STR_SAVERR_FORK,
- X },
- X {
- X XmcdNsavErrSuidMsg, XmcdCSavErrSuidMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_saverr_suid), XmRImmediate,
- X (XtPointer) STR_SAVERR_SUID,
- X },
- X {
- X XmcdNsavErrOpenMsg, XmcdCSavErrOpenMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_saverr_open), XmRImmediate,
- X (XtPointer) STR_SAVERR_OPEN,
- X },
- X {
- X XmcdNsavErrKilledMsg, XmcdCSavErrKilledMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_saverr_killed), XmRImmediate,
- X (XtPointer) STR_SAVERR_KILLED,
- X },
- X {
- X XmcdNlnkErrForkMsg, XmcdCLnkErrForkMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_lnkerr_fork), XmRImmediate,
- X (XtPointer) STR_LNKERR_FORK,
- X },
- X {
- X XmcdNlnkErrSuidMsg, XmcdCLnkErrSuidMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_lnkerr_suid), XmRImmediate,
- X (XtPointer) STR_LNKERR_SUID,
- X },
- X {
- X XmcdNlnkErrLinkMsg, XmcdCLnkErrLinkMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_lnkerr_link), XmRImmediate,
- X (XtPointer) STR_LNKERR_LINK,
- X },
- X {
- X XmcdNlnkErrKilledMsg, XmcdCLnkErrKilledMsg,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, str_lnkerr_killed), XmRImmediate,
- X (XtPointer) STR_LNKERR_KILLED,
- X },
- X {
- X XmcdNbuttonLabelKey, XmcdCButtonLabelKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, btnlbl_key), XmRImmediate,
- X (XtPointer) BTNLBL_KEY,
- X },
- X {
- X XmcdNlockKey, XmcdCLockKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, lock_key), XmRImmediate,
- X (XtPointer) LOCK_KEY,
- X },
- X {
- X XmcdNrepeatKey, XmcdCRepeatKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, repeat_key), XmRImmediate,
- X (XtPointer) REPEAT_KEY,
- X },
- X {
- X XmcdNshuffleKey, XmcdCShuffleKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, shuffle_key), XmRImmediate,
- X (XtPointer) SHUFFLE_KEY,
- X },
- X {
- X XmcdNejectKey, XmcdCEjectKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, eject_key), XmRImmediate,
- X (XtPointer) EJECT_KEY,
- X },
- X {
- X XmcdNpowerOffKey, XmcdCPowerOffKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, poweroff_key), XmRImmediate,
- X (XtPointer) POWEROFF_KEY,
- X },
- X {
- X XmcdNdbprogKey, XmcdCDbprogKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, dbprog_key), XmRImmediate,
- X (XtPointer) DBPROG_KEY,
- X },
- X {
- X XmcdNhelpKey, XmcdCHelpKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, help_key), XmRImmediate,
- X (XtPointer) HELP_KEY,
- X },
- X {
- X XmcdNtimeKey, XmcdCTimeKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, time_key), XmRImmediate,
- X (XtPointer) TIME_KEY,
- X },
- X {
- X XmcdNabKey, XmcdCAbKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, ab_key), XmRImmediate,
- X (XtPointer) AB_KEY,
- X },
- X {
- X XmcdNsampleKey, XmcdCSampleKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, sample_key), XmRImmediate,
- X (XtPointer) SAMPLE_KEY,
- X },
- X {
- X XmcdNkeypadKey, XmcdCKeypadKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad_key), XmRImmediate,
- X (XtPointer) KEYPAD_KEY,
- X },
- X {
- X XmcdNplayPauseKey, XmcdCPlayPauseKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, playpause_key), XmRImmediate,
- X (XtPointer) PLAYPAUSE_KEY,
- X },
- X {
- X XmcdNstopKey, XmcdCStopKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, stop_key), XmRImmediate,
- X (XtPointer) STOP_KEY,
- X },
- X {
- X XmcdNprevTrackKey, XmcdCPrevTrackKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, prevtrk_key), XmRImmediate,
- X (XtPointer) PREVTRK_KEY,
- X },
- X {
- X XmcdNnextTrackKey, XmcdCNextTrackKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, nexttrk_key), XmRImmediate,
- X (XtPointer) NEXTTRK_KEY,
- X },
- X {
- X XmcdNprevIndexKey, XmcdCPrevIndexKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, previdx_key), XmRImmediate,
- X (XtPointer) PREVIDX_KEY,
- X },
- X {
- X XmcdNnextIndexKey, XmcdCNextIndexKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, nextidx_key), XmRImmediate,
- X (XtPointer) NEXTIDX_KEY,
- X },
- X {
- X XmcdNrewKey, XmcdCRewKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, rew_key), XmRImmediate,
- X (XtPointer) REW_KEY,
- X },
- X {
- X XmcdNffKey, XmcdCFfKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, ff_key), XmRImmediate,
- X (XtPointer) FF_KEY,
- X },
- X {
- X XmcdNkeypadNumKey0, XmcdCKeypadNumKey0,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad0_key), XmRImmediate,
- X (XtPointer) KEYPAD0_KEY,
- X },
- X {
- X XmcdNkeypadNumKey1, XmcdCKeypadNumKey1,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad1_key), XmRImmediate,
- X (XtPointer) KEYPAD1_KEY,
- X },
- X {
- X XmcdNkeypadNumKey2, XmcdCKeypadNumKey2,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad2_key), XmRImmediate,
- X (XtPointer) KEYPAD2_KEY,
- X },
- X {
- X XmcdNkeypadNumKey3, XmcdCKeypadNumKey3,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad3_key), XmRImmediate,
- X (XtPointer) KEYPAD3_KEY,
- X },
- X {
- X XmcdNkeypadNumKey4, XmcdCKeypadNumKey4,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad4_key), XmRImmediate,
- X (XtPointer) KEYPAD4_KEY,
- X },
- X {
- X XmcdNkeypadNumKey5, XmcdCKeypadNumKey5,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad5_key), XmRImmediate,
- X (XtPointer) KEYPAD5_KEY,
- X },
- X {
- X XmcdNkeypadNumKey6, XmcdCKeypadNumKey6,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad6_key), XmRImmediate,
- X (XtPointer) KEYPAD6_KEY,
- X },
- X {
- X XmcdNkeypadNumKey7, XmcdCKeypadNumKey7,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad7_key), XmRImmediate,
- X (XtPointer) KEYPAD7_KEY,
- X },
- X {
- X XmcdNkeypadNumKey8, XmcdCKeypadNumKey8,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad8_key), XmRImmediate,
- X (XtPointer) KEYPAD8_KEY,
- X },
- X {
- X XmcdNkeypadNumKey9, XmcdCKeypadNumKey9,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypad9_key), XmRImmediate,
- X (XtPointer) KEYPAD9_KEY,
- X },
- X {
- X XmcdNkeypadEnterKey, XmcdCKeypadEnterKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypadenter_key), XmRImmediate,
- X (XtPointer) KEYPADENTER_KEY,
- X },
- X {
- X XmcdNkeypadClearKey, XmcdCKeypadClearKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypadclear_key), XmRImmediate,
- X (XtPointer) KEYPADCLEAR_KEY,
- X },
- X {
- X XmcdNkeypadCancelKey, XmcdCKeypadCancelKey,
- X XmRString, sizeof(String),
- X XtOffsetOf(AppData, keypadcancel_key), XmRImmediate,
- X (XtPointer) KEYPADCANCEL_KEY,
- X },
- X};
- X
- X
- XSTATIC XrmOptionDescRec options[] = {
- X { "-dev", ".device", XrmoptionSepArg, NULL, },
- X { "-dbdir", ".dbdir", XrmoptionSepArg, NULL, },
- X};
- X
- X
- XSTATIC String fallbacks[] = {
- X "*mainForm.width: 390",
- X "*mainForm.height: 140",
- X "*keypadForm.width: 150",
- X "*keypadForm.height: 225",
- X "*dbprogForm.width: 450",
- X "*dbprogForm.height: 455",
- X "*extDiscInfoForm.width: 400",
- X "*extDiscInfoForm.height: 350",
- X "*extTrackInfoForm.width: 400",
- X "*extTrackInfoForm.height: 350",
- X "*helpForm.width: 400",
- X "*helpForm.height: 350",
- X "*dirSelectForm.width: 250",
- X "*dirSelectForm.height: 230",
- X "*linkSelectForm.width: 350",
- X "*linkSelectForm.height: 230",
- X "*mainForm.XmPushButton.labelType: PIXMAP",
- X "*mainForm.XmPushButton.fontList: 6x10",
- X "*mainForm.checkBoxFrame*fontList: 6x10",
- X "*trackIndicator.fontList: -*-helvetica-*-o-*--*-240-*",
- X "*indexIndicator.fontList: -*-helvetica-*-o-*--*-140-*",
- X "*timeIndicator.fontList: -*-helvetica-*-o-*--*-240-*",
- X "*dbModeIndicator.fontList: -*-times-*-r-*--*-120-*",
- X "*progModeIndicator.fontList: -*-times-*-r-*--*-120-*",
- X "*timeModeIndicator.fontList: -*-times-*-r-*--*-120-*",
- X "*playModeIndicator.fontList: -*-times-*-r-*--*-120-*",
- X "*keypadForm*keypadLabel.fontList: fixed",
- X "*keypadForm*keypadIndicator.fontList: -*-helvetica-*-o-*--*-140-*",
- X "*keypadForm*keypadCancelButton.fontList: fixed",
- X "*keypadForm*keypadClearButton.fontList: fixed",
- X "*keypadForm*fontList: -*-helvetica-bold-r-*--*-120-*",
- X "*dirSelectList.fontList: -*-helvetica-medium-r-*--*-120-*",
- X "*aboutPopup*fontList: -*-times-bold-i-*--*-240-*=chset1, -*-times-bold-i-*--*-120-*=chset2, -*-fixed-medium-r-*--*-100-*=chset3, fixed",
- X "*XmList.fontList: -*-helvetica-medium-r-*--*-120-*=chset1, -*-helvetica-bold-r-*--*-120-*=chset2, fixed",
- X "*XmText.fontList: -*-helvetica-medium-r-*--*-120-*",
- X "*XmScale*fontList: 6x10",
- X "*fontlist: fixed",
- X "*checkBox*button_0.labelString: disp",
- X "*checkBox*button_1.labelString: lock",
- X "*checkBox*button_2.labelString: rept",
- X "*checkBox*button_3.labelString: shuf",
- X "*ejectButton.labelString: eject",
- X "*powerOffButton.labelString: quit",
- X "*dbprogButton.labelString: cddb\nprog",
- X "*helpButton.labelString: help",
- X "*timeButton.labelString: time",
- X "*abButton.labelString: a->b",
- X "*sampleButton.labelString: samp",
- X "*keypadButton.labelString: kpad",
- X "*playPauseButton.labelString: play / pause",
- X "*stopButton.labelString: stop",
- X "*prevTrackButton.labelString: < track",
- X "*nextTrackButton.labelString: track >",
- X "*prevIndexButton.labelString: < index",
- X "*nextIndexButton.labelString: index >",
- X "*rewButton.labelString: << rew",
- X "*ffButton.labelString: ff >>",
- X "*keypadLabel.labelString: Direct track access",
- X "*keypadNumButton0.labelString: 0",
- X "*keypadNumButton1.labelString: 1",
- X "*keypadNumButton2.labelString: 2",
- X "*keypadNumButton3.labelString: 3",
- X "*keypadNumButton4.labelString: 4",
- X "*keypadNumButton5.labelString: 5",
- X "*keypadNumButton6.labelString: 6",
- X "*keypadNumButton7.labelString: 7",
- X "*keypadNumButton8.labelString: 8",
- X "*keypadNumButton9.labelString: 9",
- X "*keypadEnterButton.labelString: Enter",
- X "*keypadCancelButton.labelString: Cancel",
- X "*keypadClearButton.labelString: Clear",
- X "*aboutButton.labelString: About...",
- X "*discTitleLabel.labelString: Disc artist / Title",
- X "*discLabel.labelString: Disc",
- X "*extDiscInfoButton.labelString: Ext Info",
- X "*trackListLabel.labelString: Track / Time / Title",
- X "*timeSelectLabel.labelString: Time",
- X "*timeSelectBox*button_0.labelString: total",
- X "*timeSelectBox*button_1.labelString: track",
- X "*trackTitleLabel.labelString: Track title edit",
- X "*trackLabel.labelString: Track",
- X "*extTrackInfoButton.labelString: Ext Info",
- X "*programLabel.labelString: Trk Prog",
- X "*addProgramButton.labelString: Add to",
- X "*clearProgramButton.labelString: Clear",
- X "*playProgramButton.labelString: Play",
- X "*programSequenceLabel.labelString: Program sequence",
- X "*saveDatabaseButton.labelString: Save",
- X "*loadDatabaseButton.labelString: Load",
- X "*linkDatabaseButton.labelString: Link",
- X "*dbprogCancelButton.labelString: Cancel",
- X "*helpButton.labelString: Help",
- X "*extDiscInfoOkButton.labelString: OK",
- X "*extDiscInfoClearButton.labelString: Clear",
- X "*extDiscInfoCancelButton.labelString: Cancel",
- X "*extTrackInfoOkButton.labelString: OK",
- X "*extTrackInfoClearButton.labelString: Clear",
- X "*extTrackInfoCancelButton.labelString: Cancel",
- X "*helpOkButton.labelString: OK",
- X "*dirSelectLabel.labelString: Database Directory Selection",
- X "*dirSelectOkButton.labelString: OK",
- X "*dirSelectCancelButton.labelString: Cancel",
- X "*trackIndicator.foreground: white",
- X "*trackIndicator.background: black",
- X "*indexIndicator.foreground: white",
- X "*indexIndicator.background: black",
- X "*timeIndicator.foreground: white",
- X "*timeIndicator.background: black",
- X "*dbModeIndicator.foreground: white",
- X "*dbModeIndicator.background: black",
- X "*progModeIndicator.foreground: white",
- X "*progModeIndicator.background: black",
- X "*timeModeIndicator.foreground: white",
- X "*timeModeIndicator.background: black",
- X "*playModeIndicator.foreground: white",
- X "*playModeIndicator.background: black",
- X "*keypadIndicator.foreground: white",
- X "*keypadIndicator.background: black",
- X "*XmLabel.foreground: black",
- X "*XmLabel.background: white",
- X "*XmLabel.borderWidth: 0",
- X "*foreground: black",
- X "*background: white",
- X "*title: xmcd - Can't access X defaults file",
- X NULL,
- X};
- X
- X#endif /* __RESOURCE_H__ */
- X
- END_OF_FILE
- if test 32884 -ne `wc -c <'resource.h'`; then
- echo shar: \"'resource.h'\" unpacked with wrong size!
- fi
- # end of 'resource.h'
- fi
- if test -f 'util.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'util.h'\"
- else
- echo shar: Extracting \"'util.h'\" \(1713 characters\)
- sed "s/^X//" >'util.h' <<'END_OF_FILE'
- X/*
- X * xmcd - Motif(tm) CD Audio Player
- X *
- X * Copyright (C) 1993 Ti Kan
- X * E-mail: ti@amb.org
- X *
- X * This program is free software; you can redistribute it and/or modify
- X * it under the terms of the GNU General Public License as published by
- X * the Free Software Foundation; either version 2 of the License, or
- X * (at your option) any later version.
- X *
- X * This program is distributed in the hope that it will be useful,
- X * but WITHOUT ANY WARRANTY; without even the implied warranty of
- X * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- X * GNU General Public License for more details.
- X *
- X * You should have received a copy of the GNU General Public License
- X * along with this program; if not, write to the Free Software
- X * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- X *
- X */
- X#ifndef __UTIL_H__
- X#define __UTIL_H__
- X
- X#ifndef LINT
- Xstatic char *_util_h_ident_ = "@(#)util.h 1.28 93/09/28";
- X#endif
- X
- X
- X/* Utility macros */
- X#define sqr(x) ((x) * (x)) /* Compute the square of a number */
- X
- X
- X/* Public function prototypes */
- Xvoid usage(int, char **);
- Xsword32_t ltobcd(sword32_t);
- Xsword32_t bcdtol(sword32_t);
- Xbool_t stob(char *);
- Xchar *basename(char *);
- Xchar *dirname(char *);
- Xchar *homedir(uid_t);
- Xint isqrt(int);
- Xvoid blktomsf(word32_t, byte_t *, byte_t *, byte_t *, word32_t);
- Xvoid msftoblk(byte_t, byte_t, byte_t, word32_t *, word32_t);
- Xword16_t bswap16(word16_t);
- Xword32_t bswap24(word32_t);
- Xword32_t bswap32(word32_t);
- Xword16_t lswap16(word16_t);
- Xword32_t lswap24(word32_t);
- Xword32_t lswap32(word32_t);
- X
- X#ifdef DEBUG
- XFILE *dbfile_open(char *);
- Xint dbfile_close(FILE *);
- Xvoid dbfile_dump(FILE *, char *, byte_t *, int);
- X#endif
- X
- X#endif /* __UTIL_H__ */
- X
- END_OF_FILE
- if test 1713 -ne `wc -c <'util.h'`; then
- echo shar: \"'util.h'\" unpacked with wrong size!
- fi
- # end of 'util.h'
- fi
- if test -f 'widget.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'widget.h'\"
- else
- echo shar: Extracting \"'widget.h'\" \(8032 characters\)
- sed "s/^X//" >'widget.h' <<'END_OF_FILE'
- X/*
- X * xmcd - Motif(tm) CD Audio Player
- X *
- X * Copyright (C) 1993 Ti Kan
- X * E-mail: ti@amb.org
- X *
- X * This program is free software; you can redistribute it and/or modify
- X * it under the terms of the GNU General Public License as published by
- X * the Free Software Foundation; either version 2 of the License, or
- X * (at your option) any later version.
- X *
- X * This program is distributed in the hope that it will be useful,
- X * but WITHOUT ANY WARRANTY; without even the implied warranty of
- X * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- X * GNU General Public License for more details.
- X *
- X * You should have received a copy of the GNU General Public License
- X * along with this program; if not, write to the Free Software
- X * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- X *
- X */
- X#ifndef __WIDGET_H__
- X#define __WIDGET_H__
- X
- X#ifndef LINT
- Xstatic char *_widget_h_ident_ = "@(#)widget.h 1.41 93/09/28";
- X#endif
- X
- X/* Holder for all main window widgets */
- Xtypedef struct {
- X Widget toplevel; /* Top-level */
- X struct {
- X Widget form; /* Form container */
- X Widget chkbox_frm; /* Frame for Lock toggle */
- X Widget check_box; /* Toggle button checkbox */
- X Widget btnlbl_btn; /* Button label button */
- X Widget lock_btn; /* Caddy lock button */
- X Widget repeat_btn; /* Repeat button */
- X Widget shuffle_btn; /* Shuffle button */
- X Widget eject_btn; /* Eject button */
- X Widget poweroff_btn; /* Power off button */
- X Widget track_ind; /* Track number indicator */
- X Widget index_ind; /* Index number indicator */
- X Widget time_ind; /* Time indicator */
- X Widget dbmode_ind; /* CD database indicator */
- X Widget progmode_ind; /* Program mode indicator */
- X Widget timemode_ind; /* Time mode indicator */
- X Widget playmode_ind; /* Play mode indicator */
- X Widget dbprog_btn; /* CDDB/Program button */
- X Widget time_btn; /* Time display button */
- X Widget ab_btn; /* A->B mode button */
- X Widget sample_btn; /* Sample mode button */
- X Widget keypad_btn; /* Keypad button */
- X Widget help_btn; /* Help button */
- X Widget level_scale; /* Volume control slider */
- X Widget playpause_btn; /* Play/Pause button */
- X Widget stop_btn; /* Stop button */
- X Widget prevtrk_btn; /* Prev Track button */
- X Widget nexttrk_btn; /* Next Track button */
- X Widget previdx_btn; /* Prev Index button */
- X Widget nextidx_btn; /* Next Index button */
- X Widget rew_btn; /* Search REW button */
- X Widget ff_btn; /* Search FF button */
- X } main;
- X struct {
- X Widget form; /* Form container */
- X Widget keypad_lbl; /* Keypad label */
- X Widget keypad_ind; /* Keypad indicator */
- X Widget num_btn[10]; /* Number keys */
- X Widget enter_btn; /* Enter key */
- X Widget keypad_sep; /* Separator bar */
- X Widget cancel_btn; /* Cancel_btn */
- X Widget clear_btn; /* Clear */
- X } keypad;
- X struct {
- X Widget form; /* Form container */
- X Widget logo_lbl; /* Logo label */
- X Widget about_btn; /* About button */
- X Widget dtitle_lbl; /* Disc title label */
- X Widget dtitle_txt; /* Disc title text */
- X Widget extd_lbl; /* Disc ext descr label */
- X Widget extd_btn; /* Disc ext descr button */
- X Widget dbprog_sep1; /* Separator bar */
- X Widget trklist_lbl; /* Track list label */
- X Widget trk_list; /* Track list */
- X Widget radio_lbl; /* Time dpy radio box label */
- X Widget radio_frm; /* Time dpy radio box Frame */
- X Widget radio_box; /* Time dpy radio box */
- X Widget tottime_btn; /* Total time button */
- X Widget trktime_btn; /* Track time button */
- X Widget ttitle_lbl; /* Track title label */
- X Widget ttitle_txt; /* Track title text */
- X Widget extt_lbl; /* Track ext descr label */
- X Widget extt_btn; /* Track ext descr button */
- X Widget pgm_lbl; /* program label */
- X Widget addpgm_btn; /* Add to button */
- X Widget clrpgm_btn; /* Clear button */
- X Widget playpgm_btn; /* Play program button */
- X Widget pgmseq_lbl; /* Program sequence label */
- X Widget pgmseq_txt; /* Program sequence text */
- X Widget dbprog_sep2; /* Separator bar */
- X Widget savedb_btn; /* Save to database button */
- X Widget loaddb_btn; /* Load from database button */
- X Widget linkdb_btn; /* Link database entry button */
- X Widget cancel_btn; /* Cancel button */
- X } dbprog;
- X struct {
- X Widget form; /* Form container */
- X Widget disc_lbl; /* Disc ext descr label */
- X Widget disc_txt; /* Disc ext descr text */
- X Widget dbextd_sep; /* Separator bar */
- X Widget ok_btn; /* OK button */
- X Widget clear_btn; /* Clear button */
- X Widget cancel_btn; /* Cancel button */
- X } dbextd;
- X struct {
- X Widget form; /* Form container */
- X Widget trk_lbl; /* Track ext descr label */
- X Widget trk_txt; /* Track ext descr text */
- X Widget dbextt_sep; /* Separator bar */
- X Widget ok_btn; /* OK button */
- X Widget clear_btn; /* Clear button */
- X Widget cancel_btn; /* Cancel button */
- X } dbextt;
- X struct {
- X Widget form; /* Form container */
- X Widget dir_lbl; /* Directory list label */
- X Widget dir_list; /* Directory list */
- X Widget dirsel_sep; /* Separator bar */
- X Widget ok_btn; /* OK button */
- X Widget cancel_btn; /* Cancel button */
- X } dirsel;
- X struct {
- X Widget form; /* Form container */
- X Widget link_lbl; /* Directory list label */
- X Widget link_list; /* Directory list */
- X Widget linksel_sep; /* Separator bar */
- X Widget ok_btn; /* OK button */
- X Widget cancel_btn; /* Cancel button */
- X } linksel;
- X struct {
- X Widget form; /* Form container */
- X Widget help_txt; /* Help text */
- X Widget help_sep; /* Separator bar */
- X Widget ok_btn; /* OK button */
- X } help;
- X struct {
- X Widget info; /* Info popup */
- X Widget warning; /* Warning popup */
- X Widget fatal; /* Fatal error popup */
- X Widget confirm; /* Confirm popup */
- X Widget about; /* About popup */
- X } dialog;
- X} widgets_t;
- X
- X
- X/* Holder for all button-face pixmaps */
- Xtypedef struct {
- X struct {
- X Pixmap icon_pixmap; /* Icon logo */
- X Pixmap btnlbl_pixmap; /* Button label mode */
- X Pixmap lock_pixmap; /* Prevent caddy removal */
- X Pixmap repeat_pixmap; /* Repeat */
- X Pixmap shuffle_pixmap; /* Shuffle */
- X Pixmap eject_pixmap; /* Eject */
- X Pixmap eject_hlpixmap; /* Eject */
- X Pixmap poweroff_pixmap; /* Power off */
- X Pixmap poweroff_hlpixmap; /* Power off */
- X Pixmap dbprog_pixmap; /* Logo */
- X Pixmap dbprog_hlpixmap; /* Logo */
- X Pixmap time_pixmap; /* Time */
- X Pixmap time_hlpixmap; /* Time */
- X Pixmap ab_pixmap; /* A->B */
- X Pixmap ab_hlpixmap; /* A->B */
- X Pixmap sample_pixmap; /* Sample */
- X Pixmap sample_hlpixmap; /* Sample */
- X Pixmap keypad_pixmap; /* Keypad */
- X Pixmap keypad_hlpixmap; /* Keypad */
- X Pixmap help_pixmap; /* Help */
- X Pixmap help_hlpixmap; /* Help */
- X Pixmap playpause_pixmap; /* Play/Pause */
- X Pixmap playpause_hlpixmap; /* Play/Pause */
- X Pixmap stop_pixmap; /* Stop */
- X Pixmap stop_hlpixmap; /* Stop */
- X Pixmap prevtrk_pixmap; /* Prev Track */
- X Pixmap prevtrk_hlpixmap; /* Prev Track */
- X Pixmap nexttrk_pixmap; /* Next Track */
- X Pixmap nexttrk_hlpixmap; /* Next Track */
- X Pixmap previdx_pixmap; /* Prev Index */
- X Pixmap previdx_hlpixmap; /* Prev Index */
- X Pixmap nextidx_pixmap; /* Next Index */
- X Pixmap nextidx_hlpixmap; /* Next Index */
- X Pixmap rew_pixmap; /* Search REW */
- X Pixmap rew_hlpixmap; /* Search REW */
- X Pixmap ff_pixmap; /* Search FF */
- X Pixmap ff_hlpixmap; /* Search FF */
- X } main;
- X struct {
- X Pixmap logo_pixmap; /* CD Logo */
- X } dbprog;
- X struct {
- X Pixmap xmcd_pixmap; /* Program logo */
- X } dialog;
- X} pixmaps_t;
- X
- X
- X/* Mode flags for bm_to_px(): used to set foreground/background colors */
- X#define BM_PX_NORMAL 0 /* normal/normal */
- X#define BM_PX_HIGHLIGHT 1 /* highlight/normal */
- X#define BM_PX_WHITE 2 /* white/normal */
- X#define BM_PX_BLACK 3 /* black/normal */
- X#define BM_PX_BW 4 /* black/white */
- X#define BM_PX_BWREV 5 /* white/black */
- X
- X
- X/* Public function prototypes */
- Xvoid create_widgets(widgets_t *);
- Xvoid pre_realize_config(widgets_t *);
- Xvoid post_realize_config(widgets_t *, pixmaps_t *);
- Xvoid register_callbacks(widgets_t *, curstat_t *);
- X
- X#endif /* __WIDGET_H__ */
- X
- END_OF_FILE
- if test 8032 -ne `wc -c <'widget.h'`; then
- echo shar: \"'widget.h'\" unpacked with wrong size!
- fi
- # end of 'widget.h'
- fi
- if test -f 'xmcd.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xmcd.h'\"
- else
- echo shar: Extracting \"'xmcd.h'\" \(14843 characters\)
- sed "s/^X//" >'xmcd.h' <<'END_OF_FILE'
- X/*
- X * xmcd - Motif(tm) CD Audio Player
- X *
- X * Copyright (C) 1993 Ti Kan
- X * E-mail: ti@amb.org
- X *
- X * This program is free software; you can redistribute it and/or modify
- X * it under the terms of the GNU General Public License as published by
- X * the Free Software Foundation; either version 2 of the License, or
- X * (at your option) any later version.
- X *
- X * This program is distributed in the hope that it will be useful,
- X * but WITHOUT ANY WARRANTY; without even the implied warranty of
- X * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- X * GNU General Public License for more details.
- X *
- X * You should have received a copy of the GNU General Public License
- X * along with this program; if not, write to the Free Software
- X * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- X *
- X */
- X#ifndef __XMCD_H__
- X#define __XMCD_H__
- X
- X#ifndef LINT
- Xstatic char *_xmcd_h_ident_ = "@(#)xmcd.h 1.82 93/09/28";
- X#endif
- X
- X
- X/* Whether STATIC should really be... */
- X#ifdef DEBUG
- X#define STATIC
- X#else
- X#define STATIC static
- X#endif
- X
- X
- X/* Data type definitions: for portability */
- Xtypedef unsigned char byte_t; /* 8-bit unsigned */
- Xtypedef char sbyte_t; /* 8-bit signed */
- Xtypedef unsigned short word16_t; /* 16-bit unsigned */
- Xtypedef short sword16_t; /* 16-bit signed */
- Xtypedef unsigned long word32_t; /* 32-bit unsigned */
- Xtypedef long sword32_t; /* 32-bit signed */
- Xtypedef char bool_t; /* Boolean */
- X
- X
- X/* Endianess */
- X#define LITTLE_ENDIAN 1234
- X#define BIG_ENDIAN 4321
- X
- X#if defined(i286) || defined(i386)
- X#define BYTE_ORDER LITTLE_ENDIAN
- X#else
- X#define BYTE_ORDER BIG_ENDIAN
- X#endif
- X
- X
- X/* Boolean flags */
- X#ifndef FALSE
- X#define FALSE 0
- X#endif
- X#ifndef TRUE
- X#define TRUE 1
- X#endif
- X
- X
- X/* BSD compatibility */
- X#ifdef BSDCOMPAT
- X
- X#ifndef strchr
- X#define strchr index
- X#endif
- X
- X#ifndef strrchr
- X#define strrchr rindex
- X#endif
- X
- X#endif /* BSDCOMPAT */
- X
- X
- X/* Common header files to be included for all modules */
- X#include <sys/types.h>
- X#include <sys/stat.h>
- X#include <sys/wait.h>
- X#include <sys/ioctl.h>
- X#ifndef NO_STDLIB_H
- X#include <stdlib.h>
- X#endif
- X#include <stdio.h>
- X#include <ctype.h>
- X#include <errno.h>
- X#include <fcntl.h>
- X#include <signal.h>
- X#include <memory.h>
- X#include <dirent.h>
- X#include <pwd.h>
- X#ifdef BSDCOMPAT
- X#include <strings.h>
- X#else
- X#include <string.h>
- X#endif
- X
- X
- X/* Memory allocator defines */
- X#define MEM_ALLOC XtMalloc
- X#define MEM_REALLOC XtRealloc
- X#define MEM_CALLOC XtCalloc
- X#define MEM_FREE XtFree
- X
- X
- X/* Program name string */
- X#define PROGNAME "xmcd"
- X
- X
- X/* Backup values for application resources/options */
- X#define DEVNUM 0
- X#define DEVICE "/dev/rcdrom"
- X#define CDLIBDIR "/usr/lib/X11/xmcd"
- X#define CDDBDIR "rock:jazz:newage:classical:soundtrack:data"
- X#define MAX_DBDIRS 10
- X#define DBFILE_MODE "0664"
- X#define CADDY_LOCK TRUE
- X#define STATUS_INTERVAL 260
- X#define INSERT_INTERVAL 2000
- X#define PREV_THRESHOLD 100
- X#define SKIP_BLKS 90
- X#define SKIP_PAUSE 45
- X#define SKIP_SPDUP 15
- X#define SKIP_VOL 35
- X#define SKIP_MINVOL 2
- X#define SAMPLE_BLKS 750
- X#define MIN_PLAYBLKS 25
- X#define BLINKON_INTERVAL 850
- X#define BLINKOFF_INTERVAL 150
- X#define BASE_SCSIVOL 0
- X#define VOL_TAPER 0
- X#define VENDOR_CODE 0 /* SCSI-2 (see lib_scsipt.h) */
- X#define PLAY10_SUPP TRUE
- X#define PLAY12_SUPP FALSE
- X#define PLAYMSF_SUPP TRUE
- X#define PLAYTI_SUPP TRUE
- X#define LOAD_SUPP FALSE
- X#define EJECT_SUPP TRUE
- X#define MSELVOL_SUPP TRUE
- X#define MSELVOL_DBD FALSE
- X#define PAUSE_SUPP TRUE
- X#define CADDYLOCK_SUPP TRUE
- X#define LOAD_SPINDOWN FALSE
- X#define EXIT_EJECT FALSE
- X#define EXIT_STOP TRUE
- X#define SCSIERR_MSG TRUE
- X#define MAIN_SHOWFOCUS FALSE
- X
- X/* Backup message strings */
- X#define MAIN_TITLE "Motif CD Audio Player"
- X#define STR_DBMODE "cddb"
- X#define STR_PROGMODE "prog"
- X#define STR_ELAPSE "elapse"
- X#define STR_REMAIN_TRK "r-trac"
- X#define STR_REMAIN_DISC "r-disc"
- X#define STR_PLAY "play"
- X#define STR_PAUSE "pause"
- X#define STR_READY "ready"
- X#define STR_SAMPLE "sample"
- X#define STR_USAGE "Usage:"
- X#define STR_BADOPTS "The following options are unrecognized:"
- X#define STR_NODISC "no disc"
- X#define STR_BUSY "cd busy"
- X#define STR_DATA "data"
- X#define STR_WARNING "Warning"
- X#define STR_FATAL "Fatal Error"
- X#define STR_CONFIRM "Confirm"
- X#define STR_INFO "Information"
- X#define STR_ABOUT "About"
- X#define STR_QUIT "Really Quit?"
- X#define STR_NOMEMORY "Out of virtual memory!"
- X#define STR_NOHELP "Help is not available on this item."
- X#define STR_NOLINK "There is no likely CDDB entry to link to."
- X#define STR_NODB "No CD database directory."
- X#define STR_NOTROM "Device is not a CD-ROM!"
- X#define STR_NOTSCSI2 "Device is not SCSI-II compliant."
- X#define STR_MODERR "Xmcd binary permissions error."
- X#define STR_STATERR "Cannot stat device \"%s\"."
- X#define STR_NODERR "\"%s\" is not a character device!"
- X#define STR_SEQFMTERR "Program sequence string format error."
- X#define STR_DBDIRSERR "XMcd.maxDbdirs resource error."
- X#define STR_RECOVERR "Recovering from audio playback error..."
- X#define STR_MAXERR "Too many errors."
- X#define STR_SAVERR_FORK "File not saved:\nCannot fork. (errno %d)"
- X#define STR_SAVERR_SUID "File not saved:\nCannot setuid to %d."
- X#define STR_SAVERR_OPEN "File not saved:\nCannot open file for writing."
- X#define STR_SAVERR_KILLED "File not saved:\nChild killed. (signal %d)"
- X#define STR_LNKERR_FORK "File not linked:\nCannot fork. (errno %d)"
- X#define STR_LNKERR_SUID "File not linked:\nCannot setuid to %d."
- X#define STR_LNKERR_LINK "File not linked:\nLink failed."
- X#define STR_LNKERR_KILLED "File not linked:\nChild killed. (signal %d)"
- X
- X/* Backup short-cut keys */
- X#define BTNLBL_KEY ""
- X#define LOCK_KEY ""
- X#define REPEAT_KEY ""
- X#define SHUFFLE_KEY ""
- X#define EJECT_KEY ""
- X#define POWEROFF_KEY ""
- X#define DBPROG_KEY ""
- X#define HELP_KEY ""
- X#define TIME_KEY ""
- X#define AB_KEY ""
- X#define SAMPLE_KEY ""
- X#define KEYPAD_KEY ""
- X#define PLAYPAUSE_KEY ""
- X#define STOP_KEY ""
- X#define PREVTRK_KEY ""
- X#define NEXTTRK_KEY ""
- X#define PREVIDX_KEY ""
- X#define NEXTIDX_KEY ""
- X#define REW_KEY ""
- X#define FF_KEY ""
- X#define KEYPAD0_KEY ""
- X#define KEYPAD1_KEY ""
- X#define KEYPAD2_KEY ""
- X#define KEYPAD3_KEY ""
- X#define KEYPAD4_KEY ""
- X#define KEYPAD5_KEY ""
- X#define KEYPAD6_KEY ""
- X#define KEYPAD7_KEY ""
- X#define KEYPAD8_KEY ""
- X#define KEYPAD9_KEY ""
- X#define KEYPADENTER_KEY ""
- X#define KEYPADCLEAR_KEY ""
- X#define KEYPADCANCEL_KEY ""
- X
- X/* Application resource/option data */
- Xtypedef struct {
- X /* Device and file paths */
- X int devnum; /* Logical device number */
- X char *device; /* CD-ROM Device path */
- X char *libdir; /* Library path */
- X char *dbdir; /* Database paths */
- X int max_dbdirs; /* Max number of db dirs */
- X char *dbfile_mode; /* Database file permissions */
- X
- X /* CD operation parameters */
- X bool_t caddy_lock; /* Lock caddy on startup */
- X int stat_interval; /* Status poll interval (ms) */
- X int ins_interval; /* Insert poll interval (ms) */
- X int prev_threshold; /* Previous track/index
- X * threshold (blocks)
- X */
- X int skip_blks; /* FF/REW skip blocks */
- X int skip_pause; /* FF/REW pause (msec) */
- X int skip_spdup; /* FF/REW speedup count */
- X int skip_vol; /* FF/REW percent volume */
- X int skip_minvol; /* FF/REW minimum volume */
- X int sample_blks; /* Sample play blocks */
- X int min_playblks; /* Minimum play blocks */
- X int blinkon_interval; /* Display blink on (ms) */
- X int blinkoff_interval; /* Display blink off (ms) */
- X int base_scsivol; /* SCSI volume value base */
- X int vol_taper; /* Volume control taper */
- X int vendor_code; /* Vendor command set code */
- X bool_t play10_supp; /* Play Audio (10) supported */
- X bool_t play12_supp; /* Play Audio (12) supported */
- X bool_t playmsf_supp; /* Play Audio MSF supported */
- X bool_t playti_supp; /* Play Audio T/I supported */
- X bool_t load_supp; /* Motorized load supported */
- X bool_t eject_supp; /* Motorized eject supported */
- X bool_t mselvol_supp; /* Audio vol chg supported */
- X bool_t mselvol_dbd; /* Set DBD bit for msen/msel */
- X bool_t pause_supp; /* Pause/Resume supported */
- X bool_t caddylock_supp; /* Caddy lock supported */
- X bool_t load_spindown; /* Spin down disc at CD load */
- X bool_t exit_eject; /* Eject disc on exit? */
- X bool_t exit_stop; /* Stop disc on exit? */
- X bool_t scsierr_msg; /* Print SCSI error msg? */
- X bool_t main_showfocus; /* Highlight kbd focus? */
- X
- X /* Various application message strings */
- X char *main_title; /* Main window title */
- X char *str_dbmode; /* cddb */
- X char *str_progmode; /* prog */
- X char *str_elapse; /* elapse */
- X char *str_remaintrk; /* r-trac */
- X char *str_remaindisc; /* r-disc */
- X char *str_play; /* play */
- X char *str_pause; /* pause */
- X char *str_ready; /* ready */
- X char *str_sample; /* sample */
- X char *str_usage; /* Usage */
- X char *str_badopts; /* Bad command-line options */
- X char *str_nodisc; /* No disc */
- X char *str_busy; /* Device busy */
- X char *str_data; /* Data */
- X char *str_warning; /* Warning */
- X char *str_fatal; /* Fatal error */
- X char *str_confirm; /* Confirm */
- X char *str_info; /* Information */
- X char *str_about; /* About */
- X char *str_quit; /* Really Quit? */
- X char *str_nomemory; /* Out of memory */
- X char *str_nohelp; /* No help available on item */
- X char *str_nolink; /* No likely CDDB link */
- X char *str_nodb; /* No CDDB directory */
- X char *str_notrom; /* Not a CD-ROM device */
- X char *str_notscsi2; /* Not SCSI-II compliant */
- X char *str_moderr; /* xmcd binary perms error */
- X char *str_staterr; /* Can't stat device */
- X char *str_noderr; /* Not a character device */
- X char *str_seqfmterr; /* Pgm sequence format err */
- X char *str_dbdirserr; /* XMcd.maxDbdirs error */
- X char *str_recoverr; /* Recovering audio play err */
- X char *str_maxerr; /* Too many errors */
- X char *str_saverr_fork; /* File save err: fork */
- X char *str_saverr_suid; /* File save err: setuid */
- X char *str_saverr_open; /* File save err: open */
- X char *str_saverr_killed; /* File save err: child kill */
- X char *str_lnkerr_fork; /* File link err: fork */
- X char *str_lnkerr_suid; /* File link err: setuid */
- X char *str_lnkerr_link; /* File link err: link */
- X char *str_lnkerr_killed; /* File link err: child kill */
- X
- X /* Short-cut key definitions */
- X char *btnlbl_key; /* Button label */
- X char *lock_key; /* Lock */
- X char *repeat_key; /* Repeat */
- X char *shuffle_key; /* Shuffle */
- X char *eject_key; /* Eject */
- X char *poweroff_key; /* Quit */
- X char *dbprog_key; /* Database/Program popup */
- X char *help_key; /* Help popup */
- X char *time_key; /* Time */
- X char *ab_key; /* A->B */
- X char *sample_key; /* Sample */
- X char *keypad_key; /* Keypad popup */
- X char *playpause_key; /* Play/Pause */
- X char *stop_key; /* Stop */
- X char *prevtrk_key; /* Prev track */
- X char *nexttrk_key; /* Next track */
- X char *previdx_key; /* Prev index */
- X char *nextidx_key; /* Next index */
- X char *rew_key; /* REW */
- X char *ff_key; /* FF */
- X char *keypad0_key; /* Keypad 0 */
- X char *keypad1_key; /* Keypad 1 */
- X char *keypad2_key; /* Keypad 2 */
- X char *keypad3_key; /* Keypad 3 */
- X char *keypad4_key; /* Keypad 4 */
- X char *keypad5_key; /* Keypad 5 */
- X char *keypad6_key; /* Keypad 6 */
- X char *keypad7_key; /* Keypad 7 */
- X char *keypad8_key; /* Keypad 8 */
- X char *keypad9_key; /* Keypad 9 */
- X char *keypadenter_key; /* Keypad Enter */
- X char *keypadclear_key; /* Keypad clear */
- X char *keypadcancel_key; /* Keypad cancel */
- X} AppData;
- X
- X
- X/* Constant definitions */
- X#define STR_BUF_SZ 64 /* Generic string buffer size */
- X#define FILE_PATH_SZ 72 /* Max file path length */
- X#define MAXTRACK 100 /* Max number of tracks */
- X#define LEAD_OUT_TRACK 0xaa /* Lead-out track number */
- X#define FRAME_PER_SEC 75 /* Frames per second */
- X#define MAX_VOL 100 /* Max logical audio volume */
- X
- X/* Macros */
- X#define MSF_OFFSET(s) ((s)->trkinfo[0].frame + \
- X (((s)->trkinfo[0].min * 60 + (s)->trkinfo[0].sec) * FRAME_PER_SEC))
- X /* Starting MSF offset */
- X
- X/* Character set/font */
- X#define CHSET1 "chset1"
- X#define CHSET2 "chset2"
- X#define CHSET3 "chset3"
- X#define CHSET4 "chset4"
- X
- X
- X/* Defines for the type field in trkinfo_t */
- X#define TYP_AUDIO 1 /* Audio track */
- X#define TYP_DATA 2 /* Data track */
- X
- X/* Defines for the mode field in curstat_t */
- X#define M_NODISC 0 /* No disc loaded */
- X#define M_PLAY 1 /* Play mode */
- X#define M_PAUSE 2 /* Pause mode */
- X#define M_STOP 3 /* Stop mode */
- X#define M_A 4 /* First half of A->B mode */
- X#define M_AB 5 /* Running A->B mode */
- X#define M_SAMPLE 6 /* Sample mode */
- X
- X/* Defines for the time_dpy field in curstat_t */
- X#define T_ELAPSED 0 /* Per-track elapsed time */
- X#define T_REMAIN_TRACK 1 /* Per-track remaining time */
- X#define T_REMAIN_DISC 2 /* Whole-disc remaining time */
- X
- X
- X/* CD per-track information */
- Xtypedef struct {
- X sword32_t trkno; /* Track number */
- X word32_t addr; /* Absolute offset block */
- X byte_t min; /* Absolute offset minutes */
- X byte_t sec; /* Absolute offset seconds */
- X byte_t frame; /* Absolute offset frame */
- X byte_t type; /* track type */
- X} trkinfo_t;
- X
- X
- X/* Structure containing current status information */
- Xtypedef struct {
- X byte_t mode; /* Player mode */
- X byte_t time_dpy; /* Time display mode */
- X byte_t reserved[2]; /* reserved */
- X sword32_t first_trk; /* First track */
- X sword32_t last_trk; /* Last track */
- X byte_t tot_trks; /* Total number of tracks */
- X byte_t tot_min; /* Total minutes */
- X byte_t tot_sec; /* Total seconds */
- X byte_t tot_frame; /* Total frame */
- X word32_t tot_addr; /* Total block length */
- X sword32_t cur_trk; /* Current track */
- X sword32_t cur_idx; /* Current index */
- X byte_t cur_tot_min; /* Current absolute minutes */
- X byte_t cur_tot_sec; /* Current absolute seconds */
- X byte_t cur_tot_frame; /* Current absolute frame */
- X byte_t cur_trk_min; /* Current relative minutes */
- X byte_t cur_trk_sec; /* Current relative seconds */
- X byte_t cur_trk_frame; /* Current relative frame */
- X byte_t reserved2[2]; /* reserved */
- X word32_t cur_tot_addr; /* Current absolute block */
- X word32_t cur_trk_addr; /* Current relative block */
- X word32_t sav_iaddr; /* Saved index abs block */
- X trkinfo_t trkinfo[MAXTRACK]; /* Per-track information */
- X sword32_t playorder[MAXTRACK]; /* Prog/Shuf sequence */
- X bool_t repeat; /* Repeat mode */
- X bool_t shuffle; /* Shuffle mode */
- X bool_t program; /* Program mode */
- X bool_t cddb; /* CD Database entry */
- X bool_t caddy_lock; /* Caddy lock */
- X byte_t prog_tot; /* Prog/Shuf total tracks */
- X byte_t prog_cnt; /* Prog/Shuf track counter */
- X byte_t level; /* Current volume level */
- X char vendor[9]; /* CD-ROM drive vendor */
- X char prod[17]; /* CD-ROM drive model */
- X char revnum[5]; /* CD-ROM firmware revision */
- X} curstat_t;
- X
- X
- X/* Public function prototypes */
- Xcurstat_t *curstat_addr(void);
- X
- X#endif /* __XMCD_H__ */
- END_OF_FILE
- if test 14843 -ne `wc -c <'xmcd.h'`; then
- echo shar: \"'xmcd.h'\" unpacked with wrong size!
- fi
- # end of 'xmcd.h'
- fi
- echo shar: End of archive 4 \(of 13\).
- cp /dev/null ark4isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 13 archives.
- echo "Now read the README and INSTALL files for further instructions."
- rm -f ark[1-9]isdone ark[1-9][0-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
- --
- /// Ti Kan vorsprung durch technik
- /// AMB Research Laboratories, Sunnyvale, CA. USA
- /// ti@amb.org
- ////// ...!{decwrl,synopsys,tandem,tsoft,ultra}!sgiblab!bazooka!ti
- /// ...!uunet!bazooka!ti
-
-
-
- exit 0 # Just in case...
- --
- // chris@Sterling.COM | Send comp.sources.x submissions to:
- \X/ Amiga: The only way to fly! | sources-x@sterling.com
- "It's intuitively obvious to the most casual observer..."
- GCS d++(--) -p+ c++ !l u++ e+ m+(-) s++/++ n h--- f+ g+++ w+ t++ r+ y+
-