This archive contains the binary distribution of AHI,
everything you need to use programs that require AHI,
and documentation in AmigaGuide® format.
Changes since last release
This release contains the latest drivers and an updated version
of AddAudioModes, that can now make ECS Amigas produce 44.1 kHz
A new version of the Paula driver is also included, which offers
exactly the same timimg as the Filesave driver and most sound card
drivers (see the documentation for the AHIpaulaFakeMixFreq variable).
AHI Audio system
Martin Blom <lcslysator.liu.se>
Retargetable Audio for AmigaOS
(When refering to this software, the correct term is
'AHI audio system' or just 'AHI', never 'Audio Hardware
Interface'! 'AHI' is pronounced 'atchii', as in 'God bless!'.)
Starting with version 3 of AHI, the MC68000 processor is also supported.
However, many features are lacking:
· Very limited volime control when using 16 bit samples
· No HiFi mixing routines are available.
· No stereo samples
· No DSP effects are available.
· Less precision on some calculations
As you can see, this version is very primitive. Get yourself an
accelerator! I cannot guarantee that I will continue to support this
processor in the future.
* Driver based
Each supported sound card is controlled by a library-based audio
driver. For a 'dumb' sound card, a new driver should be written in
a few hours. For a 'smart' sound card, it is possible to utilize an
on-board DSP, for example, to maximize performance and sound quality.
For sound cards with own DSP but little or no memory, it is possible
to use the main CPU to mix channels and do the post-processing
with the DSP. Available today are drivers for
· Aura (sampler only)
· Clarity (sampler only)
· Concierto (Picasso IV sound module)
· Delfina DSP and Delfina Lite
· DraCo Motion
· Maestro Pro
· Melody Z2 and 1200
· Paula (8/14/14c bit)
· 8SVX (mono) and AIFF/AIFC (mono & stereo) sample render
* Fast, powerful mixing routines (yeah, right... haha)
The device's mixing routines mix 8- or 16-bit signed samples, both
mono and stereo, located in Fast-RAM and outputs 16-bit mono or stereo
(with stereo panning if desired) data, using any number of channels
(as long as 'any' means less than 128...). Tables can be used speed
the mixing up (especially when using 8-bit samples). The samples can
have any length (including odd) and can have any number of loops.
* Support for non-realtime mixing
By providing a timing feature, it is possible to create high-
quality output even if the processing power is lacking, by saving
the output to disk, for example as an IFF AIFF or 8SXV file.
There are so-called HiFi mixing routines that can be used, which
use linear interpolation and gives 32 bit output.
* Audio database
Uses ID codes, much like Screenmode IDs, to select the many
parameters that can be set. The functions to access the audio
database are not too different from those in 'graphics.library'.
The device also features a requester to get an ID code from the
* Both high- and low-level protocol
By acting both like a device and a library, AHI gives the programmer
a choice between full control and simplicity. The device API allows
several programs to use the audio hardware at the same time, and
the AUDIO: dos-device driver makes playing and recording sound very
simple for both the programmer and user.
* Future Compatible
When AmigaOS gets device-independent audio worth it's name, it should
not be too difficult to write a driver for AHI, allowing applications
using 'ahi.device' to automatically use the new OS interface. At
least I hope it wont.
AmigaOS release 2.
MC68020 processor or better strongly recommended.
Aminet, for example:
Free. But if you use it in a shareware of commercial product,
I would like a registered copy for me and each of the audio driver
authors (this is merely a wish, you don't have to do it if you don't
think we deserve it). See the AHI User's Guide for more information.
Copyright ©1994-1998 Martin Blom.
Freely distributable in unmodified form.
See the AHI User's Guide for more information.