Go to the first, previous, next, last section, table of contents.


The Drivers

The hardware drivers themself are located in the `DEVS:AHI' drawer, and are named as `<name>.audio'. They are actually libraries, in spite of being located under the `DEVS:' assign, and will be flushed out from memory when not in use and the system needs more RAM. Many of the drivers require additional files; see below. These extra files are not delivered with AHI.

concierto.audio
Requires concierto.library.
delfina.audio
Requires delfina.library version 4 or greater (7).
maestropro.audio
Requires maestix.library version 40.10 or greater (8). For more information about this driver as well as the most recent version of maestix.library, please visit the author's WWW page (9).
melody.audio
Requires melodympeg.device version 1.40 or greater (10).
paula.audio
On startup, the file `ENV:CyberSound/SoundDrivers/14Bit_Calibration' is read and used for the 14 bit DAC calibration. The 14 bit modes cannot be used for recording, but the 8 bit modes supports both generic parallel port samplers as well as both the Aura and Clarity samplers. The environment variable `AHIpaulaFilterFreq' is checked every time playback starts, and should be set to a frequency in Hertz. If the mixing frequency is higher than this value, the internal low-pass filter will be turned off. If it is lower, the filter will be activated. The default is 0 Hz, which means that the filter will always be turned off. Example:
SetEnv AHIpaulaFilterFreq 16000
Copy ENV:AHIpaulaFilterFreq ENVARC:
The variable `AHIpaulaSampleLimit' is also checked. This variable controls how the driver should handle mixing frequencies greater than 28 kHz, which is the limit of the hardware when using 15 kHz screen modes (PAL, NTSC, Euro36). If the current screen mode is a VGA (31 kHz) mode, the driver allows frequencies up to 48 kHz. Normally, the driver checks the current screen mode, and decides if the higher mixing frequencies should be available or not. By setting this variable, you can control that decision. If set to `0', the frequency will always be limited to 28 kHz and if set to `1', there will never be any limit. Example:
SetEnv AHIpaulaSampleLimit 1
Copy ENV:AHIpaulaSampleLimit ENVARC:
This will disable any screen mode checking, and will always allow up to 48 kHz in the mode requesters.
Delete ENV:AHIpaulaSampleLimit
Delete ENVARC:AHIpaulaSampleLimit
This will turn on the screen mode checking again. Because of incorrect hardware documentation, there is great confusion about which hardware channels are sent to the left speaker, and which are sent to the right. paula.audio uses the correct order (right, left, left, right) but many other programs don't. The `AHIpaulaSwapChannels' variable was added to let the user decide if the correct or incorrect behaviour should be used. In not present or set to `0', the correct behaviour is used. If set to `1', the left and right channels will be swapped. Finally, the variable `AHIpaulaBufferLength' controls the minimum playback buffer size to use. Because of the limited Chip RAM bandwidth, a MC68060 CPU might run into trouble when using the default minumum buffer size (0). By setting this variable to `1024', for example, you will reduce the number of interrupts caused and increase the number of samples transferred each time to at least 1024 samples. But take care! Setting this variable too high will cause long periods with multitasking disabled.
toccata.audio
Requires toccata.library version 12 or greater (11). This driver also reads the environment variables `AHItoccataNoTask' and `AHItoccataIrqSize'. If `AHItoccataNoTask' is set to `1', all mixing will be done in a Software Interrupt which means the sound output will not suffer when multitasking is turned off. The back side is that it requires a faster CPU. Much faster. Only use this option as a last resort. Example:
SetEnv AHItoccataNoTask 1
Copy ENV:AHItoccataNoTask ENVARC:
`AHItoccataIrqSize' specifies the number of bytes transferred to the card each interrupt and defaults to `512'. It must be one of `32', `64', `128', `256' or `512'. If you encounter problems with serial port hardware, you might want to set this variable to a lower value than the default. Please note that this driver is used for both the DraCo Motion and the Toccata.
wavetools.audio
Requires dad_audio.device.


Go to the first, previous, next, last section, table of contents.