Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
MATCD(4)	     FreeBSD/i386 Kernel Interfaces Manual	      MATCD(4)

NAME
     matcd -- Matsushita (Panasonic) CD-ROM driver

SYNOPSIS
     device matcd[0-4] at isa? port [?|	addr]
     /dev/[r]matcd[0-15][a|c]
     /dev/[r]matcd[0-15]l[a|c]

DESCRIPTION
     The matcd driver controls the CR-562-x and	CR-563-x CD-ROM	drives made by
     Matsushita-Kotobuki Electronics Industries, or Matsushita for short.
     These CD-ROM drives have been sold	under the Panasonic (which is a	trade
     name for Matsushita), Creative Labs (omniCD) and Reveal names, and	have
     been included in computers	made by	Tandy, AST, Packard Bell and many oth-
     ers.

     These drives connect to the PC ISA	bus through a proprietary host inter-
     face.  This interface can exist as	a stand-alone ISA card,	or can be
     included on a sound card.

DRIVER CONFIGURATION
     The matcd driver supports up to four host interfaces with up to four
     drives on each interface.	Audio activity may occur on all	drives simul-
     taneously.	 Data read operations are limited to one drive per host	inter-
     face at any instant.

     To	support	multiple host interfaces, it is	necessary to modify the
     entries in	the kernel configuration file.	Normally your system comes
     with the file /usr/src/sys/i386/conf/GENERIC.  You	should make a copy of
     this file and give	it the name of your system.  You can then edit the new
     file to include devices you want the system to support and	delete the
     device entries that you don't want.

     In	this file, you will find an entry like:

	   device  matcd0  at  isa?  port  ?

     To	support	two host interfaces, change the	file so	it reads:

	   device  matcd0  at  isa?  port  ?
	   device  matcd1  at  isa?  port  ?

     (If you want to support up	to three or four host interfaces, add addi-
     tional entries).

     Note that the kernel configuration	does not need to be modified to	sup-
     port up to	four drives on a single	host interface.	 It is also not	neces-
     sary to have four drives on a single interface before adding a second
     interface.

     By	default, matcd searches	for the	CD-ROM host interface adapters by
     using a table of known I/O	ports on Creative host adapters	(see
     options.h).  Although this	is very	flexible, it can cause problems	when
     your system has other devices that	are located at the I/O ports that
     matcd is checking for CD-ROM host interfaces.  In addition, checking mul-
     tiple locations can cause the boot	process	to take	longer than it could.

     If	you are	having these problems, you can solve them by explicitly	speci-
     fying where the CD-ROM host interfaces are	located.  For example, by
     default most SoundBlaster cards have the Matsushita CD-ROM	host interface
     located at	I/O port 0x230.	 (This is 0x10 above the I/O port for the
     audio section of the card.)  If this is the case for your system, you
     could change where	the kernel looks for the hardware by using the -c
     option at the kernel boot prompt.	This will load the kernel and then
     give you the opportunity to change	settings for any of the	devices
     included the kernel.  For example,	to change the I/O port for matcd
     adapter zero to 0x340, you	would type

	   config> port	matcd0c	0x340

     If	you recompile the kernel, you can change the entry in the kernel con-
     figuration	file to	specify	a specific address by changing an entry	like
     this:

	   device  matcd0  at  isa?  port  0x230

     With this change, the matcd driver	will only look at I/O port 0x230 for
     the first CD-ROM host interface and will not disturb any other I/O	ports.

     Once you have adjusted the	kernel configuration file, it is necessary to
     configure and recompile the kernel, install it and	reboot for the changes
     to	take effect.

SUPPORTED HARDWARE
     At	this time, there are only two known drive models that work with	the
     matcd driver:
	   Matsushita CR-562-x
	   Matsushita CR-563-x
     Most resellers leave these	original markings on the drives	since the
     label also	has the	FCC, VDE, CSA and RU certification marks.

     Both of these drive models	have motorized trays.  There is	also a custom
     version of	these drives that does not have	the volume control or head-
     phone jack	(seen on some Tandy computers),	but this drive also works with
     matcd.

     The Matsushita CR-522-x and CR-523-x CD-ROM drive is not usable with
     matcd.  The CR-522	and CR-523 can also be identified from the front as it
     requires a	CD-caddy.

     Drives with IDE interfaces	must use an IDE	driver.

     The TEAC CD-55 4X CD-ROM drive also uses the Creative/Panasonic interface
     but the TEAC drive	is not compatible with the Matsushita CR-56x drives.
     The TEAC drive cannot be used with	matcd.

     The most common source of host interface adapters for the Panasonic
     drives are	found in products from Creative	Labs, including	SoundBlaster
     sound cards.   There are numerous models of SoundBlaster sound cards, and
     most of the newer cards provide the appropriate interface,	sometimes
     labeled as	the "Creative/Panasonic" interface.

     The following host	interface adapters are known to	work with the matcd
     driver:
	   Creative  Sound Blaster Pro (SBPRO) (CT1330A)
	   Creative  Sound Blaster 16 (CT1730)
	   Creative  Sound Blaster 16 -	cost-reduced (CT1740)
	   Creative  OmniCD upgrade kit	adapter	card - stand-alone CD (CT1810)
	   Creative  Sound Blaster 16 -	2-layer, cost-reduced  (CT2230)
	   Creative  Sound Blaster 16 (Vibra16)	- 2-layer, single-chip
		     (CT2260)
	   Creative  Sound Blaster 16 Value (SB16) - 2-layer, cost-reduced
		     (CT2770)
	   Creative  PhoneBlaster SB16 + Sierra	14.4K Voice/FAX/Data/Speaker-
		     phone modem combo (CT3100)
	   Reveal    (SC400)

     Caution: Some of these sound boards can be	optionally manufactured	to not
     include the Panasonic/Creative interface, so check	the board before buy-
     ing solely	based on model number.

     This is by	no means a complete list as Creative Labs and other vendors
     that produce sound	cards with an identical	Creative/Panasonic drive
     interface release new versions of their adapters all the time.

     In	addition to Creative Labs adapters, adapters that are compatible with
     Media Vision, IBM and Lasermate adapters are also supported.   However,
     these adapters use	a wide range of	I/O port addresses, so the driver must
     be	reconfigured to	locate these adapters.

     It	is important to	understand that	some manufacturers have	a different
     host interface implementation.  If	you have a board that won't communi-
     cate with the drives under	MS-DOS using the genuine Creative Labs driv-
     ers, then matcd may not work with that host adapter.

SUPPORTED OPERATIONS
     The matcd driver supports block and character access.  Partition "a"
     returns 2048-byte User Data blocks	from data CDs.	Partition "c" returns
     the full 2352-byte	Frames from any	type of	CD, including audio CDs.
     (Partition	"c" cannot be "mounted"	with cd9660 or other filesystem	emula-
     tors.)  No	other partitions are supported.

     The matcdl	devices	work the same as the normal matcd devices except that
     the drive trays are locked	and remain locked until	all of the devs	on
     that drive	are closed.

     Matcd accepts numerous ioctl() commands, including	disk and functions
     related to	CD-ROM audio and tray control features.	 The commands are:

	   DIOCGDINFO		   get disklabel.
	   DIOCGDPART		   get partition.
	   DIOCWDINFO		   set update disk.
	   DIOCSDINFO		   set disklabel.
	   CDIOCREADSUBCHANNEL	   get sub-channel information on current sta-
				   tus of disc playing.
	   CDIOCREADTOCHEADER	   reads table of contents summary.
	   CDIOCREADTOCENTRYS	   reads length	and other track	information.
	   CDIOCPLAYTRACKS	   plays audio starting	at a track/index and
				   stopping at a track/index.
	   CDIOCPLAYMSF		   plays audio starting	at a particular	time
				   offset.
	   CDIOCPAUSE		   pauses a playing disc.
	   CDIOCRESUME		   resumes playing a previously	paused disc.
				   Ignored if the drive	is already playing.
	   CDIOCSTOP		   stops playing a disc.
	   CDIOCEJECT		   opens the disc tray.
	   CDIOCCLOSE		   closes the disc tray.
	   CDIOCPREVENT		   blocks further attempts to open the drive
				   door	until all devices close	or a CDIOCAL-
				   LOW ioctl is	issued.
	   CDIOCALLOW		   unlocks the drive door if it	was locked.
				   This	ioctl is rejected if any locking
				   devices are open.
	   CDIOCGETVOL		   returns the current volume settings of the
				   drive.
	   CDIOCSETVOL		   sets	the volume settings of the drive.
	   CDIOCSETSTEREO	   causes the left channel audio to be sent to
				   the left channel output and the right chan-
				   nel audio is	sent to	the right channel out-
				   put.	 This is the default state.
	   CDIOCSETMUTE		   causes the audio output to be turned	off.
				   The drive continues to read the audio on
				   the disc and	that audio is discarded	until
				   the audio is	turned back on.
	   CDIOCSETLEFT		   causes the left channel audio to be sent to
				   the left and	right channel outputs.
	   CDIOCSETRIGHT	   causes the right channel audio to be	sent
				   to the left and right channel outputs.
	   CDIOCSETPATCH	   causes the audio to be routed as specified
				   in the provided bit maps.
	   CDIOCSETPITCH	   changes the playback	speed of the audio to
				   increase or decrease	(as in Karaoke).
	   CDIOCCAPABILITY	   report the capabilities of the drive	and
				   driver.

     The ioctl() commands defined above	are the	only ones that the matcd
     driver supports.

FILES
     /dev/[r]matcd0a /dev/[r]matcd0la  is used to access 2048-byte blocks of
				       data on a CD-ROM	disc that is recorded
				       in the Mode 1 Form 1 format.
     /dev/[r]matcd0c /dev/[r]matcd0lc  is used to access 2352-byte frames on a
				       CD-ROM disc recorded in any format.
     /usr/src/sys/i386/isa/matcd/*     Source code and compilation options for
				       matcd.

     The file options.h	contains all of	the compilation	options.  By default,
     the driver	is configured to run on	the current version of FreeBSD.

NOTES
     The Creative/Panasonic interface does not use interrupts or DMA although
     the drives	themselves are capable of using	both.

     If	the disc tray is opened	while one or more partitions are open, further
     I/O to all	partitions on the drive	will be	rejected until all partitions
     are closed.

     There must	be a drive on each host	interface that is addressed as physi-
     cal drive 0.  If this isn't the case, the driver will be unable to	find
     the host interface	or any of the connected	drives.

     Drives on a second	host interface start are considered logical drives
     4-7, 8-11 on the third interface and 12-15	on the fourth.

     The first drive on	the second host	interface is logical drive 4 regard-
     less of how many drives are present on the	first host interface.

     Host interfaces are numbered in the order they are	declared in the	kernel
     configuration file, or in the order they are found	if the kernel configu-
     ration file uses "?" for the port address.	 Host interface	numbers	are
     always contiguous.

SEE ALSO
     /usr/include/sys/cdio.h

AUTHORS
     The driver	and documentation was written by Frank Durda IV.

     Program and Documentation are Copyright 1994, 1995, All rights reserved.

HISTORY
     The matcd driver appeared in FreeBSD 2.0.5.

FreeBSD	9.2		      September	24, 1995		   FreeBSD 9.2

NAME | SYNOPSIS | DESCRIPTION | DRIVER CONFIGURATION | SUPPORTED HARDWARE | SUPPORTED OPERATIONS | FILES | NOTES | SEE ALSO | AUTHORS | HISTORY

Want to link to this manual page? Use this URL:
<http://www.freebsd.org/cgi/man.cgi?query=matcd&sektion=4&manpath=FreeBSD+4.5-RELEASE>

home | help