ym(4)
- NetBSD Manual Pages
YM(4) NetBSD Programmer's Manual YM(4)
NAME
ym - Yamaha OPL3-SA3 audio device driver
SYNOPSIS
ym* at isapnp?
ym* at pnpbios? index ?
audio* at ym?
mpu* at ym?
opl* at ym?
DESCRIPTION
The ym driver provides support for Yamaha YMF715x (OPL3-SA3) sound de-
vices.
The OPL3-SA3 device has WSS compatible full-duplex 16bit CODEC, OPL3 FM
synthesizer, MPU401 compatible MIDI I/O port interface, and built-in `3D
Enhanced' equalizer.
The joystick interface is handled by the joy(4) driver.
MIXER DEVICE
The mixer device of ym driver can be accessed by mixerctl(1) command.
The layout is shown below.
dac ------------------------<----- -----------------
midi(OPL3/ZV)->-+----------------------------+->|inputs.midi |
cd ->------+-*--------------------------+->|inputs.cd |
line ->----*-+-+--------------------------+->|inputs.line |
speaker ->----+-+-+--------------------------+->|inputs.speaker |
inputs.mic v v v monitor.monitor | | |
| --------------- ------- | ------- | | |
mic --->|record.record|->| A/D |---->| D/A |-*->|inputs.dac |analog
| | |conv.|-- ->|conv.| | |output
--------------- ------- | | ------- | outputs.master|-->
wave v | wave | equalization.*|
recording playback -----------------
Note that the `inputs.dac' is twice as sensitive as other `inputs' volume
variables.
The hardware volume changes the `outputs.master' value.
If an external input source is unmuted by setting corresponding
`inputs.*.mute' variable to `off', the device is never put in global pow-
er down or power save mode. This is because if the device is in global
power down or power save mode, the output is automatically muted.
All the external input sources (CD playback, line input, and speaker) are
muted by default.
POWER MANAGEMENT
The ym driver is capable of power management on the OPL3-SA3 devices.
The following modes can be selected by setting `power.save' variable of
mixerctl(1) to `powerdown', `powersave', and `nosave' respectively.
Global power-down mode
When a subpart of the device is unused, the part is power-down
after a timeout period (specified by `power.save.timeout' vari-
able of mixerctl(1) in seconds). When all the subparts of the
device are unused, and all the external input sources are muted,
the driver puts the device in `Global Power Down' mode.
On the global power down mode, the power consumption is minimized
(10uA typ.), but the click noise on power up/down the device is
rather loud. This mode should not be used with headphones or
hi-fi audio systems, or your ears or the systems may be damaged.
Power save mode
When a subpart of the device is unused, the part is powered-down
after a timeout period (specified by `power.save.timeout' vari-
able of mixerctl(1) in seconds). When all the subparts of the
device are unused, and all the external input sources are muted,
the driver put the device in `Power Save' mode.
In power save mode, the power consumption is reduced (5mA typ.).
The click noise on power up/down of the device is very small, but
this operation requires muting/unmuting the device, which make
some noise. In order to reduce the noise, setting the master
volume at the small value is effective.
No power-save mode
Once the device is powered-up, it remains on after the use of the
device. Once a subpart of the device is powered-up, it shall not
be power-down. This mode minimizes click noises on power switch-
ing, but maximizes power consumption (30-100mA).
On suspending, the device is put into power-save state.
BUGS
Although the parameters of the device are saved and restored on apm(4)
suspend/resume, the DMA state is not restored. That is, if the system
suspends during playback, this is not continued after suspend/resume cy-
cle.
The joystick port is not under power management. If a joy(4) device is
configured, the device will never be put in global power down or power
save mode.
The external devices, such as Zoomed Video port, OPL4-ML/2, modem, and
CD-ROM are not supported.
SEE ALSO
mixerctl(1), audio(4), apm(4), isapnp(4), joy(4), midi(4), mpu(4),
opl(4), pnpbios(4)
HISTORY
The ym device driver appeared in NetBSD 1.4.
NetBSD 1.5 May 20, 1998 2
Powered by man-cgi (2024-03-20).
Maintained for NetBSD
by Kimmo Suominen.
Based on man-cgi by Panagiotis Christias.