*BSD News Article 64874


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!newshost.telstra.net!act.news.telstra.net!vic.news.telstra.net!news.mira.net.au!harbinger.cc.monash.edu.au!news.rmit.EDU.AU!news.unimelb.EDU.AU!munnari.OZ.AU!news.hawaii.edu!news.uoregon.edu!newsfeed.internetmci.com!news.sesqui.net!uuneo.neosoft.com!bonkers!not-for-mail
From: xmcd@bazooka.amb.org (Xmcd Admin)
Newsgroups: comp.unix.bsd.freebsd.announce
Subject: Mail from xmcd@bazooka.amb.org (Xmcd Admin)
Date: 3 Apr 1996 03:01:52 -0600
Organization: FreeBSD Project
Lines: 572
Sender: daemon@taronga.com
Approved: peter@taronga.com
Message-ID: <4jteq0$ilo@bonkers.taronga.com>
NNTP-Posting-Host: localhost.taronga.com
X-Mailer: UNIX System V Mail (version 3.2)

To: comp-unix-bsd-freebsd-announce@decwrl.dec.com
Path: bazooka!xmcd
From: xmcd@bazooka.amb.org (Xmcd Admin)
Newsgroups: comp.unix.bsd.freebsd.announce
Subject: ANNOUNCE: xmcd v2.0 CD-audio player
Message-ID: <2683@bazooka.amb.org>
Date: 2 Apr 96 07:53:04 GMT
Organization: AMB Research Labs, Sunnyvale, CA
Lines: 561



			--------------------
			X M C D  version 2.0
			    patchlevel 0
			--------------------
			     by Ti Kan


I am pleased to announce the release of xmcd version 2.0, a package
including xmcd, an X11/Motif-based CD player utility and cda, a
command-line driven, non-graphical CD audio player.  This software
represents many months of development and refinements, as well as a
beta test program involving many dedicated individuals around the world.


This release of xmcd features the following:

    - Standard functions: Stop, Play, Pause, Next/Previous Track,
      Next/Previous Index, Fast forward/rewind with audio sample,
      Eject and On/off.
    - Direct track access keypad and track-warp slider controls.
    - Volume control with selectable taper characteristics.
    - Balance control.
    - Channel routing control: Select between normal stereo,
      reversed stereo, mono-L, mono-R, or mono-L+R.
    - Track/Index/Time display: Selectable to display elapsed time,
      remaining track time, or remaining disc time.
    - Status display: for current play status, A->B mode, program
      mode, CD database.
    - Shuffle (random) play function.
    - Repeat function with iteration counter.
    - Sample function: Play a few seconds of each track.
    - A->B function: Repeat from selectable point A and B.
    - Eject inhibit function: To prevent someone from ejecting the
      disc by pressing the button on the drive.
    - Automation options on CD load, eject, play completion and
      program exit.
    - Track Program function: Play tracks in custom order.
    - CD database function: Allows you to store CD title/track titles
      in database, and associate each disc with a play program.
      Displays the current playing disc title/track information.
      In addition, you can enter and display arbitrary text associated
      with the disc or each track, such as band information, lyrics,
      etc.
    - Remote CD database: Query CD entries on a remote network server.
      The server can be on the Internet or other TCP/IP networks.
    - CD database entry send: Contribute CD database entries to
      a central archive via Internet electronic mail.
    - Main window button face labels can be configured to display
      pictorial symbols, or text with hotkey mnemonics.
    - The complete application can be operated via the keyboard with
      full support for keyboard traversal and hotkeys.
    - All labels and messages can be customized to non-English
      languages via X resources.
    - All colors and many other functionality are user-customizable
      using X resource settings.
    - On-line feature-specific help information.
    - Attractive, intuitive-to-use Motif user interface.
    - Device-specific configuration files to make xmcd adaptable
      to most CD-ROM drives.

Xmcd uses the Motif toolkit to achieve a pleasing appearance, such that
it actually looks and feels like a real CD player for all basic
functions, yet takes advantage of the GUI and window system to make
programming and CD database functions easy.

Currently, the cda utility offers almost the same functionality as
xmcd except the FF, REW, Sample and A->B features are not available.
Also, the CD database is read-only via cda (no updates).  In addition,
a visual mode is available that turns cda into a screen-oriented
(curses-based) CD player.

While xmcd version 2.0 does not look appreciably different than
the previous version, it is nevertheless much improved.  If you
are running an older version of xmcd, please upgrade to 2.0.
A list of changes since the previous release is listed below.


The source code of this version of xmcd and cda supports the following
operating systems environments:

    1.  Apple A/UX
	- A/UX version 3.0 or later (on Apple Macintosh m68k,
	  with devscsi module installed)

    2.  Berkeley Software Design, Inc. (BSDI) BSD/OS
	- BSD/OS version 2.0 or later (on Intel x86 PC-compatible)

    3.  Data General DG/UX
	- DG/UX version 5.4R3.00 or later (on DG AViiON m88k)

    4.  Digital Equipment Corporation Digital UNIX (OSF/1)
	- OSF/1 version 1.3 or later (on Digital Alpha AXP)

    5.  Digital Equipment Corporation Ultrix
	- Ultrix version 4.3 or later (on DECStations, with
	  SCSI CAM installed)

    6.  Digital Equipment Corporation OpenVMS
	(See notes in the INSTALL.VMS file)
	- OpenVMS version 6.1 or later (on Digital Alpha AXP)
	- OpenVMS version 5.2-2 or later (on Digital VAXstations)

    7.  FreeBSD
	- FreeBSD 2.0.5 or later (on Intel x86 PC-compatible)

    8.  Hewlett Packard HP-UX
	- HP-UX release 9.x (HP 9000 m68k Series 300, Series 400)
	- HP-UX release 9.x (HP 9000 PA-RISC Series 700)
	- HP-UX release 10.x (HP 9000 PA-RISC Series 700, Series 800)

    9.  IBM AIX
	- AIX version 3.2.x (on IBM RS/6000 Power and compatibles)
	- AIX version 4.x (on IBM RS/6000 Power/PowerPC and compatibles)

    10. Linux
	- Linux 1.0 or later (on Intel x86 PC-compatible and other
	  platforms)

    11. NetBSD
	- NetBSD 1.0A or later (on Intel x86 PC-compatible, Sun Sparc
	  and other platforms)

    12. SCO UNIX System V Release 3.2 (on Intel x86 PC-compatible)
	- SCO UNIX 3.2v4.x
	- Open Desktop version 2.x
	- Open Desktop version 3.x
	- Open Server release 5.x

    13. Siemens Nixdorf Informationssysteme SINIX System V Release 4
	- SINIX-N (on SNI RM200, RM400)
	- SINIX-P (on SNI RM600)

    14. Silicon Graphics Irix System V Release 4
	- Irix version 4.x (on SGI platforms)
	- Irix version 5.x (on SGI platforms)
	- Irix64 version 6.x (on SGI platforms)

    15. Sony NEWS-OS
	- NEWS-OS 4.1 or later (on Sony NEWS/m68k)

    16. Stratus FTX System V Release 4
	- FTX version 3.x (on Stratus Continuum PA-RISC platforms)

    17. SunOS
	- SunOS 4.1.x / Solaris 1.x (on Sun Sparc and compatibles)

    18. SunOS System V Release 4
	- SunOS 5.x / Solaris 2.x (on Sun Sparc and compatibles)
	- SunOS 5.x / Solaris 2.x (on Intel x86 PC-compatible)

    19. UNIX System V Release 4.0 (on Intel x86 PC-compatible)
	(Note: 4.0.3 or later recommended)
	- AT&T
	- Consensys
	- Dell
	- ESIX
	- ISC
	- Microport
	- Micro Station Technology
	- UHC
	- USL

    20. UNIX System V Release 4.0 (on Motorola m88k)
	- Motorola

    21. UNIX System V Release 4.2 (on Intel x86 PC-compatible)
	- Consensys
	- Information Foundation
	- Novell/Univel UnixWare 1.x
	- Onsite
	- USL

    22. UNIX System V Release 4.2MP (on Intel x86 PC-compatible)
	- Novell UnixWare 2.x


This release of xmcd and cda should work with the following CD-ROM
drives:

    Apple
	CD SC+, CD-150, CD-300, CD-300i, CD-300e
    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
    Creative Labs
	CD-ROM (#)
    Digital Equipment Corporation
	RRD42, RRD43, RRD44, RRD45
    Hewlett Packard
	XM-3301, XM-3401, XM-3501
    Hitachi
	CDR-1650S, CDR-1750S, CDR-1950S, CDR-3650, CDR-3750, CDR-6750
    IBM
	7210-001, 7210-005, 7201-010, Ext-ISA (#)
    Longshine
	LCS-7260 (#)
    Media Vision
	CDR-H93RMV, Reno
    Micro Design International
	600CD4X, SE6CDI
    Mitsumi
	FX-001S (#). FX-001D (#), FX-001DE (#), FX-400B (#), LU-005S (#)
    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-260 (#), CDR-260R (#), CDR-400, CDR-401, CDR-500,
	CDR-501, CDR-502, CDR-510, CDR-511, CDR-512, CDR-600, CDR-601,
	CDR-602, CDR-900
    Optics Storage
	8000AT (#)
    Kotobuki/Matsushita/Panasonic
	CR-501B, CR-502B, CR-503B, CR-504B, CR-521 (#), CR-522 (#),
	CR-523 (#), CR-562 (#), CR-563 (#), CR-574 (#), CR-581 (#)
    Okano/Wearnes
	CDD110 (#)
    Orchid
	CD-3110 (#)
    Philips/LMS
	CM206 (#)
    Pioneer
	DRM-600, DRM-600A, DRM-610, DRM-602X, DRM-604X (*), DRM-624X,
	DRM-1804X, DR-U104X, DR-U124X, DR-UA124X (#)
    Plextor/Texel
	DM-3024, DM-5024, DM-3028, DM-5028, PX-43C, PX-45C,
	PX-63C, PX-65C
    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
    Sanyo
	CRD-254P (#), CDR-H93RMV
    Silicon Graphics
	XM-3301, XM-3401, XM-3501
    Sony
	CDU-31A (#), CDU-33A (#), CDU-55E (#), CDU-55S, CDU-76E (#),
	CDU-76S, CDU-531 (#), CDU-535 (#), CDU-541, CDU-561, CDU-6111,
	CDU-6211, CDU-7205N (#), CDU-7211, CDU-7811, CDU-8002, CDU-8003,
	CDU-8003A, CDU-8012
    Stratus
	D850
    Sun
	CD-ROM (Sony OEM), CD-ROM (Toshiba OEM)
    Teac
	CD-55A (#)
    Toshiba
	XM-3101, XM-3201, XM-3301, XM-3401, XM-3501, XM-3601, XM-3701,
	XM-4101, XM-5201, XM-5301, XM-5302 (#), XM-5402 (#), XM-5901,
	XM-8100

    Other SCSI-2 compliant CD-ROM drives
    Other non-SCSI CD-ROM drives (#) (driver support required)

Units denoted with a hash 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 README file
in the xmcd distribution for details.


The source code release of xmcd/cda version 2.0 is available via
Internet anonymous FTP:

    (Instructions)
    ftp://ftp.x.org/contrib/applications/xmcd/xmcd-2.0.README

    (gzip'd tar archive)
    ftp://ftp.x.org/contrib/applications/xmcd/xmcd-2.0.tar.gz

A public CD database for xmcd is also available (you need to get
this only if you want a copy of the full xmcd CD database on
your local system.  See the "CD DATABASE SERVERS" section above):

    (Instructions)
    ftp://ftp.x.org/contrib/applications/xmcd/xmcd-cddb.README

    (gzip'd tar archive)
    ftp://ftp.x.org/contrib/applications/xmcd/xmcd-cddb.tar.gz

Some ftp sites are not secure, as it is commonly allowed for anyone
to anonymously post to them. The xmcd web page (see below) lists the
checksum of all xmcd-related packages, so you can check that your
copy is genuine.

Both packages require the "gunzip" (GNU unzip) utility to uncompress.
If your system does not have gunzip, you can build it from the
source code.  Gzip/gunzip can be found on various FTP sites
(such as prep.ai.mit.edu:/pub/gnu).

This CD database is periodically updated with more entries, and you are
encouraged to contribute to this database by using the "Send" feature
in xmcd.  Please read the xmcd-cddb.README file in the public CD
database archive before sending entries to the public database.

Pre-compiled binary releases of xmcd and cda for certain OS
environments are also available from the author.   Please send
e-mail to ti@amb.org for more information.


For those of you with access to the WWW (via Netscape, NCSA Mosaic
or other WWW browser), there is now a Home Page for xmcd and cda.
The location is:

    http://sunsite.unc.edu/~cddb/xmcd/

This home page provides up-to-date information about the
current release version, online README file, FTP service to get
the software, an interactive form to send comments and
suggestions, and late breaking announcement, if any.

Also available on the xmcd/cda WWW Home Page is the Online CD
Database Search feature.  This is based on the public xmcd CD
database and allows you to find entries in the database quickly.

You are invited to visit this space and make use of its services.


Changes since v1.4 patchlevel 2:
--------------------------------

CD-ROM drive support changes:

    - Added support for the following SCSI CD-ROM drives:
	Apple CD-300e
	Chinon CDS-545, CDX-545
	IBM 7201-005, 7201-010
	Media Vision CDR-H93RMV, Reno
	MDI 600CD4X, SE6CDI
	NEC CDR-25, CDR-37, CDR-55, CDR-222S, CDR-502, CDR-511, CDR-512,
	    CDR-602
	Panasonic/Matsushita CR-501B, CR-502B, CR-503B, CR-504B
	Pioneer DR-U104X, DR-U124X, DRM-624X
	Plextor PX-63C, PX-65C
	Sanyo CDR-H93RMV
	Sony CDU-76S
	Toshiba XM-3601, XM-3701, XM-5201, XM-5301, XM-5901

    - Added support for the following non-SCSI CD-ROM drives:
	Aztech CDA268-01A
	IBM External-ISA
	Longshine LCS-7260
	Mitsumi FX-400B
	Panasonic CR-522, CR-523, CR-574, CR-581
	Philips CM206
	Okano/Wearnes CDD110
	Optics Storage 8000AT
	Orchid CD-3110
	Pioneer DR-UA124X
	Sanyo CRD-254P
	Sony CDU-76E, CDU-531, CDU-535, CDU-7205N
	Teac CD-55A
	Toshiba XM-5302, XM-5402

    - Corrected the NEC CDR-210P configuration defaults.

    - Added workaround for firmware bugs in some Sun CD-ROM drives
      (Sony OEM CDU-8012) that caused a SCSI bus hang after ejecting
      a CD.  See the README file for details.

    - Added workaround for firmware bugs in some Digital RRD42 drives
      that caused xmcd to play track "110" after the end of certain
      CDs.

    - Fixed a bug which caused the CD table-of-contents to be
      incorrectly read on Sony CDU-6111 CD-ROM drives.

    - Added workaround for a firmware bugs in some Chinon CD-ROM
      drives.  These drives report and accept track numbers in BCD
      (rather than binary as specified in the SCSI-2 specifications).

OS Support changes:

    - Added support for the following OS/system platforms:
	BSDI BSD/OS 2.x or later on x86
	Digital OpenVMS on alpha/VAX
	HP-UX 9.x on m68k
	HP-UX 10.x on PA-RISC
	NetBSD 1.0A or later on x86, sparc and others
	SCO Open Server Release 5.x on x86
	Siemens Nixdorf SINIX SVR4/mips
	Silicon Graphics Irix64 SVR4 6.x
	Sony NEWS-OS/m68k

    - Non-SCSI CD-ROM drives are now supported on the FreeBSD
      platform via the new FreeBSD ioctl method module.

    - Modified to support a change in the FreeBSD 2.0.5R SCSI
      device driver (it now requires the device to be opened O_RDWR
      rather than O_RDONLY for SCSI pass-through operations).

    - Changed handling of dynamic library search on some systems to
      be more intelligent, and moved the support of creating symlinks
      into install.sh (this was in configure.sh in previous releases).

    - SCSI command timeout values have been increased to 10 seconds
      on all platforms that support such a parameter.  This avoids
      problems with some slow-reacting CD-ROM drives.

    - Fixed cda_d/Imakefile to properly support Digital Ultrix.

    - Worked around a problem with SIGCHLD handling in the HP-UX VUE
      environment.  Previously, xmcd may hang when it spawned child
      processes to perform various tasks under VUE.

    - This distribution now comes with several 32x32 pixmap files
      suitable for use as an xmcd desktop icon.  See the README file
      for details.

Misc changes:

    - Changed all file names to be compatible with the ISO9660
      standard (without the Rockridge extension).  The exceptions
      are listed as follows (these cannot be changed due to existing
      convention):

	    Imakefile (all sub-directories)
	    common_d/patchlevel.h
	    xmcd_d/XKeysymDB
	    misc_d/xmcd.icon

      If you received the xmcd source distribution on a CD-ROM that
      does not implement the Rockridge extension then the above files
      will have their names truncated.  You must rename them back to
      their original names before attempting to compile/install.

      An important user-visible aspect of this change is that the
      former LIBDIR/xmcd/config/configure.sh shell script is now named
      LIBDIR/xmcd/config/config.sh.

    - Changed all *.d subdirectory names to *_d.  This is to make
      xmcd compatible with OpenVMS which does not allow dots in the
      directory name.  Also, the wm2xmcd.d directory is renamed
      dbconv_d.

    - Changes to xmcd widget creation code to fix compatibility
      problems with some ports of Motif 2.0.

    - Source code related to CD database management functions are
      now consolidated into the cddb_d subdirectory; which is built into
      a library and shared by xmcd and cda.  This library now has the
      capability of using a remote CDDB server on a TCP/IP network.
      As a result of the reorganization the following changes are made:

      1. The "dbdir:" common parameter is renamed "cddbPath:" and the
	 XMCD_DBPATH environment variable is changed to XMCD_CDDBPATH.
	 The separator character for each component in these parameters
	 is changed from a colon (:) to a semi-colon (;).  In addition
	 to the absolute and relative path names (for local directories),
	 remote servers can be specified with the @hostname[:port]
	 syntax.  The hostname can be the CD database server name
	 or its IP number.  The port number is optional, and need not be
	 specified if it's the same as the default (which is set in the
	 common.cfg file).  An example of the cddbPath parameter:

            cddbPath: rock;jazz;classical;~/mycddb;@cddbsrv.xyz.com

	 The config.sh script now prompts for remote CD database
	 server names and configures this parameter for you.

      2. The "maxDbdirs:" parameter has been obsoleted.

      3. The "dbFileMode:" parameter is renamed "cddbFileMode:".

      4. The former "cddb" indicator in the main window now has been
	 changed to display one of four possible messages:

	 query		Searching CD databases
	 loc-db		Current CD entry found in local CD database
	 rmt-db		Current CD entry found in remote CD database
	 (blank)	No CD database entry found for current CD,
			or no CD loaded

    - Xmcd now automatically scrolls the track list in the CDDB/Program
      subwindow during playback such that the current playing track
      would be visible in the list window.  The auto-scrolling behavior
      is suppressed when a track is selected in the track list, or when 
      editing track titles.

    - The scrolling position of the CDDB/Program subwindow track list
      is now preserved when the time display format is changed using
      the total/track toggle buttons.  Previously, this caused the
      track list to scroll to the top.

    - Double-clicking (or pressing carriage return) on a track in the
      CDDB/Program subwindow track list is equivalent to creating a
      program with the selected track and pressing play.  This is the
      same as in previous versions, but with this release, the main
      window display no longer shows the "prog" indicator while in this
      mode, nor is the track number shown in the CDDB/Program subwindow
      "Program Sequence" text field.  Also, the program is now
      automatically cleared after the selected track is finished playing.

    - Xmcd now displays an asterisk "*" character after the track title
      in the CDDB/Program subwindow track list, if there is extended
      track information associated with that track.  To view it,
      select the track by clicking on it, then click the Track "Ext Info"
      button to pop up the Track Extended Info window.  The "cda toc"
      output has also been modified to more closely resemble xmcd.

    - When ejecting the CD or exiting xmcd, if the on-screen CD database
      information has changed but not yet saved, xmcd now pops up a
      dialog box that asks whether the information should be saved
      to file.

    - The Options pop-up window now has a Save button that allows
      the user to save the settings.

    - Added two new device-specific parameters "repeatMode" and
      "shuffleMode" that allows the user to specify whether the repeat
      or shuffle modes should be enabled on program startup.

    - Xmcd now maintains the file /tmp/.cdaudio/curr.XXXX which contains
      information about the currently loaded CD.  Namely, the device
      path name, the CD database category and the disc ID is recorded
      in this file.  Other applications may read this file to identify
      the CD that is loaded in the drive.  This feature is disabled on
      the Digital OpenVMS platform.

    - Fixed an obscure xmcd crash that may occur when the time display
      is in r-disc mode; while a program is cleared but still playing,
      and an attempt is made to change tracks.

    - After a CDDB link operation, the xmcd main window now displays the
      track title correctly while the CD is playing.  Previously,
      "unknown track title" is shown until a track change occurred.

    - When running in shuffle mode or if a track program is in effect,
      moving the track warp slider all the way to the right produced
      incorrect behavior on some platforms.  Also, if the CD is not playing
      and the track warp slider is moved by clicking to the left or right
      of the thumb (not dragging), the keypad time display is not correctly
      updated.  These problems are now fixed.

    - The cda utility did not handle the playOnLoad and ejectOnDone
      parameters correctly.  Fixed.

    - Reorganized the code in cda to reduce the size of the cda_visual()
      routine.

    - Multiple cda "client" programs can now simultaneously run with
      a single cda daemon (the same CD-ROM drive).

    - The cda utility now correctly handles old FIFO files from a
      previously-killed cda daemon.  Also, implemented new locking
      scheme to ensure that no more than a single cda daemon process
      can be invoked per CD-ROM drive.

    - Added a "cda debug" command that allows the user to query, set
      or unset the debug mode on-the-fly.

    - The install.sh script displays the wrong default LIBDIR
      on XFree86-3.x systems.  Fixed.

    - Display formatting improvements to the config.sh script.

    - Other enhancements and cleanups.