---
name: "mcd"
section: "4freebsd"
platform: "linux"
package: "freebsd-manpages"
version: "11.0-1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/mcd/4freebsd"
---

# mcd(4freebsd)

Mitsumi CD-ROM driver

## NAME

**mcd** – Mitsumi CD-ROM driver

## SYNOPSIS

**device mcd**

In */boot/device.hints*: **hint.mcd.0.at="isa"** **hint.mcd.0.port="0x300"** **hint.mcd.0.irq="10"**

## DESCRIPTION

The **mcd** driver provides a data and audio interface to the Mitsumi-brand CD-ROM player. The CD-ROM player must be interfaced to the ISA bus through one of the Mitsumi proprietary controller boards. The controller boards supported are the LU002S, LU005S, the FX001 and the quite common FX001D.

The **mcd** driver responds to disk-specific **ioctl**() commands, namely the DIOCGPART command. Other disk-specific **ioctl**() commands will return an error.

The **mcd** driver also responds to special CD-ROM **ioctl**() commands. These commands control the CD-ROM player's audio features. The commands are:

- CDIOCREADSUBCHANNEL

  get sub-channel information on current status of disc playing

- CDIOCREADTOCHEADER

  get table of contents header

- CDIOCREADTOCENTRYS

  gets all of the table of contents

- CDIOCPLAYTRACKS

  begins audio playing at location specified

- CDIOCPLAYBLOCKS

  fails with error EINVAL

- CDIOCPLAYMSF

  begins audio playing at location specified

- CDIOCRESUME

  resumes playing a previously paused disc

- CDIOCPAUSE

  pauses a playing disc

- CDIOCSTART

  begins playing a disc

- CDIOCSTOP

  stops a previously playing disc

- CDIOCEJECT

  opens the disc tray (there is no support for a corresponding un-eject command).

- CDIOCRESET

  stops any play and resets the Mitsumi controller board

- CDIOCSETDEBUG

  cause the kernel to print debug messages to the console about the **mcd** driver

- CDIOCCLRDEBUG

  cause the kernel to quit printing debug messages about the **mcd** driver

The **ioctl**() commands defined above are the only ones that the **mcd** driver supports. There are other CD-ROM related **ioctl**() commands (such as CDIOCSETVOL and CDIOCSETSTERIO) which are available and may be supported by future versions of the driver.

## FILES

- */dev/(r)mcd0a*

  accesses BSD partition on the disc. Normally, there is only one file system on a CD-ROM disc.

- */dev/(r)mcd0c*

  accesses raw device.

## NOTES

The character-mode devices for the **mcd** driver should only be used for accessing the audio features of the CD-ROM player as the performance on data is abysmal.

The current version of the driver uses neither the DMA or IRQ features of the interface board, although it has an interrupt handler for any IRQ requests that are generated. Until the DMA features are supported, the only interrupts that the board generates are those that are not supported by the driver anyway.

## SEE ALSO

⟨sys/cdio.h⟩

## HISTORY

An **mcd** driver appeared in FreeBSD 1.0.

## AUTHORS

The driver was written by Holger Veit (data part) and Brian Moore (audio part). Changes were provided by Gary Clark II, Andrew A. Chernov, and Jordan K. Hubbard.
