Short: Retargetable audio 4.16,Developer archive Author: Martin Blom Uploader: Christoph Fassbach Type: dev/misc Version: 4.16 Architecture: m68k-amigaos >= 2.0.4 Re-upload of the ancient 4.16 developer archives for historical reference - and lovers of old machines being therefore in need of AHI4. Original ReadMe content below: ------------------------------ This archive contains the developer documentation and example source code for AHI, both for programmer who wish to use AHI in their own applications and those who want to write hardware drivers. Changes since last release ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ Bug fixes in the device code. Updated documentation. New translation (hrvatski). Added driver for Maestro Pro to the distribution. Added driver for Concierto to the distribution. TITLE AHI Audio system VERSION Release 4 AUTHOR Martin Blom DESCRIPTION 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 · Slower 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. Quick overview ŻŻŻŻŻŻŻŻŻŻŻŻŻŻ * 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 MPEG · Paula (8/14/14c bit) · Prelude · Toccata · Wavetools · 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 user. * 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. SPECIAL REQUIREMENTS AmigaOS release 2. MC68020 processor or better strongly recommended. AVAILABILITY Aminet, for example: ftp://ftp.germany.aminet.org/pub/aminet/dev/misc/ahidev.lha ftp://ftp.germany.aminet.org/pub/aminet/mus/misc/ahiusr.lha ftp://ftp.germany.aminet.org/pub/aminet/docs/misc/ahiman.lha WWW: http://www.lysator.liu.se/~lcs/ahi.html PRICE 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. DISTRIBUTABILITY Copyright İ1994-1997 Martin Blom. Freely distributable in unmodified form. See the AHI User's Guide for more information. ============================= Archive contents ============================= Original Packed Ratio Date Time Name -------- ------- ----- --------- -------- ------------- 632 274 56.6% 08-Aug-97 17:39:30 AHI.info 5108 2347 54.0% 04-Nov-97 23:05:26 +ahidev.readme 468 236 49.5% 08-Aug-97 17:39:30 +ahidev.readme.info 364 219 39.8% 21-Mar-97 20:13:22 +Copyright 468 229 51.0% 08-Aug-97 17:39:30 +Copyright.info 65297 17904 72.5% 04-Nov-97 22:59:54 +ahi.doc 75989 19168 74.7% 04-Nov-97 22:59:56 +ahi.guide 79854 19388 75.7% 04-Nov-97 23:00:00 +ahi.html 23055 6921 69.9% 04-Nov-97 23:00:02 +ahi_sub.doc 26982 7542 72.0% 04-Nov-97 23:00:04 +ahi_sub.guide 27939 7610 72.7% 04-Nov-97 23:00:06 +ahi_sub.html 51689 15021 70.9% 04-Nov-97 23:14:14 +devguide.guide 1373 437 68.1% 17-Sep-96 11:08:26 +asmfuncs.a 22993 5881 74.4% 29-Apr-97 09:39:48 +filesave.c 2432 966 60.2% 08-Sep-96 14:26:28 +filesave.h 594 279 53.0% 08-Sep-96 14:26:42 +filesave.i 2074 415 79.9% 02-Jun-97 12:26:46 +prefsfile.a 1525 621 59.2% 03-Jul-97 16:04:22 +smakefile 920 372 59.5% 05-Jul-97 12:39:18 +macros.i 408 172 57.8% 05-Jul-97 16:49:50 +Makefile 362 107 70.4% 05-Jul-97 15:50:02 +debug.a 84028 21004 75.0% 08-Oct-97 22:46:22 +paula_audio.a 7519 706 90.6% 31-Oct-97 16:02:24 +prefsfile.a 998 415 58.4% 07-Jul-97 23:16:50 +smakefile 7029 2218 68.4% 27-May-97 21:23:40 +asmfuncs.a 3038 418 86.2% 18-May-97 15:53:12 +prefsfile.a 1452 631 56.5% 12-Aug-97 21:39:32 +smakefile 19507 5044 74.1% 13-Aug-97 06:43:12 +toccata.c 1046 417 60.1% 23-Apr-97 21:19:50 +toccata.h 649 301 53.6% 23-Apr-97 21:19:54 +toccata.i 5794 2372 59.0% 23-Dec-95 12:19:54 +dad_audio.i 1098 625 43.0% 03-Jul-97 16:36:20 +log.ascii 98 74 24.4% 08-Feb-97 19:20:50 +makeit 2130 385 81.9% 03-Jul-97 16:34:04 +prefsfile.a 487 260 46.6% 03-Jul-97 16:35:16 +smakefile 693 403 41.8% 15-Feb-97 01:29:44 +wavetools.audio.readme 26557 6912 73.9% 03-Jul-97 16:32:26 +wavetools_audio.a 987 506 48.7% 09-Apr-97 01:54:16 +AHI-Handler.DICE 30792 7674 75.0% 09-Apr-97 01:55:50 +main.c 3960 1248 68.4% 12-Mar-97 16:28:54 +main.h 60110 15947 73.4% 09-Apr-97 01:55:50 +main.c,v 199 137 31.1% 05-Jul-97 16:54:20 +smakefile 407 173 57.4% 05-Jul-97 16:55:20 +Makefile 2916 1945 33.2% 04-Nov-97 22:49:34 +PlayTest 3579 1451 59.4% 08-Apr-97 23:34:36 +PlayTest.c 138 119 13.7% 26-Mar-97 02:07:36 +SCOPTIONS 306 168 45.0% 02-Jul-97 10:29:48 +smakefile 2736 1833 33.0% 04-Nov-97 22:49:46 +RecordTest 2724 1136 58.2% 08-Apr-97 23:34:26 +RecordTest.c 138 119 13.7% 03-Nov-96 19:22:44 +SCOPTIONS 308 169 45.1% 02-Jul-97 10:29:54 +smakefile 2340 1640 29.9% 04-Nov-97 22:52:04 +CheckAHIPrefs 1965 796 59.4% 02-Nov-97 23:41:58 +CheckAHIPrefs.c 362 182 49.7% 02-Nov-97 23:46:18 +smakefile 389 159 59.1% 02-Nov-97 23:44:36 +Makefile 2382 1044 56.1% 01-May-96 20:13:30 +GetAudioID.info 840 474 43.5% 01-May-96 20:13:30 +empty.ct 376 232 38.2% 01-May-96 20:13:30 +GetAudioID.catalog 2276 1394 38.7% 01-May-96 20:13:30 +GetAudioID 8438 3543 58.0% 01-May-96 20:13:30 +GetAudioID.guide 1831 1130 38.2% 01-May-96 20:13:30 +GetAudioID.guide.info 1903 600 68.4% 01-May-96 20:13:30 +GetAudioID.info 841 463 44.9% 01-May-96 20:13:30 +GAI.cd 11973 4497 62.4% 01-May-96 20:13:30 +GAI.S 2960 1893 36.0% 04-Nov-97 22:50:00 +BestAudioID 2655 977 63.2% 02-Jul-97 10:24:02 +BestAudioID.c 150 116 22.6% 28-Jun-97 18:30:02 +SCOPTIONS 309 172 44.3% 02-Jul-97 10:30:44 +smakefile 3540 2200 37.8% 04-Nov-97 22:50:12 +DoubleBuffer 7604 2069 72.7% 03-Aug-97 18:36:36 +DoubleBuffer.c 153 121 20.9% 30-Sep-96 09:38:30 +SCOPTIONS 310 172 44.5% 02-Jul-97 10:30:04 +smakefile 830 511 38.4% 03-Jul-97 11:09:14 +HardDiskRecord.catalog 3397 951 72.0% 03-Jul-97 11:09:14 +HardDiskRecord.ct 13035 3406 73.8% 16-Sep-96 15:51:34 +GUI.c 16250 2348 85.5% 18-Jul-96 09:17:18 +GUI.des 292 91 68.8% 18-Jul-96 09:17:18 +GUI.extras.h 2546 737 71.0% 16-Sep-96 15:51:36 +GUI.h 12676 6911 45.4% 04-Nov-97 22:50:40 +HardDiskRecord 19955 5951 70.1% 23-Jan-97 18:59:54 +HardDiskRecord.c 2612 616 76.4% 16-Sep-96 15:51:34 +HardDiskRecord.cd 2896 659 77.2% 16-Sep-96 15:51:34 +HardDiskRecord.ct 1657 679 59.0% 18-Jul-96 09:17:18 +HardDiskRecord.h 374 246 34.2% 22-Apr-97 00:04:08 +HardDiskRecord.readme 3307 1191 63.9% 18-Jul-96 09:17:18 +recordfunc.a 1081 487 54.9% 03-Jul-97 12:01:12 +smakefile 620 391 36.9% 04-Nov-97 22:50:52 +ahi.lib 1226 580 52.6% 02-Apr-97 21:48:46 +AHI_lib.c 219 124 43.3% 03-Jul-97 12:07:12 +smakefile 473 218 53.9% 05-Jul-97 16:55:26 +Makefile 2318 761 67.1% 17-Apr-97 01:56:22 +PT-AHIPlay.h 1901 708 62.7% 17-Apr-97 01:56:26 +PT-AHIPlay.i 4508 2571 42.9% 04-Nov-97 22:50:58 +PT-AHIPlay.o 29995 7592 74.6% 11-Jul-97 11:17:14 +PT-AHIPlay.s 29117 7798 73.2% 17-Apr-97 01:26:54 +PT-AHIPlay_old.s 113 98 13.2% 02-Jul-97 10:35:46 +smakefile 7070 2045 71.0% 29-Apr-97 00:07:16 +Class.c 3038 1044 65.6% 18-Apr-97 17:38:54 +Data.h 485 268 44.7% 28-Oct-96 21:54:00 +DT_code.a 299 158 47.1% 29-Apr-97 13:03:44 +DT_ident 7179 2160 69.9% 18-Apr-97 17:39:16 +LibCode.c 263 152 42.2% 29-Apr-97 00:04:48 +protracker.datatype_rev.h 312 177 43.2% 29-Apr-97 00:04:48 +protracker.datatype_rev.i 15 15 0.0% 29-Apr-97 00:04:48 +protracker.datatype_rev.rev 281 168 40.2% 07-Oct-96 19:17:14 +protracker_rev.i 14 14 0.0% 07-Oct-96 19:17:14 +protracker_rev.rev 628 278 55.7% 29-Apr-97 13:08:12 +ProtrackerDT.info 7008 4034 42.4% 04-Nov-97 22:51:18 +protracker.datatype 248 196 20.9% 04-Nov-97 22:51:24 +Protracker 473 294 37.8% 13-Oct-96 09:16:24 +Protracker.info 3 3 0.0% 02-Jul-97 11:05:08 +Protracker 643 287 55.3% 29-Apr-97 13:04:08 +Install 726 361 50.2% 29-Apr-97 13:07:38 +Install.info 1189 650 45.3% 29-Apr-97 13:09:38 +ProtrackerDT.readme 468 231 50.6% 29-Apr-97 13:07:38 +ProtrackerDT.readme.info 1338 529 60.4% 18-Apr-97 12:31:26 +RomTag.a 1246 628 49.5% 03-Jul-97 11:47:36 +SMakefile 2635 1234 53.1% 17-Nov-96 16:05:12 +RecordTestQnD.s 2280 1544 32.2% 04-Nov-97 22:51:38 +Req-test 1915 855 55.3% 28-Jun-97 18:27:28 +req-test.c 150 116 22.6% 02-Apr-97 21:59:08 +SCOPTIONS 306 168 45.0% 02-Jul-97 10:29:32 +smakefile 153 121 20.9% 26-Jan-97 22:52:12 +SCOPTIONS 3760 2438 35.1% 04-Nov-97 22:51:52 +SimplePlay 10853 2926 73.0% 23-Apr-97 20:09:34 +SimplePlay.c 308 172 44.1% 02-Jul-97 10:31:12 +smakefile 371 149 59.8% 02-Nov-97 23:44:18 +Makefile 4914 993 79.7% 04-Nov-97 22:59:38 +ahi.h 3115 696 77.6% 04-Nov-97 22:59:38 +ahi_sub.h 53 53 0.0% 15-Nov-96 00:23:00 +ahi_pragmas.h 61 61 0.0% 15-Nov-96 00:23:12 +ahi_sub_pragmas.h 188 135 28.1% 11-Jan-97 20:26:18 +ahi.h 205 144 29.7% 11-Jan-97 20:26:28 +ahi_sub.h 14170 4552 67.8% 27-Apr-97 14:08:44 +ahi.i 2661 1103 58.5% 02-Apr-97 22:03:52 +ahi_sub.i 850 287 66.2% 04-Nov-97 22:59:32 +ahi_lib.i 628 226 64.0% 04-Nov-97 22:59:32 +ahi_sub_lib.i 2011 632 68.5% 02-Apr-97 22:06:16 +ahi_protos.h 1424 503 64.6% 02-Apr-97 22:06:06 +ahi_sub_protos.h 14198 4172 70.6% 27-Apr-97 14:08:34 +ahi.h 3495 1249 64.2% 18-May-97 16:10:54 +ahi_sub.h 396 213 46.2% 04-Nov-97 22:59:40 +ahi.m 300 159 47.0% 04-Nov-97 22:59:40 +ahi_sub.m 4702 1933 58.8% 04-Nov-97 22:59:44 +ahi.m 822 425 48.2% 04-Nov-97 22:59:48 +ahi_sub.m 991 432 56.4% 02-Apr-97 22:06:42 +ahi_lib.fd 796 313 60.6% 26-Mar-97 23:25:16 +ahi_sub_lib.fd 1820 535 70.6% 04-Nov-97 22:59:34 +ahi_pragmas.h 1073 331 69.1% 04-Nov-97 22:59:36 +ahi_sub_pragmas.h 191 129 32.4% 04-Nov-97 22:59:36 +ahi.h 214 138 35.5% 04-Nov-97 22:59:36 +ahi_sub.h 1809 521 71.1% 04-Nov-97 22:59:32 +ahi_lib.h 1107 344 68.9% 04-Nov-97 22:59:34 +ahi_sub_lib.h 186 127 31.7% 04-Nov-97 22:59:34 +ahi.h 209 139 33.4% 04-Nov-97 22:59:34 +ahi_sub.h 50 48 4.0% 03-Mar-96 17:41:04 +ReadMe.txt 4696 2857 39.1% 08-Jul-97 00:25:36 +ScanAudioModes 8456 4950 41.4% 31-Dec-95 17:15:38 +sift 5765 1912 66.8% 21-May-96 19:19:16 +ScanAudioModes.c 85 69 18.8% 08-Jul-97 00:25:26 +SCOPTIONS 265 172 35.0% 21-May-96 19:19:30 +smakefile 5612 2503 55.3% 31-Dec-95 17:15:38 +sift.c 20821 7436 64.2% 03-Nov-97 00:13:28 +History 468 231 50.6% 08-Aug-97 17:39:30 +History.info 76850 20590 73.2% 02-Nov-97 00:01:38 +Install AHI 709 354 50.0% 08-Aug-97 17:39:30 +Install AHI.info -------- ------- ----- --------- -------- 1108967 335500 69.7% 11-Nov-97 22:23:28 166 files