Finish removal of matcd
This commit is contained in:
parent
16deb40af9
commit
8e0b41a135
@ -1,540 +0,0 @@
|
||||
.\"Matsushita(Panasonic) / Creative Compact Disc Drive Driver (matcd)
|
||||
.\"Authored by Frank Durda IV
|
||||
.\"
|
||||
.\"Program and Documentation are Copyright 1994, 1995, 2003, 2003 Frank Durda IV.
|
||||
.\"All rights reserved.
|
||||
.\" "FDIV" is a trademark of Frank Durda IV.
|
||||
.\"
|
||||
.\"
|
||||
.\"Redistribution and use in source and binary forms, with or without
|
||||
.\"modification, are permitted provided that the following conditions
|
||||
.\"are met:
|
||||
.\"1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\"2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"3. Neither the name of the author nor the names of their contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\"THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\"ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\"IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\"ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
.\"FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
.\"DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
.\"OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
.\"HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
.\"LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
.\"OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\"SUCH DAMAGE.
|
||||
.\"
|
||||
.\"--------------------------------------------------------------------------
|
||||
.\"Dedicated to: My family, my grandfather,
|
||||
.\" and Max, my Golden Retriever
|
||||
.\"
|
||||
.\" Please note any documentation updates here including your name
|
||||
.\" and the date.
|
||||
.\"<2> Text brought in sync with changes made in versions 1(17) - 1(21)
|
||||
.\" Frank Durda IV 4-Jul-1995
|
||||
.\"<3> Text brought in sync with changes made in versions 1(22) - 1(25)
|
||||
.\" Frank Durda IV 24-Sep-1995
|
||||
.\"<4> Overhaul of man page to match version 3(41) (FreeBSD 5.0 support)
|
||||
.\" and style changes noted in other 5.x era man pages.
|
||||
.\" Frank Durda IV 17-Apr-2003
|
||||
.\"<5> Aligned with version 3(42) (FreeBSD pre5.1 support)
|
||||
.\" Frank Durda IV 10-May-2003
|
||||
.\"
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd May 10, 2003
|
||||
.Dt MATCD 4
|
||||
.\"Synchronized to Version 3(42) of matcd.c
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm matcd
|
||||
.Nd Matsushita (Panasonic) Compact Disc drive driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd "device matcd"
|
||||
.Pp
|
||||
In
|
||||
.Pa /boot/device.hints :
|
||||
.Bd -unfilled -compact
|
||||
.Va hint.matcd.[0-3].at Ns = Ns Qq Li isa
|
||||
.Va hint.matcd.[0-3].port Ns = Ns Qq Ar address
|
||||
.Ed
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
driver controls the CR-562 and CR-563 Compact Disc drives made by
|
||||
Matsushita-Kotobuki Electronics Industries, or Matsushita for short.
|
||||
These drives were sold under the Panasonic (which is a trade
|
||||
name for Matsushita), Creative Labs (omniCD) and Reveal names, and were
|
||||
also included in computers that were made by Tandy, GRiD, Victor, AST,
|
||||
Packard Bell and many other brands.
|
||||
.Pp
|
||||
The drives are compatible with the major the Compact Disc standards,
|
||||
including CD-DA (Red Book - Digital Audio on pressed media), CD-WO (Orange
|
||||
Book Part II - Write-Once media), CD-ROM (Yellow Book - Data Storage), and
|
||||
the Kodak Photo-CD system.
|
||||
The drives have some support related to
|
||||
CD-ROM XA and CD-I (Green Book) audio and data requirements.
|
||||
.Pp
|
||||
These drives connect to the PC ISA bus through a simple (but proprietary) host
|
||||
interface.
|
||||
The host interface has been manufactured as a stand-alone adapter
|
||||
card, or included on a sound card or other multi-function adapter card.
|
||||
The
|
||||
.Nm
|
||||
driver supports up to four host interfaces with up to four drives on each
|
||||
interface.
|
||||
CD-DA (digital audio) activity may occur on all drives
|
||||
simultaneously.
|
||||
.Pp
|
||||
The drive hardware supports a
|
||||
.Dq "bus disconnect"
|
||||
system similar to that found
|
||||
in SCSI, and this allows simultaneous data read operations to be in progress
|
||||
on multiple drives on the same host interface, but the driver currently
|
||||
limits read operations to one active drive per host interface at a time.
|
||||
Despite this, all four drives on a given host interface are able deliver
|
||||
data at their full rated transfer rate for sequential blocks simultaneously,
|
||||
thanks to a modest read-ahead buffer in each drive.
|
||||
.Sh DRIVER INSTALLATION
|
||||
The
|
||||
.Nm
|
||||
driver can be directly linked into the
|
||||
.Fx
|
||||
kernel, or exist
|
||||
as a loadable
|
||||
.Fx
|
||||
kernel module.
|
||||
The kernel module can be loaded or unloaded at any time
|
||||
using the
|
||||
.Xr kldload 8 Ns / Ns Xr kldunload 8
|
||||
commands.
|
||||
.Pp
|
||||
For most configurations, the
|
||||
.Nm
|
||||
driver should be used as a loadable kernel module and need not be linked into
|
||||
the kernel.
|
||||
However, if you are attempting to do an install from a
|
||||
CD-ROM/CD-WO disc that is initiated from a non-FreeBSD operating system or
|
||||
you have a BIOS boot capability for this type of Compact Disc drive, having
|
||||
the driver already in the kernel can simplify the installation process.
|
||||
.Pp
|
||||
If you determine that you need to have the
|
||||
.Nm
|
||||
driver linked into the kernel, it is necessary to add an entry to the kernel
|
||||
configuration file and generate a new kernel.
|
||||
The
|
||||
.Fx
|
||||
kernel source tree comes
|
||||
with the file
|
||||
.Pa /usr/src/sys/i386/conf/GENERIC .
|
||||
You should make a copy of this file and give the copy the name of your system,
|
||||
such as
|
||||
.Pa MYSYSTEM .
|
||||
You can then edit the new file to include devices you
|
||||
want the system to include in the basic kernel and delete the device entries
|
||||
for drivers that you do not want included.
|
||||
Eliminating drivers for hardware
|
||||
that you do not have can reduce the size of the finished kernel.
|
||||
.Pp
|
||||
To include the
|
||||
.Nm
|
||||
driver to the configuration file, you will need to add this entry:
|
||||
.Pp
|
||||
.D1 Cd "device matcd"
|
||||
.Pp
|
||||
and after making any other adjustments, save the file.
|
||||
.Pp
|
||||
Then generate a new kernel by using the
|
||||
.Xr config 8
|
||||
command and follow
|
||||
all of the instructions that are displayed.
|
||||
If the kernel completely
|
||||
builds, use the
|
||||
.Dq Li "make install"
|
||||
command and then reboot the system for that
|
||||
new kernel to become operational.
|
||||
.Sh DRIVER CONFIGURATION
|
||||
Regardless of whether the
|
||||
.Nm
|
||||
driver is linked into the kernel or is used as a loadable kernel module,
|
||||
the number of host interfaces that the driver will expect (or search for)
|
||||
is dictated by the number of entries present in the file
|
||||
.Pa /boot/device.hints .
|
||||
For example, in order to support two host
|
||||
interfaces, you would include entries like:
|
||||
.Bd -literal -offset indent
|
||||
hint.matcd.0.at="isa"
|
||||
hint.matcd.0.port="0x230"
|
||||
|
||||
hint.matcd.1.at="isa"
|
||||
hint.matcd.1.port="0x260"
|
||||
.Ed
|
||||
.Pp
|
||||
Each set of entries designates a different
|
||||
.Nm
|
||||
host interface, and where the I/O ports on that host interface adapter
|
||||
are located.
|
||||
.Pp
|
||||
(If you only want a single entry, include only the
|
||||
.Va hint.matcd.0
|
||||
items, while add
|
||||
.Va hint.matcd.2
|
||||
and
|
||||
.Va hint.matcd.3
|
||||
as needed to support
|
||||
three or four host interfaces.)
|
||||
.Pp
|
||||
Note that the two
|
||||
.Va hint.matcd.0
|
||||
entries in the
|
||||
.Pa /boot/device.hints
|
||||
file are all that you need to support up to four drives on a single host
|
||||
interface.
|
||||
.Pp
|
||||
If the
|
||||
.Ar address
|
||||
parameter of a
|
||||
.Va hint.matcd. Ns Ar n Ns Va .port Ns = Ns Qq Ar address
|
||||
entry in
|
||||
.Pa /boot/device.hints
|
||||
file is set to
|
||||
.Qq Li \-1 ,
|
||||
the
|
||||
.Nm
|
||||
driver searches for the host interface adapters by using a table
|
||||
of known I/O ports on Creative host adapters contained in the driver itself
|
||||
(see
|
||||
.Pa /usr/src/sys/dev/matcd/options.h ) .
|
||||
.Pp
|
||||
Although the multiple port scan allows the
|
||||
.Nm
|
||||
driver to work with many different types of host adapters without adjustments,
|
||||
using this mechanism has the potential to cause problems when your system has
|
||||
other devices that are located at the I/O ports that the driver will
|
||||
check for potential
|
||||
.Nm
|
||||
host interfaces.
|
||||
The automatic search also significantly increases the
|
||||
amount of time it takes to boot or to load the kernel module.
|
||||
.Pp
|
||||
If you are having problems with the
|
||||
.Nm
|
||||
driver interfering with other adapters while it is probing for hardware, or
|
||||
you do not like the additional amount of time it takes for the entire search
|
||||
of I/O ports to complete, you can solve this by explicitly specifying where
|
||||
all the
|
||||
.Nm
|
||||
host interfaces are located.
|
||||
.Pp
|
||||
Traditionally, Creative Labs SoundBlaster cards have the Matsushita Compact
|
||||
Disc drive host interface located at I/O port 0x230, which is always 0x10
|
||||
above where the first I/O port for the audio section of the card (0x220).
|
||||
.Pp
|
||||
If you have determined exactly where the Matsushita I/O ports start on your
|
||||
system, specify the port by setting the
|
||||
.Va hint.matcd. Ns Ar n Ns Va .port Ns = Ns Qq Ar address
|
||||
entry at the kernel boot
|
||||
prompt, or by editing the entry in the
|
||||
.Pa /boot/device.hints
|
||||
file.
|
||||
.Pp
|
||||
If you make a change to the
|
||||
.Pa /boot/device.hints
|
||||
configuration file
|
||||
while the system is running, it is currently necessary to reboot the system
|
||||
before the updated values take effect.
|
||||
.Sh SUPPORTED HARDWARE
|
||||
At this time, there are only two known drive models that work with the
|
||||
.Nm
|
||||
driver:
|
||||
.Pp
|
||||
.Bl -bullet -compact
|
||||
.It
|
||||
Matsushita CR-562-x
|
||||
.It
|
||||
Matsushita CR-563-x
|
||||
.El
|
||||
.Pp
|
||||
Most resellers leave these original markings on the drives since the label
|
||||
also has the FCC, VDE, CSA and RU certification marks.
|
||||
.Pp
|
||||
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 headphone
|
||||
jack (seen on some Tandy computers), but this drive also works with
|
||||
.Nm .
|
||||
On drives that lack a front headphone jack, audio from discs can still be
|
||||
obtained at line level via a connector on the rear of the drive.
|
||||
.Pp
|
||||
The Matsushita CR-522-x and CR-523-x Compact Disc drives are not usable with
|
||||
.Nm .
|
||||
The CR-522 and CR-523 models can also be identified from the front as they
|
||||
both require a CD-caddy.
|
||||
.Pp
|
||||
Later versions of Matsushita and Creative Compact Disc drives use a
|
||||
basic IDE interface, so these other drives must use an IDE driver, such
|
||||
as
|
||||
.Xr acd 4 .
|
||||
.Pp
|
||||
The TEAC CD-55 4X Compact Disc drive also uses the same Creative/Panasonic
|
||||
electrical interface, but the TEAC drive is not command set compatible with
|
||||
the Matsushita CR-56x drives.
|
||||
The TEAC drive cannot be used with
|
||||
.Nm .
|
||||
.Pp
|
||||
The most common source of host interface adapters for the Panasonic drives
|
||||
was 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
|
||||
.Dq Creative/Panasonic
|
||||
interface.
|
||||
.Pp
|
||||
The following host interface adapters are known to work with the
|
||||
.Nm
|
||||
driver:
|
||||
.Pp
|
||||
.Bl -bullet -compact
|
||||
.It
|
||||
Creative Sound Blaster Pro (SBPRO) (CT1330A)
|
||||
.It
|
||||
Creative Sound Blaster 16 (CT1730)
|
||||
.It
|
||||
Creative Sound Blaster 16 - cost-reduced (CT1740)
|
||||
.It
|
||||
Creative OmniCD upgrade kit adapter card - stand-alone CD (CT1810)
|
||||
.It
|
||||
Creative Sound Blaster 16 - 2-layer, cost-reduced (CT2230)
|
||||
.It
|
||||
Creative Sound Blaster 16 (Vibra16) - 2-layer, single-chip (CT2260)
|
||||
.It
|
||||
Creative Sound Blaster 16 Value (SB16) - 2-layer, cost-reduced (CT2770)
|
||||
.It
|
||||
Creative PhoneBlaster SB16 + Sierra 14.4K Voice/FAX/Data/Speakerphone modem combo (CT3100)
|
||||
.It
|
||||
Reveal (SC400)
|
||||
.El
|
||||
.Pp
|
||||
Caution: Some of these sound boards can be optionally manufactured to not
|
||||
include the Panasonic/Creative interface connector and electronics, so check
|
||||
the board visually to verify that the
|
||||
.Dq Creative
|
||||
or
|
||||
.Dq Panasonic
|
||||
drive connector
|
||||
is actually there before buying the card solely based on model number.
|
||||
.Pp
|
||||
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 released many versions of compatible adapters.
|
||||
.Pp
|
||||
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, at least initially.
|
||||
.Sh SUPPORTED OPERATIONS
|
||||
The
|
||||
.Nm
|
||||
driver supports block and character access.
|
||||
Partition
|
||||
.Pa a
|
||||
returns
|
||||
2048-byte User Data blocks from data CDs.
|
||||
Partition
|
||||
.Pa c
|
||||
returns the full
|
||||
2352-byte Frames from any type of CD, including audio CDs.
|
||||
(Partition
|
||||
.Pa c
|
||||
cannot be
|
||||
.Dq mounted
|
||||
with cd9660 or other standard file system emulators.)
|
||||
No other partitions are supported.
|
||||
.Pp
|
||||
The
|
||||
.Pa matcdl
|
||||
devices work the same as the normal
|
||||
.Pa matcd
|
||||
devices except that the drive trays are locked and
|
||||
remain locked until all of the devs on that drive are closed.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
driver
|
||||
accepts numerous
|
||||
.Xr ioctl 2
|
||||
commands, including functions related to Compact Disc audio and
|
||||
drive tray control features.
|
||||
The commands are:
|
||||
.Pp
|
||||
.Bl -tag -width CDIOCREADSUBCHANNELXXX -compact -offset indent
|
||||
.It Dv DIOCGDINFO
|
||||
get disklabel.
|
||||
.It Dv CDIOCREADSUBCHANNEL
|
||||
report the current optical pick-up position and sub channel data.
|
||||
.It Dv CDIOCREADTOCHEADER
|
||||
reads table of contents summary from the disc.
|
||||
.It Dv CDIOCREADTOCENTRYS
|
||||
reads length/size and other control information for an individual track.
|
||||
.It Dv CDIOCPLAYTRACKS
|
||||
plays audio starting at a track/index and stopping at a track/index.
|
||||
.It Dv CDIOCPLAYBLOCKS
|
||||
plays audio starting at a block and stopping at a block.
|
||||
.It Dv CDIOCPLAYMSF
|
||||
plays audio starting at a particular time offset.
|
||||
.It Dv CDIOCPAUSE
|
||||
pauses a playing disc.
|
||||
.It Dv CDIOCRESUME
|
||||
resumes playing a previously paused disc.
|
||||
Ignored if the drive is
|
||||
already playing.
|
||||
.It Dv CDIOCSTOP
|
||||
stops playing a disc.
|
||||
.It Dv CDIOCEJECT
|
||||
opens the disc tray.
|
||||
.It Dv CDIOCCLOSE
|
||||
closes the disc tray.
|
||||
.It Dv CDIOCPREVENT
|
||||
blocks further attempts to open the drive door until all devices close
|
||||
or a
|
||||
.Dv CDIOCALLOW
|
||||
ioctl is issued.
|
||||
.It Dv CDIOCALLOW
|
||||
unlocks the drive door if it was locked.
|
||||
This ioctl is rejected if
|
||||
any locking devices are open, so it must be issued via a non-locking
|
||||
device.
|
||||
.It Dv CDIOCGETVOL
|
||||
returns the current volume settings of the drive.
|
||||
.It Dv CDIOCSETVOL
|
||||
sets the volume settings of the drive.
|
||||
.It Dv CDIOCSETSTEREO
|
||||
the left channel audio is sent to the left channel output and the
|
||||
right channel audio is sent to the right channel output.
|
||||
This is the
|
||||
default state.
|
||||
(Note that the drive does not have a documented
|
||||
.Dq Mono
|
||||
mode,
|
||||
where L combined with R audio from the disc is sent to both the left and right
|
||||
output channels.)
|
||||
.It Dv CDIOCSETMUTE
|
||||
the audio output is to be turned off.
|
||||
The drive continues to read
|
||||
the audio on the disc and that audio is discarded until the audio routing is
|
||||
turned back on.
|
||||
.It Dv CDIOCSETLEFT
|
||||
the left channel audio is to be sent to the left and right channel outputs.
|
||||
The right channel audio signal is discarded.
|
||||
.It Dv CDIOCSETRIGHT
|
||||
the right channel audio is to be sent to the left and right channel
|
||||
outputs.
|
||||
The left channel audio signal is discarded.
|
||||
.It Dv CDIOCSETPATCH
|
||||
the audio is to be routed as specified in the provided bit maps.
|
||||
.It Dv CDIOCSETPITCH
|
||||
the playback speed of the audio is increased or decreased
|
||||
(for Karaoke
|
||||
.Dq off-key
|
||||
applications).
|
||||
Speed can be adjusted +/-13%.
|
||||
.It Dv CDIOCCAPABILITY
|
||||
report the capabilities of the drive and driver.
|
||||
Results are returned
|
||||
as shown in
|
||||
.In sys/cdio.h .
|
||||
.El
|
||||
.Pp
|
||||
The
|
||||
.Xr ioctl 2
|
||||
commands defined above are the only ones that the
|
||||
.Nm
|
||||
driver supports.
|
||||
.Sh FILES
|
||||
.Bl -tag -width ".Pa /usr/src/sys/dev/matcd/options.h" -compact
|
||||
.It Pa /dev/matcd[0-15]a
|
||||
Used to access 2048-byte blocks of data on a Compact Disc
|
||||
that is recorded in the Mode 1 Form 1 format.
|
||||
.It Pa /dev/matcd[0-15]la
|
||||
Used to access 2048-byte blocks of data on a Compact Disc
|
||||
that is recorded in the Mode 1 Form 1 format and disables the disc
|
||||
eject controls.
|
||||
.It Pa /dev/matcd[0-15]c
|
||||
Used to access 2352-byte frames on a Compact Disc
|
||||
recorded in any format.
|
||||
.It Pa /dev/matcd[0-15]lc
|
||||
Used to access 2352-byte frames on a Compact Disc
|
||||
recorded in any format and disables the disc eject controls.
|
||||
.It Pa /boot/devices.hints
|
||||
Specify the number of host interfaces and host adapter I/O port locations
|
||||
that
|
||||
.Nm
|
||||
should examine.
|
||||
.It Pa /usr/src/sys/dev/matcd/*
|
||||
Source code for
|
||||
.Nm .
|
||||
.It Pa /usr/src/sys/dev/matcd/options.h
|
||||
Contains all of the compilation options for
|
||||
.Nm .
|
||||
.El
|
||||
.Sh NOTES
|
||||
The various Creative/Panasonic host interface adapters do not use interrupts
|
||||
or DMA although the drives themselves are equipped to allow both to be used.
|
||||
.Pp
|
||||
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.
|
||||
This prevents a disc change from going undetected by higher
|
||||
levels of the operating system.
|
||||
.Pp
|
||||
There must be a drive on each host interface that is addressed as
|
||||
physical drive 0.
|
||||
(Jumpers on the back of the drive control this setting.)
|
||||
If there is no physical drive 0, the
|
||||
.Nm
|
||||
driver will be unable to detect that host interface or any of the drives
|
||||
connected to that host interface.
|
||||
.Pp
|
||||
It is not necessary to have four drives attached
|
||||
to the first host interface before being able to activate a second host
|
||||
interface, but each interface must have at least one drive jumpered to be
|
||||
drive 0.
|
||||
.Pp
|
||||
Drives on a second host interface are considered logical
|
||||
drive numbers 4 through 7, drives 8 through 11 are on the third interface
|
||||
and 12 through 15 are on the fourth.
|
||||
The first drive on the second host
|
||||
interface is always logical drive 4 regardless of how many drives are
|
||||
present on the first host interface.
|
||||
.Pp
|
||||
Host interfaces are numbered as specified in the
|
||||
.Pa /boot/devices.hints
|
||||
file.
|
||||
.Sh SEE ALSO
|
||||
.In sys/cdio.h
|
||||
.Pp
|
||||
.Xr kldload 8 ,
|
||||
.Xr kldunload 8
|
||||
.Sh AUTHORS
|
||||
The driver and documentation was written by
|
||||
.An Frank Durda IV .
|
||||
.Pp
|
||||
Program and Documentation are Copyright 1994, 1995, 2002, 2003.
|
||||
All rights reserved.
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
driver originally appeared in
|
||||
.Fx 2.0.5 .
|
||||
The
|
||||
.Fx 5.1
|
||||
compatible implementation described here appeared in
|
||||
.Fx 5.2 .
|
Loading…
x
Reference in New Issue
Block a user