|
||||||||
|
Next
Previous
Contents
13. The Sound group of ModulesThe sound code provides emulation of the SB. The actual emulation provided depends upon the support available from the kernel sound driver. Because this is very OS dependant the driver code itself is kept in architecture specifc files under src/arch/osname/dosext/sound/. Communication is via a set of interface functions and the device independant structures.
13.1 dosext/sound/sound.c Information
Maintainers: Alistair MacDonald
<alistair@slitesys.demon.co.uk> 13.2 Functions in dosext/sound/sound.cThese are the functions defined in dosext/sound/sound.c.
sb_io_read
Arguments are:
adlib_io_read
Arguments are:
mpu401_io_read
Arguments are:
sb_io_write
Arguments are:
sb_dsp_write
Arguments are:
13.3 Remarks in dosext/sound/sound.cWrite silence could probably be implemented by setting up a "DMA" transfer from /dev/null - AM
13.4 Items for Fixing in dosext/sound/sound.cThe file header needs tidying up a _LOT_ ! */ ----- Adlib status reads are unimplemented */ ----- Advanced adlib reads are unimplemented */ ----- CMS Writes are unimplemented. ----- DSP Status is unimplemented ----- Adlib Waveform tests are unimplemented */ ----- Advanced Adlib register writes are unimplemented */ ----- Advanced Adlib data writes are unimplemented */ ----- SB Midi is Unimplemented ----- Sine Generation is unimplemented ----- AUX Status is Unimplemented ----- Stero Input is no implemented ----- ADC is Unimplemented ----- Stopping Auto-Init DMA is not implemented
13.5 arch/linux/dosext/sound/linux_sound.c Information
Maintainers: Alistair MacDonald
<alistair@slitesys.demon.co.uk> 13.6 base/dev/dma/dma.c Information
Maintainers: Alistair MacDonald
<alistair@slitesys.demon.co.uk> 13.7 Remarks in base/dev/dma/dma.c**** WARNING **** This Code _HAS_ changed. ----- The Emulated DMA channels are provided by using files and writes. This means that they are easy to track. It might cause problems when attempting to interface to the REAL DMA controller. (Necessary to talk to hardware which uses DMA.) Note that DMA controller 2 uses word granular addressing and controller 1 uses byte granular address ... this simplifies the code !
----- I think that DREQ should only be set on auto-init if we are the reading portion.
13.8 Items for Fixing in base/dev/dma/dma.c: Pipe Creation failed. Lets hope that it times out ! ----- : Cascade Mode Reads are not supported ----- : The Verify Mode is not supported ----- : The Invalid Mode is not supported (!)
Next Previous Contents |
|||||||
The DOSEMU team |