home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Amiga 13 / MA_Cover_13.bin / source / c / ahisrc / docs / ahidev.texinfo < prev    next >
Texinfo Document  |  1999-09-19  |  92.3 KB

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: Texinfo Document (document/texInfo).

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert Texinfo Document (document/texInfo) magic Supported
1% dexvert Text File (text/txt) fallback Supported
100% file TeX document, ISO-8859 text default
100% perlTextCheck Likely Text (Perl) default
100% siegfried x-fmt/111 Plain Text File default
100% detectItEasy Format: Plain text[LF] default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 5c 69 6e 70 75 74 20 74 | 6d 70 2d 69 73 6f 2e 73 |\input t|mp-iso.s|
|00000010| 74 79 0a 5c 69 6e 70 75 | 74 20 74 65 78 69 6e 66 |ty.\inpu|t texinf|
|00000020| 6f 20 20 20 20 20 20 20 | 20 20 20 20 20 20 40 63 |o | @c|
|00000030| 20 2d 2a 2d 74 65 78 69 | 6e 66 6f 2d 2a 2d 0a 40 | -*-texi|nfo-*-.@|
|00000040| 63 20 25 2a 2a 2a 73 74 | 61 72 74 20 6f 66 20 68 |c %***st|art of h|
|00000050| 65 61 64 65 72 0a 40 73 | 65 74 66 69 6c 65 6e 61 |eader.@s|etfilena|
|00000060| 6d 65 20 61 68 69 64 65 | 76 2e 69 6e 66 6f 0a 40 |me ahide|v.info.@|
|00000070| 73 65 74 74 69 74 6c 65 | 20 40 73 63 7b 41 68 69 |settitle| @sc{Ahi|
|00000080| 7d 20 44 65 76 65 6c 6f | 70 65 72 73 27 73 20 47 |} Develo|pers's G|
|00000090| 75 69 64 65 0a 40 73 65 | 74 63 68 61 70 74 65 72 |uide.@se|tchapter|
|000000a0| 6e 65 77 70 61 67 65 20 | 6f 64 64 0a 40 69 66 74 |newpage |odd.@ift|
|000000b0| 65 78 0a 40 61 66 6f 75 | 72 70 61 70 65 72 0a 40 |ex.@afou|rpaper.@|
|000000c0| 65 6e 64 20 69 66 74 65 | 78 0a 40 63 20 25 2a 2a |end ifte|x.@c %**|
|000000d0| 2a 65 6e 64 20 6f 66 20 | 68 65 61 64 65 72 0a 0a |*end of |header..|
|000000e0| 40 63 20 2a 2a 2a 20 56 | 61 72 69 61 62 6c 65 73 |@c *** V|ariables|
|000000f0| 20 2a 2a 2a 0a 0a 40 63 | 20 53 65 74 20 61 68 69 | ***..@c| Set ahi|
|00000100| 76 65 72 20 61 6e 64 20 | 64 6f 63 76 65 72 20 74 |ver and |docver t|
|00000110| 6f 20 63 75 72 72 65 6e | 74 20 72 65 6c 65 61 73 |o curren|t releas|
|00000120| 65 20 76 65 72 73 69 6f | 6e 0a 40 69 6e 63 6c 75 |e versio|n.@inclu|
|00000130| 64 65 20 61 68 69 64 65 | 76 2e 76 65 72 0a 0a 0a |de ahide|v.ver...|
|00000140| 40 63 20 50 61 72 74 20 | 32 3a 20 53 75 6d 6d 61 |@c Part |2: Summa|
|00000150| 72 79 20 44 65 73 63 72 | 69 70 74 69 6f 6e 20 61 |ry Descr|iption a|
|00000160| 6e 64 20 43 6f 70 79 72 | 69 67 68 74 0a 40 63 20 |nd Copyr|ight.@c |
|00000170| af af af af af af af af | af af af af af af af af |........|........|
|00000180| af af af af af af af af | af af af af af af af af |........|........|
|00000190| af af af af af af af af | af 0a 0a 40 69 66 69 6e |........|...@ifin|
|000001a0| 66 6f 0a 54 68 69 73 20 | 66 69 6c 65 20 64 6f 63 |fo.This |file doc|
|000001b0| 75 6d 65 6e 74 73 20 41 | 48 49 20 72 65 6c 65 61 |uments A|HI relea|
|000001c0| 73 65 20 40 76 61 6c 75 | 65 7b 61 68 69 76 65 72 |se @valu|e{ahiver|
|000001d0| 7d 2c 20 61 20 68 61 72 | 64 77 61 72 65 20 69 6e |}, a har|dware in|
|000001e0| 64 65 70 65 6e 64 65 6e | 74 0a 61 75 64 69 6f 20 |dependen|t.audio |
|000001f0| 73 75 62 73 79 73 74 65 | 6d 20 66 6f 72 20 41 6d |subsyste|m for Am|
|00000200| 69 67 61 2e 20 54 68 65 | 20 76 65 72 73 69 6f 6e |iga. The| version|
|00000210| 20 6e 75 6d 62 65 72 20 | 6f 66 20 74 68 69 73 20 | number |of this |
|00000220| 64 6f 63 75 6d 65 6e 74 | 20 69 73 0a 40 76 61 6c |document| is.@val|
|00000230| 75 65 7b 64 6f 63 76 65 | 72 7d 2e 0a 0a 43 6f 70 |ue{docve|r}...Cop|
|00000240| 79 72 69 67 68 74 20 40 | 63 6f 70 79 72 69 67 68 |yright @|copyrigh|
|00000250| 74 7b 7d 20 31 39 39 34 | 2d 31 39 39 39 20 4d 61 |t{} 1994|-1999 Ma|
|00000260| 72 74 69 6e 20 42 6c 6f | 6d 2e 0a 0a 50 65 72 6d |rtin Blo|m...Perm|
|00000270| 69 73 73 69 6f 6e 20 69 | 73 20 67 72 61 6e 74 65 |ission i|s grante|
|00000280| 64 20 74 6f 20 6d 61 6b | 65 20 61 6e 64 20 64 69 |d to mak|e and di|
|00000290| 73 74 72 69 62 75 74 65 | 20 76 65 72 62 61 74 69 |stribute| verbati|
|000002a0| 6d 20 63 6f 70 69 65 73 | 20 6f 66 20 74 68 69 73 |m copies| of this|
|000002b0| 20 6d 61 6e 75 61 6c 0a | 70 72 6f 76 69 64 65 64 | manual.|provided|
|000002c0| 20 74 68 65 20 63 6f 70 | 79 72 69 67 68 74 20 6e | the cop|yright n|
|000002d0| 6f 74 69 63 65 20 61 6e | 64 20 74 68 69 73 20 70 |otice an|d this p|
|000002e0| 65 72 6d 69 73 73 69 6f | 6e 20 6e 6f 74 69 63 65 |ermissio|n notice|
|000002f0| 20 61 72 65 20 70 72 65 | 73 65 72 76 65 64 20 6f | are pre|served o|
|00000300| 6e 0a 61 6c 6c 20 63 6f | 70 69 65 73 2e 0a 20 20 |n.all co|pies.. |
|00000310| 20 20 20 0a 40 69 67 6e | 6f 72 65 0a 50 65 72 6d | .@ign|ore.Perm|
|00000320| 69 73 73 69 6f 6e 20 69 | 73 20 67 72 61 6e 74 65 |ission i|s grante|
|00000330| 64 20 74 6f 20 70 72 6f | 63 65 73 73 20 74 68 69 |d to pro|cess thi|
|00000340| 73 20 66 69 6c 65 20 74 | 68 72 6f 75 67 68 20 54 |s file t|hrough T|
|00000350| 65 58 20 61 6e 64 20 70 | 72 69 6e 74 20 74 68 65 |eX and p|rint the|
|00000360| 0a 72 65 73 75 6c 74 73 | 2c 20 70 72 6f 76 69 64 |.results|, provid|
|00000370| 65 64 20 74 68 65 20 70 | 72 69 6e 74 65 64 20 64 |ed the p|rinted d|
|00000380| 6f 63 75 6d 65 6e 74 20 | 63 61 72 72 69 65 73 20 |ocument |carries |
|00000390| 61 20 63 6f 70 79 69 6e | 67 20 70 65 72 6d 69 73 |a copyin|g permis|
|000003a0| 73 69 6f 6e 20 6e 6f 74 | 69 63 65 0a 69 64 65 6e |sion not|ice.iden|
|000003b0| 74 69 63 61 6c 20 74 6f | 20 74 68 69 73 20 6f 6e |tical to| this on|
|000003c0| 65 20 65 78 63 65 70 74 | 20 66 6f 72 20 74 68 65 |e except| for the|
|000003d0| 20 72 65 6d 6f 76 61 6c | 20 6f 66 20 74 68 69 73 | removal| of this|
|000003e0| 20 70 61 72 61 67 72 61 | 70 68 20 28 74 68 69 73 | paragra|ph (this|
|000003f0| 0a 70 61 72 61 67 72 61 | 70 68 20 6e 6f 74 20 62 |.paragra|ph not b|
|00000400| 65 69 6e 67 20 72 65 6c | 65 76 61 6e 74 20 74 6f |eing rel|evant to|
|00000410| 20 74 68 65 20 70 72 69 | 6e 74 65 64 20 6d 61 6e | the pri|nted man|
|00000420| 75 61 6c 29 2e 0a 0a 40 | 65 6e 64 20 69 67 6e 6f |ual)...@|end igno|
|00000430| 72 65 0a 50 65 72 6d 69 | 73 73 69 6f 6e 20 69 73 |re.Permi|ssion is|
|00000440| 20 67 72 61 6e 74 65 64 | 20 74 6f 20 63 6f 70 79 | granted| to copy|
|00000450| 20 61 6e 64 20 64 69 73 | 74 72 69 62 75 74 65 20 | and dis|tribute |
|00000460| 6d 6f 64 69 66 69 65 64 | 20 76 65 72 73 69 6f 6e |modified| version|
|00000470| 73 20 6f 66 20 74 68 69 | 73 0a 6d 61 6e 75 61 6c |s of thi|s.manual|
|00000480| 20 75 6e 64 65 72 20 74 | 68 65 20 63 6f 6e 64 69 | under t|he condi|
|00000490| 74 69 6f 6e 73 20 66 6f | 72 20 76 65 72 62 61 74 |tions fo|r verbat|
|000004a0| 69 6d 20 63 6f 70 79 69 | 6e 67 2c 20 70 72 6f 76 |im copyi|ng, prov|
|000004b0| 69 64 65 64 20 61 6c 73 | 6f 20 74 68 61 74 20 74 |ided als|o that t|
|000004c0| 68 65 0a 73 65 63 74 69 | 6f 6e 73 20 65 6e 74 69 |he.secti|ons enti|
|000004d0| 74 6c 65 64 20 60 60 44 | 69 73 74 72 69 62 75 74 |tled ``D|istribut|
|000004e0| 69 6f 6e 27 27 2c 20 60 | 60 47 50 4c 27 27 20 61 |ion'', `|`GPL'' a|
|000004f0| 6e 64 20 60 60 4c 47 50 | 4c 27 27 20 61 72 65 20 |nd ``LGP|L'' are |
|00000500| 69 6e 63 6c 75 64 65 64 | 0a 65 78 61 63 74 6c 79 |included|.exactly|
|00000510| 20 61 73 20 69 6e 20 74 | 68 65 20 6f 72 69 67 69 | as in t|he origi|
|00000520| 6e 61 6c 2c 20 61 6e 64 | 20 70 72 6f 76 69 64 65 |nal, and| provide|
|00000530| 64 20 74 68 61 74 20 74 | 68 65 20 65 6e 74 69 72 |d that t|he entir|
|00000540| 65 20 72 65 73 75 6c 74 | 69 6e 67 0a 64 65 72 69 |e result|ing.deri|
|00000550| 76 65 64 20 77 6f 72 6b | 20 69 73 20 64 69 73 74 |ved work| is dist|
|00000560| 72 69 62 75 74 65 64 20 | 75 6e 64 65 72 20 74 68 |ributed |under th|
|00000570| 65 20 74 65 72 6d 73 20 | 6f 66 20 61 20 70 65 72 |e terms |of a per|
|00000580| 6d 69 73 73 69 6f 6e 20 | 6e 6f 74 69 63 65 0a 69 |mission |notice.i|
|00000590| 64 65 6e 74 69 63 61 6c | 20 74 6f 20 74 68 69 73 |dentical| to this|
|000005a0| 20 6f 6e 65 2e 0a 0a 50 | 65 72 6d 69 73 73 69 6f | one...P|ermissio|
|000005b0| 6e 20 69 73 20 67 72 61 | 6e 74 65 64 20 74 6f 20 |n is gra|nted to |
|000005c0| 63 6f 70 79 20 61 6e 64 | 20 64 69 73 74 72 69 62 |copy and| distrib|
|000005d0| 75 74 65 20 74 72 61 6e | 73 6c 61 74 69 6f 6e 73 |ute tran|slations|
|000005e0| 20 6f 66 20 74 68 69 73 | 20 6d 61 6e 75 61 6c 0a | of this| manual.|
|000005f0| 69 6e 74 6f 20 61 6e 6f | 74 68 65 72 20 6c 61 6e |into ano|ther lan|
|00000600| 67 75 61 67 65 2c 20 75 | 6e 64 65 72 20 74 68 65 |guage, u|nder the|
|00000610| 20 61 62 6f 76 65 20 63 | 6f 6e 64 69 74 69 6f 6e | above c|ondition|
|00000620| 73 20 66 6f 72 20 6d 6f | 64 69 66 69 65 64 20 76 |s for mo|dified v|
|00000630| 65 72 73 69 6f 6e 73 2c | 0a 65 78 63 65 70 74 20 |ersions,|.except |
|00000640| 74 68 61 74 20 74 68 69 | 73 20 70 65 72 6d 69 73 |that thi|s permis|
|00000650| 73 69 6f 6e 20 6e 6f 74 | 69 63 65 20 6d 61 79 20 |sion not|ice may |
|00000660| 62 65 20 73 74 61 74 65 | 64 20 69 6e 20 61 20 74 |be state|d in a t|
|00000670| 72 61 6e 73 6c 61 74 69 | 6f 6e 20 61 70 70 72 6f |ranslati|on appro|
|00000680| 76 65 64 0a 62 79 20 74 | 68 65 20 46 72 65 65 20 |ved.by t|he Free |
|00000690| 53 6f 66 74 77 61 72 65 | 20 46 6f 75 6e 64 61 74 |Software| Foundat|
|000006a0| 69 6f 6e 2e 0a 0a 40 73 | 63 7b 54 68 69 73 20 70 |ion...@s|c{This p|
|000006b0| 75 62 6c 69 63 61 74 69 | 6f 6e 20 69 73 20 70 72 |ublicati|on is pr|
|000006c0| 6f 76 69 64 65 64 20 62 | 79 20 74 68 65 20 61 75 |ovided b|y the au|
|000006d0| 74 68 6f 72 20 60 60 61 | 73 20 69 73 27 27 20 61 |thor ``a|s is'' a|
|000006e0| 6e 64 20 61 6e 79 20 65 | 78 70 72 65 73 73 20 6f |nd any e|xpress o|
|000006f0| 72 0a 69 6d 70 6c 69 65 | 64 20 77 61 72 72 61 6e |r.implie|d warran|
|00000700| 74 69 65 73 2c 20 69 6e | 63 6c 75 64 69 6e 67 2c |ties, in|cluding,|
|00000710| 20 62 75 74 20 6e 6f 74 | 20 6c 69 6d 69 74 65 64 | but not| limited|
|00000720| 20 74 6f 2c 20 74 68 65 | 20 69 6d 70 6c 69 65 64 | to, the| implied|
|00000730| 20 77 61 72 72 61 6e 74 | 69 65 73 0a 6f 66 20 6d | warrant|ies.of m|
|00000740| 65 72 63 68 61 6e 74 61 | 62 69 6c 69 74 79 20 61 |erchanta|bility a|
|00000750| 6e 64 20 66 69 74 6e 65 | 73 73 20 66 6f 72 20 61 |nd fitne|ss for a|
|00000760| 20 70 61 72 74 69 63 75 | 6c 61 72 20 70 75 72 70 | particu|lar purp|
|00000770| 6f 73 65 20 61 72 65 20 | 64 69 73 63 6c 61 69 6d |ose are |disclaim|
|00000780| 65 64 2e 20 20 49 6e 0a | 6e 6f 20 65 76 65 6e 74 |ed. In.|no event|
|00000790| 20 73 68 61 6c 6c 20 74 | 68 65 20 61 75 74 68 6f | shall t|he autho|
|000007a0| 72 20 62 65 20 6c 69 61 | 62 6c 65 20 66 6f 72 20 |r be lia|ble for |
|000007b0| 61 6e 79 20 64 69 72 65 | 63 74 2c 20 69 6e 64 69 |any dire|ct, indi|
|000007c0| 72 65 63 74 2c 20 69 6e | 63 69 64 65 6e 74 61 6c |rect, in|cidental|
|000007d0| 2c 0a 73 70 65 63 69 61 | 6c 2c 20 65 78 65 6d 70 |,.specia|l, exemp|
|000007e0| 6c 61 72 79 2c 20 6f 72 | 20 63 6f 6e 73 65 71 75 |lary, or| consequ|
|000007f0| 65 6e 74 69 61 6c 20 64 | 61 6d 61 67 65 73 20 28 |ential d|amages (|
|00000800| 69 6e 63 6c 75 64 69 6e | 67 2c 20 62 75 74 20 6e |includin|g, but n|
|00000810| 6f 74 20 6c 69 6d 69 74 | 65 64 0a 74 6f 2c 20 70 |ot limit|ed.to, p|
|00000820| 72 6f 63 75 72 65 6d 65 | 6e 74 20 6f 66 20 73 75 |rocureme|nt of su|
|00000830| 62 73 74 69 74 75 74 65 | 20 67 6f 6f 64 73 20 6f |bstitute| goods o|
|00000840| 72 20 73 65 72 76 69 63 | 65 73 3b 20 6c 6f 73 73 |r servic|es; loss|
|00000850| 20 6f 66 20 75 73 65 2c | 20 64 61 74 61 2c 20 6f | of use,| data, o|
|00000860| 72 0a 70 72 6f 66 69 74 | 73 3b 20 6f 72 20 62 75 |r.profit|s; or bu|
|00000870| 73 69 6e 65 73 73 20 69 | 6e 74 65 72 72 75 70 74 |siness i|nterrupt|
|00000880| 69 6f 6e 29 20 68 6f 77 | 65 76 65 72 20 63 61 75 |ion) how|ever cau|
|00000890| 73 65 64 20 61 6e 64 20 | 6f 6e 20 61 6e 79 20 74 |sed and |on any t|
|000008a0| 68 65 6f 72 79 20 6f 66 | 0a 6c 69 61 62 69 6c 69 |heory of|.liabili|
|000008b0| 74 79 2c 20 77 68 65 74 | 68 65 72 20 69 6e 20 63 |ty, whet|her in c|
|000008c0| 6f 6e 74 72 61 63 74 2c | 20 73 74 72 69 63 74 20 |ontract,| strict |
|000008d0| 6c 69 61 62 69 6c 69 74 | 79 2c 20 6f 72 20 74 6f |liabilit|y, or to|
|000008e0| 72 74 20 28 69 6e 63 6c | 75 64 69 6e 67 0a 6e 65 |rt (incl|uding.ne|
|000008f0| 67 6c 69 67 65 6e 63 65 | 20 6f 72 20 6f 74 68 65 |gligence| or othe|
|00000900| 72 77 69 73 65 29 20 61 | 72 69 73 69 6e 67 20 69 |rwise) a|rising i|
|00000910| 6e 20 61 6e 79 20 77 61 | 79 20 6f 75 74 20 6f 66 |n any wa|y out of|
|00000920| 20 74 68 65 20 75 73 65 | 20 6f 66 20 74 68 69 73 | the use| of this|
|00000930| 0a 70 75 62 6c 69 63 61 | 74 69 6f 6e 2c 20 65 76 |.publica|tion, ev|
|00000940| 65 6e 20 69 66 20 61 64 | 76 69 73 65 64 20 6f 66 |en if ad|vised of|
|00000950| 20 74 68 65 20 70 6f 73 | 73 69 62 69 6c 69 74 79 | the pos|sibility|
|00000960| 20 6f 66 20 73 75 63 68 | 20 64 61 6d 61 67 65 2e | of such| damage.|
|00000970| 7d 0a 0a 40 65 78 61 6d | 70 6c 65 0a 0a 24 49 64 |}..@exam|ple..$Id|
|00000980| 3a 20 61 68 69 64 65 76 | 2e 74 65 78 69 6e 66 6f |: ahidev|.texinfo|
|00000990| 2c 76 20 34 2e 31 35 20 | 31 39 39 39 2f 30 39 2f |,v 4.15 |1999/09/|
|000009a0| 31 39 20 31 34 3a 30 35 | 3a 30 33 20 6c 63 73 20 |19 14:05|:03 lcs |
|000009b0| 45 78 70 20 24 0a 24 4c | 6f 67 3a 20 61 68 69 64 |Exp $.$L|og: ahid|
|000009c0| 65 76 2e 74 65 78 69 6e | 66 6f 2c 76 20 24 0a 52 |ev.texin|fo,v $.R|
|000009d0| 65 76 69 73 69 6f 6e 20 | 34 2e 31 35 20 20 31 39 |evision |4.15 19|
|000009e0| 39 39 2f 30 39 2f 31 39 | 20 31 34 3a 30 35 3a 30 |99/09/19| 14:05:0|
|000009f0| 33 20 20 6c 63 73 0a 53 | 6f 6d 65 20 70 6f 6c 69 |3 lcs.S|ome poli|
|00000a00| 73 68 69 6e 67 2e 0a 0a | 52 65 76 69 73 69 6f 6e |shing...|Revision|
|00000a10| 20 34 2e 31 32 20 20 31 | 39 39 39 2f 30 39 2f 31 | 4.12 1|999/09/1|
|00000a20| 39 20 31 33 3a 31 30 3a | 31 38 20 20 6c 63 73 0a |9 13:10:|18 lcs.|
|00000a30| 46 69 78 65 64 20 73 6f | 6d 65 20 74 79 70 6f 73 |Fixed so|me typos|
|00000a40| 2e 0a 43 68 61 6e 67 65 | 73 20 6c 69 63 65 6e 73 |..Change|s licens|
|00000a50| 65 2e 0a 0a 52 65 76 69 | 73 69 6f 6e 20 34 2e 31 |e...Revi|sion 4.1|
|00000a60| 31 20 20 31 39 39 39 2f | 30 33 2f 32 38 20 32 32 |1 1999/|03/28 22|
|00000a70| 3a 33 32 3a 34 36 20 20 | 6c 63 73 0a 41 48 49 20 |:32:46 |lcs.AHI |
|00000a80| 69 73 20 6e 6f 77 20 47 | 50 4c 2f 4c 47 50 4c 20 |is now G|PL/LGPL |
|00000a90| 73 6f 66 74 77 61 72 65 | 2e 0a 4d 61 6b 65 20 74 |software|..Make t|
|00000aa0| 61 72 67 65 74 20 62 69 | 6e 64 69 73 74 20 77 6f |arget bi|ndist wo|
|00000ab0| 72 6b 20 63 6f 72 72 65 | 63 74 6c 79 20 77 68 65 |rk corre|ctly whe|
|00000ac0| 6e 20 75 73 69 6e 67 20 | 61 20 73 65 70 61 72 61 |n using |a separa|
|00000ad0| 74 65 20 62 75 69 6c 64 | 20 64 69 72 65 63 74 6f |te build| directo|
|00000ae0| 72 79 2e 0a 53 6d 61 6c | 6c 20 66 69 72 73 74 20 |ry..Smal|l first |
|00000af0| 73 74 65 70 73 20 74 6f | 77 61 72 64 73 20 61 20 |steps to|wards a |
|00000b00| 57 61 72 70 4f 53 20 50 | 50 43 20 76 65 72 73 69 |WarpOS P|PC versi|
|00000b10| 6f 6e 2e 0a 0a 52 65 76 | 69 73 69 6f 6e 20 34 2e |on...Rev|ision 4.|
|00000b20| 31 30 20 20 31 39 39 39 | 2f 30 31 2f 31 30 20 31 |10 1999|/01/10 1|
|00000b30| 39 3a 32 37 3a 34 36 20 | 20 6c 63 73 0a 54 68 65 |9:27:46 | lcs.The|
|00000b40| 20 6d 6f 76 65 20 74 6f | 20 47 4e 55 20 6d 61 6b | move to| GNU mak|
|00000b50| 65 20 69 73 20 64 6f 6e | 65 2e 0a 0a 52 65 76 69 |e is don|e...Revi|
|00000b60| 73 69 6f 6e 20 34 2e 39 | 20 20 31 39 39 39 2f 30 |sion 4.9| 1999/0|
|00000b70| 31 2f 31 30 20 31 36 3a | 30 37 3a 35 36 20 20 6c |1/10 16:|07:56 l|
|00000b80| 63 73 0a 4d 6f 76 65 64 | 20 74 6f 20 47 4e 55 20 |cs.Moved| to GNU |
|00000b90| 6d 61 6b 65 20 28 73 74 | 69 6c 6c 20 6d 6f 76 69 |make (st|ill movi|
|00000ba0| 6e 67 2e 2e 2e 29 0a 0a | 52 65 76 69 73 69 6f 6e |ng...)..|Revision|
|00000bb0| 20 34 2e 38 20 20 31 39 | 39 38 2f 30 31 2f 31 38 | 4.8 19|98/01/18|
|00000bc0| 20 31 39 3a 35 30 3a 34 | 32 20 20 6c 63 73 0a 49 | 19:50:4|2 lcs.I|
|00000bd0| 20 68 61 76 65 20 6e 6f | 20 69 64 65 61 2e 0a 0a | have no| idea...|
|00000be0| 52 65 76 69 73 69 6f 6e | 20 34 2e 37 20 20 31 39 |Revision| 4.7 19|
|00000bf0| 39 37 2f 31 30 2f 32 31 | 20 30 31 3a 33 33 3a 34 |97/10/21| 01:33:4|
|00000c00| 30 20 20 6c 63 73 0a 54 | 68 65 20 76 65 72 73 69 |0 lcs.T|he versi|
|00000c10| 6f 6e 20 6e 75 6d 62 65 | 72 20 69 73 20 6e 6f 77 |on numbe|r is now|
|00000c20| 20 74 68 65 20 41 48 49 | 20 72 65 6c 65 61 73 65 | the AHI| release|
|00000c30| 20 76 65 72 73 69 6f 6e | 2c 20 6e 6f 74 20 74 68 | version|, not th|
|00000c40| 65 20 64 6f 63 75 6d 65 | 6e 74 73 20 76 65 72 73 |e docume|nts vers|
|00000c50| 69 6f 6e 2e 0a 0a 52 65 | 76 69 73 69 6f 6e 20 34 |ion...Re|vision 4|
|00000c60| 2e 36 20 20 31 39 39 37 | 2f 30 38 2f 32 31 20 30 |.6 1997|/08/21 0|
|00000c70| 31 3a 31 31 3a 33 30 20 | 20 6c 63 73 0a 41 64 64 |1:11:30 | lcs.Add|
|00000c80| 65 64 20 64 65 73 63 72 | 69 70 74 69 6f 6e 20 6f |ed descr|iption o|
|00000c90| 66 20 74 68 65 20 73 61 | 6d 6c 65 20 66 6f 72 6d |f the sa|mle form|
|00000ca0| 61 74 73 20 41 48 49 5f | 4c 6f 61 64 53 6f 75 6e |ats AHI_|LoadSoun|
|00000cb0| 64 28 29 20 75 6e 64 65 | 72 73 74 61 6e 64 73 0a |d() unde|rstands.|
|00000cc0| 0a 52 65 76 69 73 69 6f | 6e 20 34 2e 35 20 20 31 |.Revisio|n 4.5 1|
|00000cd0| 39 39 37 2f 30 38 2f 31 | 30 20 31 35 3a 33 38 3a |997/08/1|0 15:38:|
|00000ce0| 35 37 20 20 6c 63 73 0a | 41 64 64 65 64 20 40 40 |57 lcs.|Added @@|
|00000cf0| 61 68 69 20 6d 61 63 72 | 6f 21 0a 41 64 64 65 64 |ahi macr|o!.Added|
|00000d00| 20 6e 6f 74 65 20 61 62 | 6f 75 74 20 4c 6f 61 64 | note ab|out Load|
|00000d10| 53 6f 75 6e 64 3a 69 6e | 67 20 74 68 65 20 6d 6f |Sound:in|g the mo|
|00000d20| 73 74 20 69 6d 70 6f 72 | 74 61 6e 74 20 73 6f 75 |st impor|tant sou|
|00000d30| 6e 64 73 20 66 69 72 73 | 74 0a 0a 52 65 76 69 73 |nds firs|t..Revis|
|00000d40| 69 6f 6e 20 34 2e 34 20 | 20 31 39 39 37 2f 30 37 |ion 4.4 | 1997/07|
|00000d50| 2f 32 37 20 30 30 3a 31 | 33 3a 33 32 20 20 6c 63 |/27 00:1|3:32 lc|
|00000d60| 73 0a 46 69 78 65 64 20 | 61 20 6d 69 73 74 79 70 |s.Fixed |a mistyp|
|00000d70| 65 69 6e 67 3a 20 77 61 | 73 20 53 65 74 46 72 65 |eing: wa|s SetFre|
|00000d80| 71 28 29 20 69 6e 73 74 | 65 61 64 20 6f 66 20 41 |q() inst|ead of A|
|00000d90| 48 49 5f 53 65 74 46 72 | 65 71 28 29 2e 0a 0a 52 |HI_SetFr|eq()...R|
|00000da0| 65 76 69 73 69 6f 6e 20 | 34 2e 33 20 20 31 39 39 |evision |4.3 199|
|00000db0| 37 2f 30 37 2f 31 35 20 | 30 30 3a 35 30 3a 34 30 |7/07/15 |00:50:40|
|00000dc0| 20 20 6c 63 73 0a 54 68 | 69 73 20 69 73 20 74 68 | lcs.Th|is is th|
|00000dd0| 65 20 73 65 63 6f 6e 64 | 20 62 75 67 66 69 78 20 |e second| bugfix |
|00000de0| 72 65 6c 65 61 73 65 20 | 6f 66 20 41 48 49 20 34 |release |of AHI 4|
|00000df0| 2e 0a 0a 52 65 76 69 73 | 69 6f 6e 20 34 2e 32 20 |...Revis|ion 4.2 |
|00000e00| 20 31 39 39 37 2f 30 35 | 2f 31 31 20 31 32 3a 33 | 1997/05|/11 12:3|
|00000e10| 38 3a 33 39 20 20 6c 63 | 73 0a 41 64 64 65 64 20 |8:39 lc|s.Added |
|00000e20| 6e 6f 74 65 20 61 62 6f | 75 74 20 75 6e 72 6f 6c |note abo|ut unrol|
|00000e30| 6c 69 6e 67 20 73 68 6f | 72 74 20 73 6f 75 6e 64 |ling sho|rt sound|
|00000e40| 73 2e 0a 0a 52 65 76 69 | 73 69 6f 6e 20 34 2e 31 |s...Revi|sion 4.1|
|00000e50| 20 20 31 39 39 37 2f 30 | 35 2f 30 34 20 31 35 3a | 1997/0|5/04 15:|
|00000e60| 35 32 3a 31 35 20 20 6c | 63 73 0a 49 6e 69 74 69 |52:15 l|cs.Initi|
|00000e70| 61 6c 20 72 65 76 69 73 | 69 6f 6e 2e 0a 0a 40 65 |al revis|ion...@e|
|00000e80| 6e 64 20 65 78 61 6d 70 | 6c 65 0a 0a 40 65 6e 64 |nd examp|le..@end|
|00000e90| 20 69 66 69 6e 66 6f 0a | 0a 40 63 20 50 61 72 74 | ifinfo.|.@c Part|
|00000ea0| 20 33 3a 20 54 69 74 6c | 65 70 61 67 65 20 61 6e | 3: Titl|epage an|
|00000eb0| 64 20 43 6f 70 79 72 69 | 67 68 74 0a 40 63 20 af |d Copyri|ght.@c .|
|00000ec0| af af af af af af af af | af af af af af af af af |........|........|
|00000ed0| af af af af af af af af | af af af af af af 0a 0a |........|........|
|00000ee0| 40 74 69 74 6c 65 70 61 | 67 65 0a 40 74 69 74 6c |@titlepa|ge.@titl|
|00000ef0| 65 20 41 48 49 0a 40 73 | 75 62 74 69 74 6c 65 20 |e AHI.@s|ubtitle |
|00000f00| 48 61 72 64 77 61 72 65 | 20 69 6e 64 65 70 65 6e |Hardware| indepen|
|00000f10| 64 65 6e 74 20 61 75 64 | 69 6f 20 66 6f 72 20 41 |dent aud|io for A|
|00000f20| 6d 69 67 61 0a 40 73 75 | 62 74 69 74 6c 65 20 41 |miga.@su|btitle A|
|00000f30| 48 49 20 44 65 76 65 6c | 6f 70 65 72 27 73 20 47 |HI Devel|oper's G|
|00000f40| 75 69 64 65 20 66 6f 72 | 20 41 48 49 20 72 65 6c |uide for| AHI rel|
|00000f50| 65 61 73 65 20 40 76 61 | 6c 75 65 7b 61 68 69 76 |ease @va|lue{ahiv|
|00000f60| 65 72 7d 0a 40 73 75 62 | 74 69 74 6c 65 20 44 6f |er}.@sub|title Do|
|00000f70| 63 75 6d 65 6e 74 20 76 | 65 72 73 69 6f 6e 20 40 |cument v|ersion @|
|00000f80| 76 61 6c 75 65 7b 64 6f | 63 76 65 72 7d 0a 40 61 |value{do|cver}.@a|
|00000f90| 75 74 68 6f 72 20 4d 61 | 72 74 69 6e 20 27 4c 65 |uthor Ma|rtin 'Le|
|00000fa0| 76 69 74 69 63 75 73 27 | 20 42 6c 6f 6d 0a 0a 40 |viticus'| Blom..@|
|00000fb0| 70 61 67 65 0a 0a 40 76 | 73 6b 69 70 20 30 70 74 |page..@v|skip 0pt|
|00000fc0| 20 70 6c 75 73 20 31 66 | 69 6c 6c 6c 0a 0a 43 6f | plus 1f|illl..Co|
|00000fd0| 70 79 72 69 67 68 74 20 | 40 63 6f 70 79 72 69 67 |pyright |@copyrig|
|00000fe0| 68 74 7b 7d 20 31 39 39 | 34 2d 31 39 39 39 20 4d |ht{} 199|4-1999 M|
|00000ff0| 61 72 74 69 6e 20 42 6c | 6f 6d 2e 20 0a 0a 50 65 |artin Bl|om. ..Pe|
|00001000| 72 6d 69 73 73 69 6f 6e | 20 69 73 20 67 72 61 6e |rmission| is gran|
|00001010| 74 65 64 20 74 6f 20 6d | 61 6b 65 20 61 6e 64 20 |ted to m|ake and |
|00001020| 64 69 73 74 72 69 62 75 | 74 65 20 76 65 72 62 61 |distribu|te verba|
|00001030| 74 69 6d 20 63 6f 70 69 | 65 73 20 6f 66 20 74 68 |tim copi|es of th|
|00001040| 69 73 20 6d 61 6e 75 61 | 6c 0a 70 72 6f 76 69 64 |is manua|l.provid|
|00001050| 65 64 20 74 68 65 20 63 | 6f 70 79 72 69 67 68 74 |ed the c|opyright|
|00001060| 20 6e 6f 74 69 63 65 20 | 61 6e 64 20 74 68 69 73 | notice |and this|
|00001070| 20 70 65 72 6d 69 73 73 | 69 6f 6e 20 6e 6f 74 69 | permiss|ion noti|
|00001080| 63 65 20 61 72 65 20 70 | 72 65 73 65 72 76 65 64 |ce are p|reserved|
|00001090| 20 6f 6e 0a 61 6c 6c 20 | 63 6f 70 69 65 73 2e 0a | on.all |copies..|
|000010a0| 0a 50 65 72 6d 69 73 73 | 69 6f 6e 20 69 73 20 67 |.Permiss|ion is g|
|000010b0| 72 61 6e 74 65 64 20 74 | 6f 20 63 6f 70 79 20 61 |ranted t|o copy a|
|000010c0| 6e 64 20 64 69 73 74 72 | 69 62 75 74 65 20 6d 6f |nd distr|ibute mo|
|000010d0| 64 69 66 69 65 64 20 76 | 65 72 73 69 6f 6e 73 20 |dified v|ersions |
|000010e0| 6f 66 20 74 68 69 73 0a | 6d 61 6e 75 61 6c 20 75 |of this.|manual u|
|000010f0| 6e 64 65 72 20 74 68 65 | 20 63 6f 6e 64 69 74 69 |nder the| conditi|
|00001100| 6f 6e 73 20 66 6f 72 20 | 76 65 72 62 61 74 69 6d |ons for |verbatim|
|00001110| 20 63 6f 70 79 69 6e 67 | 2c 20 70 72 6f 76 69 64 | copying|, provid|
|00001120| 65 64 20 61 6c 73 6f 20 | 74 68 61 74 20 74 68 65 |ed also |that the|
|00001130| 0a 73 65 63 74 69 6f 6e | 73 20 65 6e 74 69 74 6c |.section|s entitl|
|00001140| 65 64 20 60 60 44 69 73 | 74 72 69 62 75 74 69 6f |ed ``Dis|tributio|
|00001150| 6e 27 27 2c 20 60 60 47 | 50 4c 27 27 20 61 6e 64 |n'', ``G|PL'' and|
|00001160| 20 60 60 4c 47 50 4c 27 | 27 20 61 72 65 20 69 6e | ``LGPL'|' are in|
|00001170| 63 6c 75 64 65 64 0a 65 | 78 61 63 74 6c 79 20 61 |cluded.e|xactly a|
|00001180| 73 20 69 6e 20 74 68 65 | 20 6f 72 69 67 69 6e 61 |s in the| origina|
|00001190| 6c 2c 20 61 6e 64 20 70 | 72 6f 76 69 64 65 64 20 |l, and p|rovided |
|000011a0| 74 68 61 74 20 74 68 65 | 20 65 6e 74 69 72 65 20 |that the| entire |
|000011b0| 72 65 73 75 6c 74 69 6e | 67 0a 64 65 72 69 76 65 |resultin|g.derive|
|000011c0| 64 20 77 6f 72 6b 20 69 | 73 20 64 69 73 74 72 69 |d work i|s distri|
|000011d0| 62 75 74 65 64 20 75 6e | 64 65 72 20 74 68 65 20 |buted un|der the |
|000011e0| 74 65 72 6d 73 20 6f 66 | 20 61 20 70 65 72 6d 69 |terms of| a permi|
|000011f0| 73 73 69 6f 6e 20 6e 6f | 74 69 63 65 0a 69 64 65 |ssion no|tice.ide|
|00001200| 6e 74 69 63 61 6c 20 74 | 6f 20 74 68 69 73 20 6f |ntical t|o this o|
|00001210| 6e 65 2e 0a 0a 50 65 72 | 6d 69 73 73 69 6f 6e 20 |ne...Per|mission |
|00001220| 69 73 20 67 72 61 6e 74 | 65 64 20 74 6f 20 63 6f |is grant|ed to co|
|00001230| 70 79 20 61 6e 64 20 64 | 69 73 74 72 69 62 75 74 |py and d|istribut|
|00001240| 65 20 74 72 61 6e 73 6c | 61 74 69 6f 6e 73 20 6f |e transl|ations o|
|00001250| 66 20 74 68 69 73 20 6d | 61 6e 75 61 6c 0a 69 6e |f this m|anual.in|
|00001260| 74 6f 20 61 6e 6f 74 68 | 65 72 20 6c 61 6e 67 75 |to anoth|er langu|
|00001270| 61 67 65 2c 20 75 6e 64 | 65 72 20 74 68 65 20 61 |age, und|er the a|
|00001280| 62 6f 76 65 20 63 6f 6e | 64 69 74 69 6f 6e 73 20 |bove con|ditions |
|00001290| 66 6f 72 20 6d 6f 64 69 | 66 69 65 64 20 76 65 72 |for modi|fied ver|
|000012a0| 73 69 6f 6e 73 2c 0a 65 | 78 63 65 70 74 20 74 68 |sions,.e|xcept th|
|000012b0| 61 74 20 74 68 69 73 20 | 70 65 72 6d 69 73 73 69 |at this |permissi|
|000012c0| 6f 6e 20 6e 6f 74 69 63 | 65 20 6d 61 79 20 62 65 |on notic|e may be|
|000012d0| 20 73 74 61 74 65 64 20 | 69 6e 20 61 20 74 72 61 | stated |in a tra|
|000012e0| 6e 73 6c 61 74 69 6f 6e | 20 61 70 70 72 6f 76 65 |nslation| approve|
|000012f0| 64 0a 62 79 20 74 68 65 | 20 46 72 65 65 20 53 6f |d.by the| Free So|
|00001300| 66 74 77 61 72 65 20 46 | 6f 75 6e 64 61 74 69 6f |ftware F|oundatio|
|00001310| 6e 2e 0a 0a 40 73 63 7b | 54 68 69 73 20 70 75 62 |n...@sc{|This pub|
|00001320| 6c 69 63 61 74 69 6f 6e | 20 69 73 20 70 72 6f 76 |lication| is prov|
|00001330| 69 64 65 64 20 62 79 20 | 74 68 65 20 61 75 74 68 |ided by |the auth|
|00001340| 6f 72 20 60 60 61 73 20 | 69 73 27 27 20 61 6e 64 |or ``as |is'' and|
|00001350| 20 61 6e 79 20 65 78 70 | 72 65 73 73 20 6f 72 0a | any exp|ress or.|
|00001360| 69 6d 70 6c 69 65 64 20 | 77 61 72 72 61 6e 74 69 |implied |warranti|
|00001370| 65 73 2c 20 69 6e 63 6c | 75 64 69 6e 67 2c 20 62 |es, incl|uding, b|
|00001380| 75 74 20 6e 6f 74 20 6c | 69 6d 69 74 65 64 20 74 |ut not l|imited t|
|00001390| 6f 2c 20 74 68 65 20 69 | 6d 70 6c 69 65 64 20 77 |o, the i|mplied w|
|000013a0| 61 72 72 61 6e 74 69 65 | 73 0a 6f 66 20 6d 65 72 |arrantie|s.of mer|
|000013b0| 63 68 61 6e 74 61 62 69 | 6c 69 74 79 20 61 6e 64 |chantabi|lity and|
|000013c0| 20 66 69 74 6e 65 73 73 | 20 66 6f 72 20 61 20 70 | fitness| for a p|
|000013d0| 61 72 74 69 63 75 6c 61 | 72 20 70 75 72 70 6f 73 |articula|r purpos|
|000013e0| 65 20 61 72 65 20 64 69 | 73 63 6c 61 69 6d 65 64 |e are di|sclaimed|
|000013f0| 2e 20 20 49 6e 0a 6e 6f | 20 65 76 65 6e 74 20 73 |. In.no| event s|
|00001400| 68 61 6c 6c 20 74 68 65 | 20 61 75 74 68 6f 72 20 |hall the| author |
|00001410| 62 65 20 6c 69 61 62 6c | 65 20 66 6f 72 20 61 6e |be liabl|e for an|
|00001420| 79 20 64 69 72 65 63 74 | 2c 20 69 6e 64 69 72 65 |y direct|, indire|
|00001430| 63 74 2c 20 69 6e 63 69 | 64 65 6e 74 61 6c 2c 0a |ct, inci|dental,.|
|00001440| 73 70 65 63 69 61 6c 2c | 20 65 78 65 6d 70 6c 61 |special,| exempla|
|00001450| 72 79 2c 20 6f 72 20 63 | 6f 6e 73 65 71 75 65 6e |ry, or c|onsequen|
|00001460| 74 69 61 6c 20 64 61 6d | 61 67 65 73 20 28 69 6e |tial dam|ages (in|
|00001470| 63 6c 75 64 69 6e 67 2c | 20 62 75 74 20 6e 6f 74 |cluding,| but not|
|00001480| 20 6c 69 6d 69 74 65 64 | 0a 74 6f 2c 20 70 72 6f | limited|.to, pro|
|00001490| 63 75 72 65 6d 65 6e 74 | 20 6f 66 20 73 75 62 73 |curement| of subs|
|000014a0| 74 69 74 75 74 65 20 67 | 6f 6f 64 73 20 6f 72 20 |titute g|oods or |
|000014b0| 73 65 72 76 69 63 65 73 | 3b 20 6c 6f 73 73 20 6f |services|; loss o|
|000014c0| 66 20 75 73 65 2c 20 64 | 61 74 61 2c 20 6f 72 0a |f use, d|ata, or.|
|000014d0| 70 72 6f 66 69 74 73 3b | 20 6f 72 20 62 75 73 69 |profits;| or busi|
|000014e0| 6e 65 73 73 20 69 6e 74 | 65 72 72 75 70 74 69 6f |ness int|erruptio|
|000014f0| 6e 29 20 68 6f 77 65 76 | 65 72 20 63 61 75 73 65 |n) howev|er cause|
|00001500| 64 20 61 6e 64 20 6f 6e | 20 61 6e 79 20 74 68 65 |d and on| any the|
|00001510| 6f 72 79 20 6f 66 0a 6c | 69 61 62 69 6c 69 74 79 |ory of.l|iability|
|00001520| 2c 20 77 68 65 74 68 65 | 72 20 69 6e 20 63 6f 6e |, whethe|r in con|
|00001530| 74 72 61 63 74 2c 20 73 | 74 72 69 63 74 20 6c 69 |tract, s|trict li|
|00001540| 61 62 69 6c 69 74 79 2c | 20 6f 72 20 74 6f 72 74 |ability,| or tort|
|00001550| 20 28 69 6e 63 6c 75 64 | 69 6e 67 0a 6e 65 67 6c | (includ|ing.negl|
|00001560| 69 67 65 6e 63 65 20 6f | 72 20 6f 74 68 65 72 77 |igence o|r otherw|
|00001570| 69 73 65 29 20 61 72 69 | 73 69 6e 67 20 69 6e 20 |ise) ari|sing in |
|00001580| 61 6e 79 20 77 61 79 20 | 6f 75 74 20 6f 66 20 74 |any way |out of t|
|00001590| 68 65 20 75 73 65 20 6f | 66 20 74 68 69 73 0a 70 |he use o|f this.p|
|000015a0| 75 62 6c 69 63 61 74 69 | 6f 6e 2c 20 65 76 65 6e |ublicati|on, even|
|000015b0| 20 69 66 20 61 64 76 69 | 73 65 64 20 6f 66 20 74 | if advi|sed of t|
|000015c0| 68 65 20 70 6f 73 73 69 | 62 69 6c 69 74 79 20 6f |he possi|bility o|
|000015d0| 66 20 73 75 63 68 20 64 | 61 6d 61 67 65 2e 7d 0a |f such d|amage.}.|
|000015e0| 0a 40 65 6e 64 20 74 69 | 74 6c 65 70 61 67 65 0a |.@end ti|tlepage.|
|000015f0| 0a 0a 40 63 20 50 61 72 | 74 20 34 3a 20 60 54 6f |..@c Par|t 4: `To|
|00001600| 70 27 20 4e 6f 64 65 20 | 61 6e 64 20 4d 61 73 74 |p' Node |and Mast|
|00001610| 65 72 20 4d 65 6e 75 0a | 40 63 20 af af af af af |er Menu.|@c .....|
|00001620| af af af af af af af af | af af af af af af af af |........|........|
|00001630| af af af af af af af af | af af af af af 0a 0a 40 |........|.......@|
|00001640| 6e 6f 64 65 20 20 20 20 | 54 6f 70 2c 20 4f 76 65 |node |Top, Ove|
|00001650| 72 76 69 65 77 2c 20 28 | 64 69 72 29 2c 20 28 64 |rview, (|dir), (d|
|00001660| 69 72 29 0a 0a 40 69 66 | 69 6e 66 6f 0a 0a 40 6d |ir)..@if|info..@m|
|00001670| 61 6a 6f 72 68 65 61 64 | 69 6e 67 20 40 73 63 7b |ajorhead|ing @sc{|
|00001680| 41 68 69 7d 20 44 65 76 | 65 6c 6f 70 65 72 27 73 |Ahi} Dev|eloper's|
|00001690| 20 47 75 69 64 65 0a 0a | 46 6f 72 20 40 73 63 7b | Guide..|For @sc{|
|000016a0| 41 68 69 7d 20 72 65 6c | 65 61 73 65 20 40 76 61 |Ahi} rel|ease @va|
|000016b0| 6c 75 65 7b 61 68 69 76 | 65 72 7d 2e 20 44 6f 63 |lue{ahiv|er}. Doc|
|000016c0| 75 6d 65 6e 74 20 76 65 | 72 73 69 6f 6e 20 40 76 |ument ve|rsion @v|
|000016d0| 61 6c 75 65 7b 64 6f 63 | 76 65 72 7d 2e 0a 0a 43 |alue{doc|ver}...C|
|000016e0| 6f 70 79 72 69 67 68 74 | 20 40 63 6f 70 79 72 69 |opyright| @copyri|
|000016f0| 67 68 74 7b 7d 20 31 39 | 39 34 2d 31 39 39 39 20 |ght{} 19|94-1999 |
|00001700| 4d 61 72 74 69 6e 20 42 | 6c 6f 6d 0a 0a 54 68 65 |Martin B|lom..The|
|00001710| 20 6c 61 74 65 73 74 20 | 72 65 6c 65 61 73 65 20 | latest |release |
|00001720| 6f 66 20 40 73 63 7b 41 | 68 69 7d 20 63 61 6e 20 |of @sc{A|hi} can |
|00001730| 61 6c 77 61 79 73 20 62 | 65 20 66 6f 75 6e 64 20 |always b|e found |
|00001740| 61 74 0a 40 75 72 6c 7b | 68 74 74 70 3a 2f 2f 77 |at.@url{|http://w|
|00001750| 77 77 2e 6c 79 73 61 74 | 6f 72 2e 6c 69 75 2e 73 |ww.lysat|or.liu.s|
|00001760| 65 2f 7e 6c 63 73 2f 61 | 68 69 2e 68 74 6d 6c 7d |e/~lcs/a|hi.html}|
|00001770| 2e 20 0a 0a 40 6d 65 6e | 75 0a 2a 20 4f 76 65 72 |. ..@men|u.* Over|
|00001780| 76 69 65 77 3a 3a 20 20 | 20 20 20 20 20 20 20 20 |view:: | |
|00001790| 20 20 20 20 20 20 20 20 | 20 20 42 72 69 65 66 20 | | Brief |
|000017a0| 69 6e 74 72 6f 64 75 63 | 74 69 6f 6e 0a 2a 20 44 |introduc|tion.* D|
|000017b0| 69 73 74 72 69 62 75 74 | 69 6f 6e 3a 3a 20 20 20 |istribut|ion:: |
|000017c0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 57 68 61 | | Wha|
|000017d0| 74 20 79 6f 75 20 61 72 | 65 20 61 6c 6c 6f 77 65 |t you ar|e allowe|
|000017e0| 64 20 74 6f 20 64 6f 20 | 61 6e 64 20 6e 6f 74 0a |d to do |and not.|
|000017f0| 2a 20 54 68 65 20 41 75 | 74 68 6f 72 3a 3a 20 20 |* The Au|thor:: |
|00001800| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00001810| 57 68 6f 20 64 65 73 69 | 67 6e 65 64 20 69 74 3f |Who desi|gned it?|
|00001820| 0a 0a 2a 20 44 65 66 69 | 6e 69 74 69 6f 6e 73 3a |..* Defi|nitions:|
|00001830| 3a 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |: | |
|00001840| 20 20 54 65 72 6d 73 20 | 75 73 65 64 20 69 6e 20 | Terms |used in |
|00001850| 74 68 69 73 20 64 6f 63 | 75 6d 65 6e 74 0a 2a 20 |this doc|ument.* |
|00001860| 46 75 6e 63 74 69 6f 6e | 20 49 6e 74 65 72 66 61 |Function| Interfa|
|00001870| 63 65 3a 3a 20 20 20 20 | 20 20 20 20 20 20 54 68 |ce:: | Th|
|00001880| 65 20 6c 6f 77 2d 6c 65 | 76 65 6c 20 41 50 49 0a |e low-le|vel API.|
|00001890| 2a 20 44 65 76 69 63 65 | 20 49 6e 74 65 72 66 61 |* Device| Interfa|
|000018a0| 63 65 3a 3a 20 20 20 20 | 20 20 20 20 20 20 20 20 |ce:: | |
|000018b0| 54 68 65 20 68 69 67 68 | 2d 6c 65 76 65 6c 20 41 |The high|-level A|
|000018c0| 50 49 0a 2a 20 44 61 74 | 61 20 54 79 70 65 73 20 |PI.* Dat|a Types |
|000018d0| 41 6e 64 20 53 74 72 75 | 63 74 75 72 65 73 3a 3a |And Stru|ctures::|
|000018e0| 20 20 20 54 68 65 20 73 | 74 72 75 63 74 75 72 65 | The s|tructure|
|000018f0| 73 20 65 78 70 6c 61 69 | 6e 65 64 0a 0a 2a 20 47 |s explai|ned..* G|
|00001900| 50 4c 3a 3a 20 20 20 20 | 20 20 20 20 20 20 20 20 |PL:: | |
|00001910| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 54 68 65 | | The|
|00001920| 20 6d 61 69 6e 20 6c 69 | 63 65 6e 73 65 0a 2a 20 | main li|cense.* |
|00001930| 4c 47 50 4c 3a 3a 20 20 | 20 20 20 20 20 20 20 20 |LGPL:: | |
|00001940| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 54 68 | | Th|
|00001950| 65 20 40 63 6f 64 65 7b | 61 68 69 2e 64 65 76 69 |e @code{|ahi.devi|
|00001960| 63 65 7d 20 6c 69 63 65 | 6e 73 65 0a 0a 2a 20 43 |ce} lice|nse..* C|
|00001970| 6f 6e 63 65 70 74 20 49 | 6e 64 65 78 3a 3a 20 20 |oncept I|ndex:: |
|00001980| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 43 6f 6e | | Con|
|00001990| 63 65 70 74 20 49 6e 64 | 65 78 0a 2a 20 44 61 74 |cept Ind|ex.* Dat|
|000019a0| 61 20 54 79 70 65 20 49 | 6e 64 65 78 3a 3a 20 20 |a Type I|ndex:: |
|000019b0| 20 20 20 20 20 20 20 20 | 20 20 20 44 61 74 61 20 | | Data |
|000019c0| 54 79 70 65 20 49 6e 64 | 65 78 0a 2a 20 46 75 6e |Type Ind|ex.* Fun|
|000019d0| 63 74 69 6f 6e 20 49 6e | 64 65 78 3a 3a 20 20 20 |ction In|dex:: |
|000019e0| 20 20 20 20 20 20 20 20 | 20 20 20 46 75 6e 63 74 | | Funct|
|000019f0| 69 6f 6e 20 49 6e 64 65 | 78 0a 2a 20 56 61 72 69 |ion Inde|x.* Vari|
|00001a00| 61 62 6c 65 20 49 6e 64 | 65 78 3a 3a 20 20 20 20 |able Ind|ex:: |
|00001a10| 20 20 20 20 20 20 20 20 | 20 20 56 61 72 69 61 62 | | Variab|
|00001a20| 6c 65 20 49 6e 64 65 78 | 0a 0a 40 64 65 74 61 69 |le Index|..@detai|
|00001a30| 6c 6d 65 6e 75 0a 20 2d | 2d 2d 20 54 68 65 20 44 |lmenu. -|-- The D|
|00001a40| 65 74 61 69 6c 65 64 20 | 4e 6f 64 65 20 4c 69 73 |etailed |Node Lis|
|00001a50| 74 69 6e 67 20 2d 2d 2d | 0a 0a 46 75 6e 63 74 69 |ting ---|..Functi|
|00001a60| 6f 6e 20 49 6e 74 65 72 | 66 61 63 65 0a 0a 2a 20 |on Inter|face..* |
|00001a70| 47 75 69 64 65 6c 69 6e | 65 73 3a 3a 20 20 20 20 |Guidelin|es:: |
|00001a80| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 0a 2a | | .*|
|00001a90| 20 4f 70 65 6e 69 6e 67 | 20 41 6e 64 20 43 6c 6f | Opening| And Clo|
|00001aa0| 73 69 6e 67 20 61 68 69 | 2e 64 65 76 69 63 65 20 |sing ahi|.device |
|00001ab0| 46 6f 72 20 4c 6f 77 2d | 6c 65 76 65 6c 20 41 63 |For Low-|level Ac|
|00001ac0| 63 65 73 73 3a 3a 20 20 | 0a 2a 20 4f 62 74 61 69 |cess:: |.* Obtai|
|00001ad0| 6e 69 6e 67 20 54 68 65 | 20 48 61 72 64 77 61 72 |ning The| Hardwar|
|00001ae0| 65 3a 3a 20 20 20 20 20 | 20 0a 2a 20 44 65 63 6c |e:: | .* Decl|
|00001af0| 61 72 69 6e 67 20 53 6f | 75 6e 64 73 3a 3a 20 20 |aring So|unds:: |
|00001b00| 20 20 20 20 20 20 20 20 | 20 20 0a 2a 20 4d 61 6b | | .* Mak|
|00001b10| 69 6e 67 20 4e 6f 69 73 | 65 3a 3a 20 20 20 20 20 |ing Nois|e:: |
|00001b20| 20 20 20 20 20 20 20 20 | 20 20 20 0a 0a 44 65 76 | | ..Dev|
|00001b30| 69 63 65 20 49 6e 74 65 | 72 66 61 63 65 0a 0a 2a |ice Inte|rface..*|
|00001b40| 20 4f 70 65 6e 69 6e 67 | 20 41 6e 64 20 43 6c 6f | Opening| And Clo|
|00001b50| 73 69 6e 67 20 61 68 69 | 2e 64 65 76 69 63 65 20 |sing ahi|.device |
|00001b60| 46 6f 72 20 48 69 67 68 | 2d 6c 65 76 65 6c 20 41 |For High|-level A|
|00001b70| 63 63 65 73 73 3a 3a 20 | 20 0a 2a 20 52 65 61 64 |ccess:: | .* Read|
|00001b80| 69 6e 67 20 46 72 6f 6d | 20 54 68 65 20 44 65 76 |ing From| The Dev|
|00001b90| 69 63 65 3a 3a 20 20 20 | 20 20 0a 2a 20 57 72 69 |ice:: | .* Wri|
|00001ba0| 74 69 6e 67 20 54 6f 20 | 54 68 65 20 44 65 76 69 |ting To |The Devi|
|00001bb0| 63 65 3a 3a 20 20 20 20 | 20 20 20 0a 0a 44 61 74 |ce:: | ..Dat|
|00001bc0| 61 20 54 79 70 65 73 20 | 41 6e 64 20 53 74 72 75 |a Types |And Stru|
|00001bd0| 63 74 75 72 65 73 0a 0a | 2a 20 44 61 74 61 20 54 |ctures..|* Data T|
|00001be0| 79 70 65 73 3a 3a 20 20 | 20 20 20 20 20 20 20 20 |ypes:: | |
|00001bf0| 20 20 20 20 20 20 20 20 | 0a 2a 20 53 74 72 75 63 | |.* Struc|
|00001c00| 74 75 72 65 73 3a 3a 20 | 20 20 20 20 20 20 20 20 |tures:: | |
|00001c10| 20 20 20 20 20 20 20 20 | 20 0a 0a 40 65 6e 64 20 | | ..@end |
|00001c20| 64 65 74 61 69 6c 6d 65 | 6e 75 0a 40 65 6e 64 20 |detailme|nu.@end |
|00001c30| 6d 65 6e 75 0a 0a 40 65 | 6e 64 20 69 66 69 6e 66 |menu..@e|nd ifinf|
|00001c40| 6f 0a 0a 0a 40 63 20 50 | 61 72 74 20 35 3a 20 20 |o...@c P|art 5: |
|00001c50| 54 68 65 20 42 6f 64 79 | 20 6f 66 20 74 68 65 20 |The Body| of the |
|00001c60| 44 6f 63 75 6d 65 6e 74 | 0a 40 63 20 af af af af |Document|.@c ....|
|00001c70| af af af af af af af af | af af af af af af af af |........|........|
|00001c80| af af af af af af af af | af af af af af 0a 0a 0a |........|........|
|00001c90| 40 63 20 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |@c *****|********|
|00001ca0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001cb0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001cc0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001cd0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 0a 40 63 20 2a 2a |********|**.@c **|
|00001ce0| 2a 2a 20 4f 76 65 72 76 | 69 65 77 20 2a 2a 2a 2a |** Overv|iew ****|
|00001cf0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d00| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d10| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d20| 2a 2a 2a 2a 2a 0a 40 63 | 20 2a 2a 2a 2a 2a 2a 2a |*****.@c| *******|
|00001d30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d40| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d50| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d60| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d70| 0a 0a 40 6e 6f 64 65 20 | 4f 76 65 72 76 69 65 77 |..@node |Overview|
|00001d80| 2c 20 44 69 73 74 72 69 | 62 75 74 69 6f 6e 2c 20 |, Distri|bution, |
|00001d90| 54 6f 70 2c 20 54 6f 70 | 0a 40 63 6f 6d 6d 65 6e |Top, Top|.@commen|
|00001da0| 74 20 20 6e 6f 64 65 2d | 6e 61 6d 65 2c 20 20 6e |t node-|name, n|
|00001db0| 65 78 74 2c 20 20 70 72 | 65 76 69 6f 75 73 2c 20 |ext, pr|evious, |
|00001dc0| 20 75 70 0a 40 63 68 61 | 70 74 65 72 20 4f 76 65 | up.@cha|pter Ove|
|00001dd0| 72 76 69 65 77 0a 0a 40 | 63 69 6e 64 65 78 20 4f |rview..@|cindex O|
|00001de0| 76 65 72 76 69 65 77 0a | 0a 54 68 69 73 20 64 6f |verview.|.This do|
|00001df0| 63 75 6d 65 6e 74 20 77 | 61 73 20 77 72 69 74 74 |cument w|as writt|
|00001e00| 65 6e 20 69 6e 20 6f 72 | 64 65 72 20 74 6f 20 6d |en in or|der to m|
|00001e10| 61 6b 65 20 69 74 20 65 | 61 73 69 65 72 20 66 6f |ake it e|asier fo|
|00001e20| 72 20 64 65 76 65 6c 6f | 70 65 72 73 20 74 6f 0a |r develo|pers to.|
|00001e30| 75 6e 64 65 72 73 74 61 | 6e 64 20 61 6e 64 20 75 |understa|nd and u|
|00001e40| 73 65 20 40 73 63 7b 41 | 68 69 7d 20 69 6e 20 74 |se @sc{A|hi} in t|
|00001e50| 68 65 69 72 20 6f 77 6e | 20 70 72 6f 64 75 63 74 |heir own| product|
|00001e60| 69 6f 6e 73 2c 20 61 6e | 64 20 77 72 69 74 65 20 |ions, an|d write |
|00001e70| 53 6f 66 74 77 61 72 65 | 0a 54 68 61 74 20 57 6f |Software|.That Wo|
|00001e80| 72 6b 73 28 54 4d 29 2e | 0a 0a 40 63 6f 64 65 7b |rks(TM).|..@code{|
|00001e90| 61 68 69 2e 64 65 76 69 | 63 65 7d 20 68 61 73 20 |ahi.devi|ce} has |
|00001ea0| 74 77 6f 20 64 69 66 66 | 65 72 65 6e 74 20 41 50 |two diff|erent AP|
|00001eb0| 49 27 73 3b 20 6f 6e 65 | 20 6c 69 62 72 61 72 79 |I's; one| library|
|00001ec0| 2d 6c 69 6b 65 20 66 75 | 6e 63 74 69 6f 6e 0a 69 |-like fu|nction.i|
|00001ed0| 6e 74 65 72 66 61 63 65 | 20 28 6c 6f 77 2d 6c 65 |nterface| (low-le|
|00001ee0| 76 65 6c 29 2c 20 61 6e | 64 20 6f 6e 65 20 60 60 |vel), an|d one ``|
|00001ef0| 6e 6f 72 6d 61 6c 27 27 | 20 64 65 76 69 63 65 20 |normal''| device |
|00001f00| 69 6e 74 65 72 66 61 63 | 65 20 28 68 69 67 68 2d |interfac|e (high-|
|00001f10| 6c 65 76 65 6c 29 2e 0a | 45 61 63 68 20 6f 66 20 |level)..|Each of |
|00001f20| 74 68 65 6d 20 73 65 72 | 76 65 73 20 64 69 66 66 |them ser|ves diff|
|00001f30| 65 72 65 6e 74 20 70 75 | 72 70 6f 73 65 73 2e 20 |erent pu|rposes. |
|00001f40| 20 54 68 65 20 6c 6f 77 | 2d 6c 65 76 65 6c 20 69 | The low|-level i|
|00001f50| 6e 74 65 72 66 61 63 65 | 20 69 73 0a 74 61 72 67 |nterface| is.targ|
|00001f60| 65 74 69 6e 67 20 6d 75 | 73 69 63 20 70 6c 61 79 |eting mu|sic play|
|00001f70| 65 72 73 2c 20 67 61 6d | 65 73 20 61 6e 64 20 72 |ers, gam|es and r|
|00001f80| 65 61 6c 2d 74 69 6d 65 | 20 61 70 70 6c 69 63 61 |eal-time| applica|
|00001f90| 74 69 6f 6e 73 2e 20 54 | 68 65 20 68 69 67 68 2d |tions. T|he high-|
|00001fa0| 6c 65 76 65 6c 0a 69 6e | 74 65 72 66 61 63 65 20 |level.in|terface |
|00001fb0| 69 73 20 74 61 72 67 65 | 74 69 6e 67 20 61 70 70 |is targe|ting app|
|00001fc0| 6c 69 63 61 74 69 6f 6e | 73 20 74 68 61 74 20 6a |lication|s that j|
|00001fd0| 75 73 74 20 77 61 6e 74 | 20 74 6f 20 68 61 76 65 |ust want| to have|
|00001fe0| 20 61 20 73 61 6d 70 6c | 65 20 70 6c 61 79 65 64 | a sampl|e played|
|00001ff0| 2c 0a 70 6c 61 79 20 61 | 75 64 69 6f 20 73 74 72 |,.play a|udio str|
|00002000| 65 61 6d 73 20 6f 72 20 | 72 65 63 6f 72 64 20 73 |eams or |record s|
|00002010| 61 6d 70 6c 65 73 20 61 | 73 20 65 61 73 69 6c 79 |amples a|s easily|
|00002020| 20 61 73 20 70 6f 73 73 | 69 62 6c 65 2e 0a 0a 41 | as poss|ible...A|
|00002030| 73 20 77 69 74 68 20 65 | 76 65 72 79 74 68 69 6e |s with e|verythin|
|00002040| 67 20 65 6c 73 65 2c 20 | 69 74 20 69 73 20 69 6d |g else, |it is im|
|00002050| 70 6f 72 74 61 6e 74 20 | 74 68 61 74 20 79 6f 75 |portant |that you|
|00002060| 20 63 68 6f 73 65 20 74 | 68 65 20 72 69 67 68 74 | chose t|he right|
|00002070| 20 74 6f 6f 6c 20 66 6f | 72 0a 74 68 65 20 6a 6f | tool fo|r.the jo|
|00002080| 62 2d 2d 2d 79 6f 75 27 | 6c 6c 20 6f 6e 6c 79 20 |b---you'|ll only |
|00002090| 67 65 74 20 66 72 75 73 | 74 72 61 74 65 64 20 6f |get frus|trated o|
|000020a0| 74 68 65 72 77 69 73 65 | 2e 0a 0a 4e 6f 74 20 65 |therwise|...Not e|
|000020b0| 76 65 72 79 74 68 69 6e | 67 20 61 62 6f 75 74 20 |verythin|g about |
|000020c0| 40 73 63 7b 41 68 69 7d | 20 69 73 20 64 6f 63 75 |@sc{Ahi}| is docu|
|000020d0| 6d 65 6e 74 65 64 20 68 | 65 72 65 3b 20 66 6f 72 |mented h|ere; for|
|000020e0| 20 6d 6f 72 65 20 69 6e | 66 6f 72 6d 61 74 69 6f | more in|formatio|
|000020f0| 6e 2c 20 73 65 65 0a 40 | 63 69 74 65 7b 40 73 63 |n, see.@|cite{@sc|
|00002100| 7b 41 68 69 7d 20 55 73 | 65 72 27 73 20 47 75 69 |{Ahi} Us|er's Gui|
|00002110| 64 65 7d 20 61 6e 64 20 | 74 68 65 20 61 75 74 6f |de} and |the auto|
|00002120| 64 6f 63 73 2e 0a 0a 0a | 40 63 20 2a 2a 2a 2a 2a |docs....|@c *****|
|00002130| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002140| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002150| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002160| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002170| 2a 2a 0a 40 63 20 2a 2a | 2a 2a 20 44 69 73 74 72 |**.@c **|** Distr|
|00002180| 69 62 75 74 69 6f 6e 20 | 2a 2a 2a 2a 2a 2a 2a 2a |ibution |********|
|00002190| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000021a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000021b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 0a 40 63 |********|*****.@c|
|000021c0| 20 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | *******|********|
|000021d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000021e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000021f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002200| 2a 2a 2a 2a 2a 2a 2a 2a | 0a 0a 40 6e 6f 64 65 20 |********|..@node |
|00002210| 20 44 69 73 74 72 69 62 | 75 74 69 6f 6e 2c 20 54 | Distrib|ution, T|
|00002220| 68 65 20 41 75 74 68 6f | 72 2c 20 4f 76 65 72 76 |he Autho|r, Overv|
|00002230| 69 65 77 2c 20 54 6f 70 | 0a 40 63 6f 6d 6d 65 6e |iew, Top|.@commen|
|00002240| 74 20 20 6e 6f 64 65 2d | 6e 61 6d 65 2c 20 20 6e |t node-|name, n|
|00002250| 65 78 74 2c 20 20 70 72 | 65 76 69 6f 75 73 2c 20 |ext, pr|evious, |
|00002260| 20 75 70 0a 40 63 68 61 | 70 74 65 72 20 44 69 73 | up.@cha|pter Dis|
|00002270| 74 72 69 62 75 74 69 6f | 6e 0a 0a 40 63 69 6e 64 |tributio|n..@cind|
|00002280| 65 78 20 44 69 73 74 72 | 69 62 75 74 69 6f 6e 0a |ex Distr|ibution.|
|00002290| 40 63 69 6e 64 65 78 20 | 44 69 73 63 6c 61 69 6d |@cindex |Disclaim|
|000022a0| 65 72 0a 40 63 69 6e 64 | 65 78 20 4c 69 63 65 6e |er.@cind|ex Licen|
|000022b0| 73 65 0a 40 63 69 6e 64 | 65 78 20 4c 65 67 61 6c |se.@cind|ex Legal|
|000022c0| 20 6e 6f 6e 73 65 6e 73 | 65 0a 40 63 69 6e 64 65 | nonsens|e.@cinde|
|000022d0| 78 20 53 6f 66 74 77 61 | 72 65 20 6c 69 63 65 6e |x Softwa|re licen|
|000022e0| 73 65 0a 40 63 69 6e 64 | 65 78 20 43 6f 70 79 72 |se.@cind|ex Copyr|
|000022f0| 69 67 68 74 0a 0a 43 6f | 70 79 72 69 67 68 74 20 |ight..Co|pyright |
|00002300| 40 63 6f 70 79 72 69 67 | 68 74 7b 7d 20 31 39 39 |@copyrig|ht{} 199|
|00002310| 34 2d 31 39 39 39 20 4d | 61 72 74 69 6e 20 42 6c |4-1999 M|artin Bl|
|00002320| 6f 6d 0a 0a 40 73 63 7b | 41 68 69 7d 20 69 73 20 |om..@sc{|Ahi} is |
|00002330| 61 76 61 69 6c 61 62 6c | 65 20 75 6e 64 65 72 20 |availabl|e under |
|00002340| 61 20 64 75 61 6c 20 6c | 69 63 65 6e 73 65 2e 20 |a dual l|icense. |
|00002350| 54 68 65 20 64 65 76 69 | 63 65 20 69 74 73 65 6c |The devi|ce itsel|
|00002360| 66 20 69 73 20 75 6e 64 | 65 72 0a 74 68 65 20 60 |f is und|er.the `|
|00002370| 60 47 4e 55 20 4c 69 62 | 72 61 72 79 20 47 65 6e |`GNU Lib|rary Gen|
|00002380| 65 72 61 6c 20 50 75 62 | 6c 69 63 20 4c 69 63 65 |eral Pub|lic Lice|
|00002390| 6e 73 65 27 27 20 28 40 | 70 78 72 65 66 7b 4c 47 |nse'' (@|pxref{LG|
|000023a0| 50 4c 7d 29 2c 20 77 68 | 69 6c 65 20 74 68 65 0a |PL}), wh|ile the.|
|000023b0| 75 74 69 6c 69 74 79 20 | 70 72 6f 67 72 61 6d 73 |utility |programs|
|000023c0| 20 61 6e 64 20 74 68 65 | 20 40 63 6f 64 65 7b 41 | and the| @code{A|
|000023d0| 55 44 49 4f 3a 7d 20 64 | 65 76 69 63 65 20 69 73 |UDIO:} d|evice is|
|000023e0| 20 63 6f 76 65 72 65 64 | 20 62 79 20 74 68 65 20 | covered| by the |
|000023f0| 60 60 47 4e 55 20 47 65 | 6e 65 72 61 6c 0a 50 75 |``GNU Ge|neral.Pu|
|00002400| 62 6c 69 63 20 4c 69 63 | 65 6e 73 65 27 27 20 28 |blic Lic|ense'' (|
|00002410| 40 70 78 72 65 66 7b 47 | 50 4c 7d 29 2e 0a 0a 49 |@pxref{G|PL})...I|
|00002420| 66 20 79 6f 75 20 75 73 | 65 20 74 68 69 73 20 73 |f you us|e this s|
|00002430| 6f 66 74 77 61 72 65 20 | 69 6e 20 61 20 63 6f 6d |oftware |in a com|
|00002440| 6d 65 72 63 69 61 6c 20 | 6f 72 20 73 68 61 72 65 |mercial |or share|
|00002450| 77 61 72 65 20 70 72 6f | 64 75 63 74 2c 20 70 6c |ware pro|duct, pl|
|00002460| 65 61 73 65 0a 63 6f 6e | 73 69 64 65 72 20 67 69 |ease.con|sider gi|
|00002470| 76 69 6e 67 20 74 68 65 | 20 61 75 74 68 6f 72 20 |ving the| author |
|00002480| 28 40 70 78 72 65 66 7b | 54 68 65 20 41 75 74 68 |(@pxref{|The Auth|
|00002490| 6f 72 7d 29 2d 2d 2d 61 | 6e 64 20 70 72 65 66 65 |or})---a|nd prefe|
|000024a0| 72 61 62 6c 79 20 65 61 | 63 68 20 6f 6e 65 0a 6f |rably ea|ch one.o|
|000024b0| 66 20 74 68 65 20 63 6f | 6e 74 72 69 62 75 74 6f |f the co|ntributo|
|000024c0| 72 73 20 74 6f 6f 20 28 | 73 65 65 20 40 63 69 74 |rs too (|see @cit|
|000024d0| 65 7b 40 73 63 7b 41 68 | 69 7d 20 55 73 65 72 27 |e{@sc{Ah|i} User'|
|000024e0| 73 20 47 75 69 64 65 7d | 29 2d 2d 2d 61 6e 20 6f |s Guide}|)---an o|
|000024f0| 72 69 67 69 6e 61 6c 20 | 6f 72 0a 72 65 67 69 73 |riginal |or.regis|
|00002500| 74 65 72 65 64 20 63 6f | 70 79 20 6f 72 20 73 61 |tered co|py or sa|
|00002510| 6d 70 6c 65 20 6f 66 20 | 79 6f 75 72 20 77 6f 72 |mple of |your wor|
|00002520| 6b 2e 20 20 53 68 6f 75 | 6c 64 20 79 6f 75 20 77 |k. Shou|ld you w|
|00002530| 61 6e 74 20 74 6f 20 64 | 69 73 74 72 69 62 75 74 |ant to d|istribut|
|00002540| 65 20 74 68 65 0a 40 73 | 63 7b 41 68 69 7d 20 73 |e the.@s|c{Ahi} s|
|00002550| 6f 66 74 77 61 72 65 20 | 77 69 74 68 20 79 6f 75 |oftware |with you|
|00002560| 72 20 6f 77 6e 20 70 72 | 6f 64 75 63 74 2c 20 74 |r own pr|oduct, t|
|00002570| 68 65 72 65 20 69 73 20 | 72 65 61 6c 6c 79 20 6e |here is |really n|
|00002580| 6f 74 68 69 6e 67 20 74 | 6f 0a 63 6f 6e 73 69 64 |othing t|o.consid|
|00002590| 65 72 2c 20 72 69 67 68 | 74 3f 0a 0a 0a 40 63 20 |er, righ|t?...@c |
|000025a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000025b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000025c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000025d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000025e0| 2a 2a 2a 2a 2a 2a 2a 0a | 40 63 20 2a 2a 2a 2a 20 |*******.|@c **** |
|000025f0| 54 68 65 20 41 75 74 68 | 6f 72 20 2a 2a 2a 2a 2a |The Auth|or *****|
|00002600| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002610| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002620| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002630| 2a 2a 0a 40 63 20 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |**.@c **|********|
|00002640| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002650| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002660| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002670| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 0a 0a 40 |********|*****..@|
|00002680| 6e 6f 64 65 20 20 54 68 | 65 20 41 75 74 68 6f 72 |node Th|e Author|
|00002690| 2c 20 44 65 66 69 6e 69 | 74 69 6f 6e 73 2c 20 44 |, Defini|tions, D|
|000026a0| 69 73 74 72 69 62 75 74 | 69 6f 6e 2c 20 54 6f 70 |istribut|ion, Top|
|000026b0| 0a 40 63 6f 6d 6d 65 6e | 74 20 20 6e 6f 64 65 2d |.@commen|t node-|
|000026c0| 6e 61 6d 65 2c 20 20 6e | 65 78 74 2c 20 20 70 72 |name, n|ext, pr|
|000026d0| 65 76 69 6f 75 73 2c 20 | 20 75 70 0a 40 63 68 61 |evious, | up.@cha|
|000026e0| 70 74 65 72 20 54 68 65 | 20 41 75 74 68 6f 72 0a |pter The| Author.|
|000026f0| 0a 40 63 69 6e 64 65 78 | 20 54 68 65 20 41 75 74 |.@cindex| The Aut|
|00002700| 68 6f 72 0a 40 63 69 6e | 64 65 78 20 41 75 74 68 |hor.@cin|dex Auth|
|00002710| 6f 72 20 6f 66 20 40 73 | 63 7b 41 68 69 7d 0a 0a |or of @s|c{Ahi}..|
|00002720| 54 68 65 20 61 75 74 68 | 6f 72 20 63 61 6e 20 62 |The auth|or can b|
|00002730| 65 20 72 65 61 63 68 65 | 64 20 61 74 20 74 68 65 |e reache|d at the|
|00002740| 20 66 6f 6c 6c 6f 77 69 | 6e 67 20 61 64 64 72 65 | followi|ng addre|
|00002750| 73 73 65 73 3a 0a 0a 40 | 74 61 62 6c 65 20 40 61 |sses:..@|table @a|
|00002760| 73 69 73 0a 0a 40 69 74 | 65 6d 20 45 6c 65 63 74 |sis..@it|em Elect|
|00002770| 72 6f 6e 69 63 20 6d 61 | 69 6c 0a 40 65 6d 61 69 |ronic ma|il.@emai|
|00002780| 6c 7b 6d 61 72 74 69 6e | 40 40 62 6c 6f 6d 2e 6f |l{martin|@@blom.o|
|00002790| 72 67 7d 0a 0a 40 69 74 | 65 6d 20 53 74 61 6e 64 |rg}..@it|em Stand|
|000027a0| 61 72 64 20 6d 61 69 6c | 0a 20 20 4d 61 72 74 69 |ard mail|. Marti|
|000027b0| 6e 20 42 6c 6f 6d 0a 40 | 2a 41 6c 73 e4 74 74 65 |n Blom.@|*Als.tte|
|000027c0| 72 73 67 61 74 61 6e 20 | 31 35 41 3a 32 34 0a 40 |rsgatan |15A:24.@|
|000027d0| 2a 53 45 2d 35 38 34 20 | 33 35 20 4c 69 6e 6b f6 |*SE-584 |35 Link.|
|000027e0| 70 69 6e 67 0a 40 2a 53 | 57 45 44 45 4e 0a 0a 40 |ping.@*S|WEDEN..@|
|000027f0| 69 74 65 6d 20 57 6f 72 | 6c 64 2d 57 69 64 65 20 |item Wor|ld-Wide |
|00002800| 57 65 62 0a 40 75 72 6c | 7b 68 74 74 70 3a 2f 2f |Web.@url|{http://|
|00002810| 6d 61 72 74 69 6e 2e 62 | 6c 6f 6d 2e 6f 72 67 7d |martin.b|lom.org}|
|00002820| 0a 0a 40 65 6e 64 20 74 | 61 62 6c 65 0a 0a 0a 40 |..@end t|able...@|
|00002830| 63 20 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |c ******|********|
|00002840| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002850| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002860| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002870| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 0a 40 63 20 2a 2a 2a |********|*.@c ***|
|00002880| 2a 20 44 65 66 69 6e 69 | 74 69 6f 6e 73 20 20 2a |* Defini|tions *|
|00002890| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000028a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000028b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000028c0| 2a 2a 2a 2a 0a 40 63 20 | 2a 2a 2a 2a 2a 2a 2a 2a |****.@c |********|
|000028d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000028e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000028f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002900| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 0a |********|*******.|
|00002910| 0a 40 6e 6f 64 65 20 44 | 65 66 69 6e 69 74 69 6f |.@node D|efinitio|
|00002920| 6e 73 2c 20 46 75 6e 63 | 74 69 6f 6e 20 49 6e 74 |ns, Func|tion Int|
|00002930| 65 72 66 61 63 65 2c 20 | 54 68 65 20 41 75 74 68 |erface, |The Auth|
|00002940| 6f 72 2c 20 54 6f 70 0a | 40 63 6f 6d 6d 65 6e 74 |or, Top.|@comment|
|00002950| 20 20 6e 6f 64 65 2d 6e | 61 6d 65 2c 20 20 6e 65 | node-n|ame, ne|
|00002960| 78 74 2c 20 20 70 72 65 | 76 69 6f 75 73 2c 20 20 |xt, pre|vious, |
|00002970| 75 70 0a 40 63 68 61 70 | 74 65 72 20 44 65 66 69 |up.@chap|ter Defi|
|00002980| 6e 69 74 69 6f 6e 73 0a | 0a 40 63 69 6e 64 65 78 |nitions.|.@cindex|
|00002990| 20 44 65 66 69 6e 69 74 | 69 6f 6e 73 0a 0a 46 6f | Definit|ions..Fo|
|000029a0| 6c 6c 6f 77 69 6e 67 20 | 61 72 65 20 73 6f 6d 65 |llowing |are some|
|000029b0| 20 67 65 6e 65 72 61 6c | 20 64 65 66 69 6e 69 74 | general| definit|
|000029c0| 69 6f 6e 73 20 6f 66 20 | 74 65 72 6d 73 20 74 68 |ions of |terms th|
|000029d0| 61 74 20 61 72 65 20 75 | 73 65 64 20 69 6e 20 74 |at are u|sed in t|
|000029e0| 68 69 73 0a 64 6f 63 75 | 6d 65 6e 74 2e 0a 0a 40 |his.docu|ment...@|
|000029f0| 74 61 62 6c 65 20 40 64 | 66 6e 0a 0a 40 63 69 6e |table @d|fn..@cin|
|00002a00| 64 65 78 20 53 61 6d 70 | 6c 65 0a 0a 40 69 74 65 |dex Samp|le..@ite|
|00002a10| 6d 20 53 61 6d 70 6c 65 | 0a 41 20 73 61 6d 70 6c |m Sample|.A sampl|
|00002a20| 65 20 69 73 20 6f 6e 65 | 20 62 69 6e 61 72 79 20 |e is one| binary |
|00002a30| 6e 75 6d 62 65 72 2c 20 | 72 65 70 72 65 73 65 6e |number, |represen|
|00002a40| 74 69 6e 67 20 74 68 65 | 20 61 6d 70 6c 69 74 75 |ting the| amplitu|
|00002a50| 64 65 20 61 74 20 61 20 | 66 69 78 65 64 20 70 6f |de at a |fixed po|
|00002a60| 69 6e 74 0a 69 6e 20 74 | 69 6d 65 2e 20 20 41 20 |int.in t|ime. A |
|00002a70| 73 61 6d 70 6c 65 20 69 | 73 20 6f 66 74 65 6e 20 |sample i|s often |
|00002a80| 73 74 6f 72 65 64 20 61 | 73 20 61 6e 20 38 20 62 |stored a|s an 8 b|
|00002a90| 69 74 20 73 69 67 6e 65 | 64 20 69 6e 74 65 67 65 |it signe|d intege|
|00002aa0| 72 2c 20 61 20 31 36 20 | 62 69 74 0a 73 69 67 6e |r, a 16 |bit.sign|
|00002ab0| 65 64 20 69 6e 74 65 67 | 65 72 2c 20 61 20 33 32 |ed integ|er, a 32|
|00002ac0| 20 62 69 74 20 66 6c 6f | 61 74 69 6e 67 20 70 6f | bit flo|ating po|
|00002ad0| 69 6e 74 20 6e 75 6d 62 | 65 72 20 65 74 63 2e 20 |int numb|er etc. |
|00002ae0| 20 40 73 63 7b 41 68 69 | 7d 20 6f 6e 6c 79 0a 73 | @sc{Ahi|} only.s|
|00002af0| 75 70 70 6f 72 74 73 20 | 69 6e 74 65 67 65 72 73 |upports |integers|
|00002b00| 2e 0a 0a 40 63 69 6e 64 | 65 78 20 53 61 6d 70 6c |...@cind|ex Sampl|
|00002b10| 65 20 66 72 61 6d 65 0a | 0a 40 69 74 65 6d 20 53 |e frame.|.@item S|
|00002b20| 61 6d 70 6c 65 20 66 72 | 61 6d 65 0a 49 6e 20 6d |ample fr|ame.In m|
|00002b30| 6f 6e 6f 20 65 6e 76 69 | 72 6f 6e 6d 65 6e 74 73 |ono envi|ronments|
|00002b40| 2c 20 61 20 73 61 6d 70 | 6c 65 20 66 72 61 6d 65 |, a samp|le frame|
|00002b50| 20 69 73 20 74 68 65 20 | 73 61 6d 65 20 61 73 20 | is the |same as |
|00002b60| 61 20 73 61 6d 70 6c 65 | 2e 20 20 49 6e 20 73 74 |a sample|. In st|
|00002b70| 65 72 65 6f 0a 65 6e 76 | 69 72 6f 6e 6d 65 6e 74 |ereo.env|ironment|
|00002b80| 73 2c 20 61 20 73 61 6d | 70 6c 65 20 66 72 61 6d |s, a sam|ple fram|
|00002b90| 65 20 69 73 20 61 20 74 | 75 70 6c 65 20 6f 66 20 |e is a t|uple of |
|00002ba0| 74 77 6f 20 73 61 6d 70 | 6c 65 73 2e 20 20 54 68 |two samp|les. Th|
|00002bb0| 65 20 66 69 72 73 74 20 | 6d 65 6d 62 65 72 0a 69 |e first |member.i|
|00002bc0| 73 20 66 6f 72 20 74 68 | 65 20 6c 65 66 74 20 63 |s for th|e left c|
|00002bd0| 68 61 6e 6e 65 6c 2c 20 | 74 68 65 20 73 65 63 6f |hannel, |the seco|
|00002be0| 6e 64 20 66 6f 72 20 74 | 68 65 20 72 69 67 68 74 |nd for t|he right|
|00002bf0| 2e 0a 0a 40 63 69 6e 64 | 65 78 20 53 6f 75 6e 64 |...@cind|ex Sound|
|00002c00| 0a 0a 40 69 74 65 6d 20 | 53 6f 75 6e 64 0a 4d 61 |..@item |Sound.Ma|
|00002c10| 6e 79 20 73 61 6d 70 6c | 65 20 66 72 61 6d 65 73 |ny sampl|e frames|
|00002c20| 20 73 74 6f 72 65 64 20 | 69 6e 20 73 65 71 75 65 | stored |in seque|
|00002c30| 6e 63 65 20 61 73 20 61 | 6e 20 61 72 72 61 79 20 |nce as a|n array |
|00002c40| 63 61 6e 20 62 65 20 63 | 61 6c 6c 65 64 20 61 20 |can be c|alled a |
|00002c50| 73 6f 75 6e 64 2e 20 20 | 41 0a 73 6f 75 6e 64 20 |sound. |A.sound |
|00002c60| 69 73 2c 20 68 6f 77 65 | 76 65 72 2c 20 6e 6f 74 |is, howe|ver, not|
|00002c70| 20 6c 69 6d 69 74 65 64 | 20 74 6f 20 62 65 69 6e | limited| to bein|
|00002c80| 67 20 66 6f 72 6d 65 64 | 20 62 79 20 73 61 6d 70 |g formed| by samp|
|00002c90| 6c 65 73 2c 20 69 74 20 | 63 61 6e 20 61 6c 73 6f |les, it |can also|
|00002ca0| 20 62 65 0a 70 61 72 61 | 6d 65 74 65 72 73 20 74 | be.para|meters t|
|00002cb0| 6f 20 61 6e 20 61 6e 61 | 6c 6f 67 20 73 79 6e 74 |o an ana|log synt|
|00002cc0| 68 20 6f 72 20 61 20 4d | 49 44 49 20 69 6e 73 74 |h or a M|IDI inst|
|00002cd0| 72 75 6d 65 6e 74 2c 20 | 6f 72 20 62 65 20 77 68 |rument, |or be wh|
|00002ce0| 69 74 65 20 6e 6f 69 73 | 65 2e 0a 40 73 63 7b 41 |ite nois|e..@sc{A|
|00002cf0| 68 69 7d 20 6f 6e 6c 79 | 20 73 75 70 70 6f 72 74 |hi} only| support|
|00002d00| 73 20 73 6f 75 6e 64 73 | 20 66 6f 72 6d 65 64 20 |s sounds| formed |
|00002d10| 62 79 20 73 61 6d 70 6c | 65 73 2e 0a 0a 40 65 6e |by sampl|es...@en|
|00002d20| 64 20 74 61 62 6c 65 0a | 0a 0a 40 63 20 2a 2a 2a |d table.|..@c ***|
|00002d30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002d40| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002d50| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002d60| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002d70| 2a 2a 2a 2a 0a 40 63 20 | 2a 2a 2a 2a 2a 2a 2a 2a |****.@c |********|
|00002d80| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002d90| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002da0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002db0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 0a |********|*******.|
|00002dc0| 40 63 20 2a 2a 2a 2a 20 | 46 75 6e 63 74 69 6f 6e |@c **** |Function|
|00002dd0| 20 49 6e 74 65 72 66 61 | 63 65 20 2a 2a 2a 2a 2a | Interfa|ce *****|
|00002de0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002df0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002e00| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 0a 40 63 20 2a 2a |********|**.@c **|
|00002e10| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002e20| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002e30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002e40| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002e50| 2a 2a 2a 2a 2a 0a 40 63 | 20 2a 2a 2a 2a 2a 2a 2a |*****.@c| *******|
|00002e60| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002e70| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002e80| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002e90| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002ea0| 0a 0a 40 6e 6f 64 65 20 | 46 75 6e 63 74 69 6f 6e |..@node |Function|
|00002eb0| 20 49 6e 74 65 72 66 61 | 63 65 2c 20 44 65 76 69 | Interfa|ce, Devi|
|00002ec0| 63 65 20 49 6e 74 65 72 | 66 61 63 65 2c 20 44 65 |ce Inter|face, De|
|00002ed0| 66 69 6e 69 74 69 6f 6e | 73 2c 20 54 6f 70 0a 40 |finition|s, Top.@|
|00002ee0| 63 6f 6d 6d 65 6e 74 20 | 20 6e 6f 64 65 2d 6e 61 |comment | node-na|
|00002ef0| 6d 65 2c 20 20 6e 65 78 | 74 2c 20 20 70 72 65 76 |me, nex|t, prev|
|00002f00| 69 6f 75 73 2c 20 20 75 | 70 0a 40 63 68 61 70 74 |ious, u|p.@chapt|
|00002f10| 65 72 20 46 75 6e 63 74 | 69 6f 6e 20 49 6e 74 65 |er Funct|ion Inte|
|00002f20| 72 66 61 63 65 0a 0a 40 | 63 69 6e 64 65 78 20 46 |rface..@|cindex F|
|00002f30| 75 6e 63 74 69 6f 6e 20 | 49 6e 74 65 72 66 61 63 |unction |Interfac|
|00002f40| 65 0a 0a 20 54 68 65 20 | 64 65 76 69 63 65 20 68 |e.. The |device h|
|00002f50| 61 73 2c 20 69 6e 20 61 | 64 64 69 74 69 6f 6e 20 |as, in a|ddition |
|00002f60| 74 6f 20 74 68 65 20 75 | 73 75 61 6c 20 49 2f 4f |to the u|sual I/O|
|00002f70| 20 72 65 71 75 65 73 74 | 20 70 72 6f 74 6f 63 6f | request| protoco|
|00002f80| 6c 2c 20 61 20 73 65 74 | 20 6f 66 0a 66 75 6e 63 |l, a set| of.func|
|00002f90| 74 69 6f 6e 73 20 74 68 | 61 74 20 61 6c 6c 6f 77 |tions th|at allow|
|00002fa0| 73 20 74 68 65 20 70 72 | 6f 67 72 61 6d 6d 65 72 |s the pr|ogrammer|
|00002fb0| 20 74 6f 20 67 61 69 6e | 20 66 75 6c 6c 20 63 6f | to gain| full co|
|00002fc0| 6e 74 72 6f 6c 20 28 61 | 74 20 6c 65 61 73 74 20 |ntrol (a|t least |
|00002fd0| 61 73 20 6d 75 63 68 0a | 61 73 20 70 6f 73 73 69 |as much.|as possi|
|00002fe0| 62 6c 65 20 77 69 74 68 | 20 64 65 76 69 63 65 20 |ble with| device |
|00002ff0| 69 6e 64 65 70 65 6e 64 | 65 6e 63 65 29 20 6f 76 |independ|ence) ov|
|00003000| 65 72 20 74 68 65 20 61 | 75 64 69 6f 20 68 61 72 |er the a|udio har|
|00003010| 64 77 61 72 65 2e 20 20 | 54 68 65 0a 61 64 76 61 |dware. |The.adva|
|00003020| 6e 74 61 67 65 73 20 61 | 72 65 20 6c 6f 77 20 6f |ntages a|re low o|
|00003030| 76 65 72 68 65 61 64 20 | 61 6e 64 20 6d 75 63 68 |verhead |and much|
|00003040| 20 6d 6f 72 65 20 61 64 | 76 61 6e 63 65 64 20 63 | more ad|vanced c|
|00003050| 6f 6e 74 72 6f 6c 20 6f | 76 65 72 20 74 68 65 20 |ontrol o|ver the |
|00003060| 70 6c 61 79 69 6e 67 0a | 73 6f 75 6e 64 73 2e 20 |playing.|sounds. |
|00003070| 20 54 68 65 20 64 69 73 | 61 64 76 61 6e 74 61 67 | The dis|advantag|
|00003080| 65 73 20 61 72 65 20 67 | 72 65 61 74 65 72 20 63 |es are g|reater c|
|00003090| 6f 6d 70 6c 65 78 69 74 | 79 20 61 6e 64 20 6f 6e |omplexit|y and on|
|000030a0| 6c 79 20 6f 6e 65 20 75 | 73 65 72 20 70 65 72 0a |ly one u|ser per.|
|000030b0| 73 6f 75 6e 64 20 63 61 | 72 64 2e 0a 0a 40 63 69 |sound ca|rd...@ci|
|000030c0| 6e 64 65 78 20 4d 75 73 | 69 63 2c 20 67 61 6d 65 |ndex Mus|ic, game|
|000030d0| 73 0a 40 63 69 6e 64 65 | 78 20 53 6f 75 6e 64 20 |s.@cinde|x Sound |
|000030e0| 65 66 66 65 63 74 73 2c | 20 67 61 6d 65 73 0a 40 |effects,| games.@|
|000030f0| 63 69 6e 64 65 78 20 47 | 61 6d 65 73 2c 20 6d 75 |cindex G|ames, mu|
|00003100| 73 69 63 0a 40 63 69 6e | 64 65 78 20 47 61 6d 65 |sic.@cin|dex Game|
|00003110| 73 2c 20 73 6f 75 6e 64 | 20 65 66 66 65 63 74 73 |s, sound| effects|
|00003120| 0a 40 63 69 6e 64 65 78 | 20 52 65 61 6c 74 69 6d |.@cindex| Realtim|
|00003130| 65 20 65 66 66 65 63 74 | 73 0a 40 63 69 6e 64 65 |e effect|s.@cinde|
|00003140| 78 20 52 65 63 6f 72 64 | 69 6e 67 2c 20 68 69 67 |x Record|ing, hig|
|00003150| 68 20 71 75 61 6c 69 74 | 79 0a 0a 20 49 66 20 79 |h qualit|y.. If y|
|00003160| 6f 75 20 77 61 6e 74 20 | 74 6f 20 70 6c 61 79 20 |ou want |to play |
|00003170| 6d 75 73 69 63 20 6f 72 | 20 73 6f 75 6e 64 20 65 |music or| sound e|
|00003180| 66 66 65 63 74 73 20 66 | 6f 72 20 61 20 67 61 6d |ffects f|or a gam|
|00003190| 65 2c 20 72 65 63 6f 72 | 64 20 69 6e 20 68 69 67 |e, recor|d in hig|
|000031a0| 68 0a 71 75 61 6c 69 74 | 79 20 6f 72 20 77 61 6e |h.qualit|y or wan|
|000031b0| 74 20 74 6f 20 64 6f 20 | 72 65 61 6c 74 69 6d 65 |t to do |realtime|
|000031c0| 20 65 66 66 65 63 74 73 | 2c 20 74 68 69 73 20 69 | effects|, this i|
|000031d0| 73 20 74 68 65 20 41 50 | 49 20 74 6f 20 75 73 65 |s the AP|I to use|
|000031e0| 2e 0a 0a 0a 0a 40 6d 65 | 6e 75 0a 2a 20 47 75 69 |.....@me|nu.* Gui|
|000031f0| 64 65 6c 69 6e 65 73 3a | 3a 20 20 20 20 20 20 20 |delines:|: |
|00003200| 20 20 20 20 20 20 20 20 | 20 20 20 0a 2a 20 4f 70 | | .* Op|
|00003210| 65 6e 69 6e 67 20 41 6e | 64 20 43 6c 6f 73 69 6e |ening An|d Closin|
|00003220| 67 20 61 68 69 2e 64 65 | 76 69 63 65 20 46 6f 72 |g ahi.de|vice For|
|00003230| 20 4c 6f 77 2d 6c 65 76 | 65 6c 20 41 63 63 65 73 | Low-lev|el Acces|
|00003240| 73 3a 3a 20 20 0a 2a 20 | 4f 62 74 61 69 6e 69 6e |s:: .* |Obtainin|
|00003250| 67 20 54 68 65 20 48 61 | 72 64 77 61 72 65 3a 3a |g The Ha|rdware::|
|00003260| 20 20 20 20 20 20 0a 2a | 20 44 65 63 6c 61 72 69 | .*| Declari|
|00003270| 6e 67 20 53 6f 75 6e 64 | 73 3a 3a 20 20 20 20 20 |ng Sound|s:: |
|00003280| 20 20 20 20 20 20 20 0a | 2a 20 4d 61 6b 69 6e 67 | .|* Making|
|00003290| 20 4e 6f 69 73 65 3a 3a | 20 20 20 20 20 20 20 20 | Noise::| |
|000032a0| 20 20 20 20 20 20 20 20 | 0a 40 65 6e 64 20 6d 65 | |.@end me|
|000032b0| 6e 75 0a 0a 0a 40 63 20 | 2a 2a 2a 2a 2a 2a 2a 2a |nu...@c |********|
|000032c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000032d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000032e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000032f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 0a |********|*******.|
|00003300| 40 63 20 2a 2a 2a 2a 20 | 47 75 69 64 65 6c 69 6e |@c **** |Guidelin|
|00003310| 65 73 20 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |es *****|********|
|00003320| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003330| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003340| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 0a 40 63 20 2a 2a |********|**.@c **|
|00003350| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003360| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003370| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003380| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003390| 2a 2a 2a 2a 2a 0a 0a 40 | 6e 6f 64 65 20 47 75 69 |*****..@|node Gui|
|000033a0| 64 65 6c 69 6e 65 73 2c | 20 4f 70 65 6e 69 6e 67 |delines,| Opening|
|000033b0| 20 41 6e 64 20 43 6c 6f | 73 69 6e 67 20 61 68 69 | And Clo|sing ahi|
|000033c0| 2e 64 65 76 69 63 65 20 | 46 6f 72 20 4c 6f 77 2d |.device |For Low-|
|000033d0| 6c 65 76 65 6c 20 41 63 | 63 65 73 73 2c 20 46 75 |level Ac|cess, Fu|
|000033e0| 6e 63 74 69 6f 6e 20 49 | 6e 74 65 72 66 61 63 65 |nction I|nterface|
|000033f0| 2c 20 46 75 6e 63 74 69 | 6f 6e 20 49 6e 74 65 72 |, Functi|on Inter|
|00003400| 66 61 63 65 0a 40 63 6f | 6d 6d 65 6e 74 20 20 6e |face.@co|mment n|
|00003410| 6f 64 65 2d 6e 61 6d 65 | 2c 20 20 6e 65 78 74 2c |ode-name|, next,|
|00003420| 20 20 70 72 65 76 69 6f | 75 73 2c 20 20 75 70 0a | previo|us, up.|
|00003430| 40 73 65 63 74 69 6f 6e | 20 47 75 69 64 65 6c 69 |@section| Guideli|
|00003440| 6e 65 73 0a 0a 40 63 69 | 6e 64 65 78 20 47 75 69 |nes..@ci|ndex Gui|
|00003450| 64 65 6c 69 6e 65 73 0a | 40 63 69 6e 64 65 78 20 |delines.|@cindex |
|00003460| 50 72 6f 67 72 61 6d 6d | 69 6e 67 20 67 75 69 64 |Programm|ing guid|
|00003470| 65 6c 69 6e 65 73 0a 0a | 0a 40 73 75 62 73 65 63 |elines..|.@subsec|
|00003480| 74 69 6f 6e 20 46 6f 6c | 6c 6f 77 20 54 68 65 20 |tion Fol|low The |
|00003490| 52 75 6c 65 73 0a 0a 20 | 49 74 27 73 20 72 65 61 |Rules.. |It's rea|
|000034a0| 6c 6c 79 20 73 69 6d 70 | 6c 65 2e 20 20 49 66 20 |lly simp|le. If |
|000034b0| 49 20 74 65 6c 6c 20 79 | 6f 75 20 74 6f 20 63 68 |I tell y|ou to ch|
|000034c0| 65 63 6b 20 72 65 74 75 | 72 6e 20 76 61 6c 75 65 |eck retu|rn value|
|000034d0| 73 2c 20 63 68 65 63 6b | 20 73 61 6d 70 6c 65 0a |s, check| sample.|
|000034e0| 74 79 70 65 73 20 77 68 | 65 6e 20 72 65 63 6f 72 |types wh|en recor|
|000034f0| 64 69 6e 67 2c 20 6e 6f | 74 20 74 6f 20 74 72 61 |ding, no|t to tra|
|00003500| 73 68 20 64 32 2d 64 37 | 2f 61 32 2d 61 36 20 69 |sh d2-d7|/a2-a6 i|
|00003510| 6e 20 68 6f 6f 6b 73 2c | 20 6f 72 20 6e 6f 74 20 |n hooks,| or not |
|00003520| 74 6f 20 63 61 6c 6c 0a | 40 63 6f 64 65 7b 41 48 |to call.|@code{AH|
|00003530| 49 5f 43 6f 6e 74 72 6f | 6c 41 75 64 69 6f 28 29 |I_Contro|lAudio()|
|00003540| 7d 20 77 69 74 68 20 74 | 68 65 20 40 63 6f 64 65 |} with t|he @code|
|00003550| 7b 41 48 49 43 5f 50 6c | 61 79 7d 20 74 61 67 20 |{AHIC_Pl|ay} tag |
|00003560| 66 72 6f 6d 20 69 6e 74 | 65 72 72 75 70 74 73 20 |from int|errupts |
|00003570| 6f 72 0a 68 6f 6f 6b 73 | 2c 20 79 6f 75 20 64 6f |or.hooks|, you do|
|00003580| 20 61 73 20 79 6f 75 20 | 61 72 65 20 74 6f 6c 64 | as you |are told|
|00003590| 2e 0a 0a 0a 40 73 75 62 | 73 65 63 74 69 6f 6e 20 |....@sub|section |
|000035a0| 54 68 65 20 4c 69 62 72 | 61 72 79 20 42 61 73 65 |The Libr|ary Base|
|000035b0| 0a 0a 40 63 69 6e 64 65 | 78 20 4c 69 62 72 61 72 |..@cinde|x Librar|
|000035c0| 79 20 62 61 73 65 0a 40 | 74 69 6e 64 65 78 20 41 |y base.@|tindex A|
|000035d0| 48 49 42 61 73 65 0a 0a | 20 54 68 65 20 40 63 6f |HIBase..| The @co|
|000035e0| 64 65 7b 41 48 49 42 61 | 73 65 7d 20 73 74 72 75 |de{AHIBa|se} stru|
|000035f0| 63 74 75 72 65 20 69 73 | 20 70 72 69 76 61 74 65 |cture is| private|
|00003600| 2c 20 73 6f 20 61 72 65 | 20 74 68 65 20 73 75 62 |, so are| the sub|
|00003610| 20 6c 69 62 72 61 72 69 | 65 73 27 20 6c 69 62 72 | librari|es' libr|
|00003620| 61 72 79 0a 62 61 73 65 | 20 73 74 72 75 63 74 75 |ary.base| structu|
|00003630| 72 65 73 2e 20 20 44 6f | 6e 27 74 20 74 72 79 20 |res. Do|n't try |
|00003640| 74 6f 20 62 65 20 63 6c | 65 76 65 72 2e 0a 0a 0a |to be cl|ever....|
|00003650| 40 73 75 62 73 65 63 74 | 69 6f 6e 20 54 68 65 20 |@subsect|ion The |
|00003660| 41 75 64 69 6f 20 44 61 | 74 61 62 61 73 65 0a 0a |Audio Da|tabase..|
|00003670| 40 63 69 6e 64 65 78 20 | 54 68 65 20 41 75 64 69 |@cindex |The Audi|
|00003680| 6f 20 44 61 74 61 62 61 | 73 65 0a 0a 40 66 69 6e |o Databa|se..@fin|
|00003690| 64 65 78 20 41 48 49 5f | 4e 65 78 74 41 75 64 69 |dex AHI_|NextAudi|
|000036a0| 6f 49 44 28 29 0a 40 66 | 69 6e 64 65 78 20 41 48 |oID().@f|index AH|
|000036b0| 49 5f 47 65 74 41 75 64 | 69 6f 41 74 74 72 73 41 |I_GetAud|ioAttrsA|
|000036c0| 28 29 0a 40 66 69 6e 64 | 65 78 20 41 48 49 5f 42 |().@find|ex AHI_B|
|000036d0| 65 73 74 41 75 64 69 6f | 49 44 41 28 29 0a 0a 20 |estAudio|IDA().. |
|000036e0| 54 68 65 20 69 6d 70 6c | 65 6d 65 6e 74 61 74 69 |The impl|ementati|
|000036f0| 6f 6e 20 6f 66 20 74 68 | 65 20 64 61 74 61 62 61 |on of th|e databa|
|00003700| 73 65 20 69 73 20 70 72 | 69 76 61 74 65 2c 20 61 |se is pr|ivate, a|
|00003710| 6e 64 20 6d 61 79 20 63 | 68 61 6e 67 65 20 61 6e |nd may c|hange an|
|00003720| 79 20 74 69 6d 65 2e 0a | 40 63 6f 64 65 7b 61 68 |y time..|@code{ah|
|00003730| 69 2e 64 65 76 69 63 65 | 7d 20 70 72 6f 76 69 64 |i.device|} provid|
|00003740| 65 73 20 66 75 6e 63 74 | 69 6f 6e 73 20 61 63 63 |es funct|ions acc|
|00003750| 65 73 73 20 74 68 65 20 | 69 6e 66 6f 72 6d 61 74 |ess the |informat|
|00003760| 69 6f 6e 20 69 6e 20 74 | 68 65 20 64 61 74 61 62 |ion in t|he datab|
|00003770| 61 73 65 0a 28 40 63 6f | 64 65 7b 41 48 49 5f 4e |ase.(@co|de{AHI_N|
|00003780| 65 78 74 41 75 64 69 6f | 49 44 28 29 7d 2c 20 40 |extAudio|ID()}, @|
|00003790| 63 6f 64 65 7b 41 48 49 | 5f 47 65 74 41 75 64 69 |code{AHI|_GetAudi|
|000037a0| 6f 41 74 74 72 73 41 28 | 29 7d 20 61 6e 64 0a 40 |oAttrsA(|)} and.@|
|000037b0| 63 6f 64 65 7b 41 48 49 | 5f 42 65 73 74 41 75 64 |code{AHI|_BestAud|
|000037c0| 69 6f 49 44 41 28 29 7d | 29 2e 0a 0a 0a 40 73 75 |ioIDA()}|)....@su|
|000037d0| 62 73 65 63 74 69 6f 6e | 20 55 73 65 72 20 48 6f |bsection| User Ho|
|000037e0| 6f 6b 73 0a 0a 40 63 69 | 6e 64 65 78 20 48 6f 6f |oks..@ci|ndex Hoo|
|000037f0| 6b 73 0a 0a 20 41 6c 6c | 20 75 73 65 72 20 68 6f |ks.. All| user ho|
|00003800| 6f 6b 73 20 6d 75 73 74 | 20 66 6f 6c 6c 6f 77 20 |oks must| follow |
|00003810| 6e 6f 72 6d 61 6c 20 72 | 65 67 69 73 74 65 72 20 |normal r|egister |
|00003820| 63 6f 6e 76 65 6e 74 69 | 6f 6e 73 2c 20 77 68 69 |conventi|ons, whi|
|00003830| 63 68 20 6d 65 61 6e 73 | 20 74 68 61 74 0a 64 32 |ch means| that.d2|
|00003840| 2d 64 37 20 61 6e 64 20 | 61 32 2d 61 36 20 6d 75 |-d7 and |a2-a6 mu|
|00003850| 73 74 20 62 65 20 70 72 | 65 73 65 72 76 65 64 2e |st be pr|eserved.|
|00003860| 20 20 54 68 65 79 20 6d | 61 79 20 62 65 20 63 61 | They m|ay be ca|
|00003870| 6c 6c 65 64 20 66 72 6f | 6d 20 61 6e 20 69 6e 74 |lled fro|m an int|
|00003880| 65 72 72 75 70 74 2c 0a | 62 75 74 20 79 6f 75 20 |errupt,.|but you |
|00003890| 63 61 6e 6e 6f 74 20 63 | 6f 75 6e 74 20 6f 6e 20 |cannot c|ount on |
|000038a0| 74 68 61 74 3b 20 69 74 | 20 63 61 6e 20 62 65 20 |that; it| can be |
|000038b0| 79 6f 75 72 20 6f 77 6e | 20 70 72 6f 63 65 73 73 |your own| process|
|000038c0| 20 6f 72 20 61 6e 6f 74 | 68 65 72 0a 70 72 6f 63 | or anot|her.proc|
|000038d0| 65 73 73 2e 20 20 44 6f | 6e 27 74 20 61 73 73 75 |ess. Do|n't assu|
|000038e0| 6d 65 20 74 68 65 20 73 | 79 73 74 65 6d 20 69 73 |me the s|ystem is|
|000038f0| 20 69 6e 20 73 69 6e 67 | 6c 65 2d 74 68 72 65 61 | in sing|le-threa|
|00003900| 64 20 6d 6f 64 65 2e 20 | 20 4e 65 76 65 72 20 73 |d mode. | Never s|
|00003910| 70 65 6e 64 0a 6d 75 63 | 68 20 74 69 6d 65 20 69 |pend.muc|h time i|
|00003920| 6e 20 61 20 68 6f 6f 6b | 2c 20 67 65 74 20 74 68 |n a hook|, get th|
|00003930| 65 20 77 6f 72 6b 20 64 | 6f 6e 65 20 61 73 20 71 |e work d|one as q|
|00003940| 75 69 63 6b 20 61 73 20 | 70 6f 73 73 69 62 6c 65 |uick as |possible|
|00003950| 20 61 6e 64 20 74 68 65 | 6e 0a 72 65 74 75 72 6e | and the|n.return|
|00003960| 2e 0a 0a 0a 40 73 75 62 | 73 65 63 74 69 6f 6e 20 |....@sub|section |
|00003970| 46 75 6e 63 74 69 6f 6e | 20 43 61 6c 6c 73 20 46 |Function| Calls F|
|00003980| 72 6f 6d 20 4f 74 68 65 | 72 20 54 61 73 6b 73 2c |rom Othe|r Tasks,|
|00003990| 20 49 6e 74 65 72 72 75 | 70 74 73 20 4f 72 20 55 | Interru|pts Or U|
|000039a0| 73 65 72 20 48 6f 6f 6b | 73 0a 0a 20 54 68 65 20 |ser Hook|s.. The |
|000039b0| 40 63 6f 64 65 7b 41 48 | 49 41 75 64 69 6f 43 74 |@code{AH|IAudioCt|
|000039c0| 72 6c 7d 20 73 74 72 75 | 63 74 75 72 65 20 6d 61 |rl} stru|cture ma|
|000039d0| 79 20 6e 6f 74 20 62 65 | 20 73 68 61 72 65 64 20 |y not be| shared |
|000039e0| 77 69 74 68 20 6f 74 68 | 65 72 0a 74 61 73 6b 73 |with oth|er.tasks|
|000039f0| 2f 74 68 72 65 61 64 73 | 2e 20 20 54 68 65 20 74 |/threads|. The t|
|00003a00| 61 73 6b 20 74 68 61 74 | 20 63 61 6c 6c 65 64 20 |ask that| called |
|00003a10| 40 63 6f 64 65 7b 41 48 | 49 5f 41 6c 6c 6f 63 41 |@code{AH|I_AllocA|
|00003a20| 75 64 69 6f 41 28 29 7d | 20 6d 75 73 74 20 64 6f |udioA()}| must do|
|00003a30| 20 61 6c 6c 0a 6f 74 68 | 65 72 20 63 61 6c 6c 73 | all.oth|er calls|
|00003a40| 20 74 6f 6f 20 28 65 78 | 63 65 70 74 20 74 68 6f | too (ex|cept tho|
|00003a50| 73 65 20 63 61 6c 6c 61 | 62 6c 65 20 66 72 6f 6d |se calla|ble from|
|00003a60| 20 69 6e 74 65 72 72 75 | 70 74 73 29 2e 0a 0a 20 | interru|pts)... |
|00003a70| 4f 6e 6c 79 20 63 61 6c | 6c 73 20 73 70 65 63 69 |Only cal|ls speci|
|00003a80| 66 69 63 61 6c 6c 79 20 | 73 61 69 64 20 74 6f 20 |fically |said to |
|00003a90| 62 65 20 63 61 6c 6c 61 | 62 6c 65 20 66 72 6f 6d |be calla|ble from|
|00003aa0| 20 69 6e 74 65 72 72 75 | 70 74 73 20 6d 61 79 20 | interru|pts may |
|00003ab0| 62 65 20 63 61 6c 6c 65 | 64 0a 66 72 6f 6d 20 75 |be calle|d.from u|
|00003ac0| 73 65 72 20 68 6f 6f 6b | 73 20 6f 72 20 69 6e 74 |ser hook|s or int|
|00003ad0| 65 72 72 75 70 74 73 2e | 20 20 4e 6f 74 65 20 74 |errupts.| Note t|
|00003ae0| 68 61 74 20 40 63 6f 64 | 65 7b 41 48 49 5f 43 6f |hat @cod|e{AHI_Co|
|00003af0| 6e 74 72 6f 6c 41 75 64 | 69 6f 41 28 29 7d 20 68 |ntrolAud|ioA()} h|
|00003b00| 61 73 0a 73 6f 6d 65 20 | 74 61 67 73 20 74 68 61 |as.some |tags tha|
|00003b10| 74 20 6d 75 73 74 20 6e | 6f 74 20 62 65 20 70 72 |t must n|ot be pr|
|00003b20| 65 73 65 6e 74 20 77 68 | 65 6e 20 63 61 6c 6c 65 |esent wh|en calle|
|00003b30| 64 20 66 72 6f 6d 20 61 | 6e 20 69 6e 74 65 72 72 |d from a|n interr|
|00003b40| 75 70 74 2e 0a 0a 0a 40 | 73 75 62 73 65 63 74 69 |upt....@|subsecti|
|00003b50| 6f 6e 20 4d 75 6c 74 69 | 74 61 73 6b 69 6e 67 0a |on Multi|tasking.|
|00003b60| 0a 40 63 69 6e 64 65 78 | 20 4d 75 6c 74 69 74 61 |.@cindex| Multita|
|00003b70| 73 6b 69 6e 67 0a 0a 20 | 4d 6f 73 74 20 61 75 64 |sking.. |Most aud|
|00003b80| 69 6f 20 64 72 69 76 65 | 72 73 20 6e 65 65 64 20 |io drive|rs need |
|00003b90| 6d 75 6c 74 69 74 61 73 | 6b 69 6e 67 20 74 6f 20 |multitas|king to |
|00003ba0| 62 65 20 74 75 72 6e 65 | 64 20 6f 6e 20 74 6f 20 |be turne|d on to |
|00003bb0| 66 75 6e 63 74 69 6f 6e | 20 70 72 6f 70 65 72 6c |function| properl|
|00003bc0| 79 2e 0a 44 6f 6e 27 74 | 20 74 75 72 6e 20 69 74 |y..Don't| turn it|
|00003bd0| 20 6f 66 66 20 77 68 69 | 6c 65 20 75 73 69 6e 67 | off whi|le using|
|00003be0| 20 74 68 65 20 64 65 76 | 69 63 65 2e 0a 0a 0a 0a | the dev|ice.....|
|00003bf0| 40 63 20 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |@c *****|********|
|00003c00| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003c10| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003c20| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003c30| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 0a 40 63 20 2a 2a |********|**.@c **|
|00003c40| 2a 2a 20 4f 70 65 6e 69 | 6e 67 20 41 6e 64 20 43 |** Openi|ng And C|
|00003c50| 6c 6f 73 69 6e 67 20 61 | 68 69 2e 64 65 76 69 63 |losing a|hi.devic|
|00003c60| 65 20 46 6f 72 20 4c 6f | 77 2d 6c 65 76 65 6c 20 |e For Lo|w-level |
|00003c70| 41 63 63 65 73 73 20 2a | 2a 2a 2a 2a 2a 2a 2a 2a |Access *|********|
|00003c80| 2a 2a 2a 2a 2a 0a 40 63 | 20 2a 2a 2a 2a 2a 2a 2a |*****.@c| *******|
|00003c90| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003ca0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003cb0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003cc0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003cd0| 0a 0a 40 6e 6f 64 65 20 | 4f 70 65 6e 69 6e 67 20 |..@node |Opening |
|00003ce0| 41 6e 64 20 43 6c 6f 73 | 69 6e 67 20 61 68 69 2e |And Clos|ing ahi.|
|00003cf0| 64 65 76 69 63 65 20 46 | 6f 72 20 4c 6f 77 2d 6c |device F|or Low-l|
|00003d00| 65 76 65 6c 20 41 63 63 | 65 73 73 2c 20 4f 62 74 |evel Acc|ess, Obt|
|00003d10| 61 69 6e 69 6e 67 20 54 | 68 65 20 48 61 72 64 77 |aining T|he Hardw|
|00003d20| 61 72 65 2c 20 47 75 69 | 64 65 6c 69 6e 65 73 2c |are, Gui|delines,|
|00003d30| 20 46 75 6e 63 74 69 6f | 6e 20 49 6e 74 65 72 66 | Functio|n Interf|
|00003d40| 61 63 65 0a 40 63 6f 6d | 6d 65 6e 74 20 20 6e 6f |ace.@com|ment no|
|00003d50| 64 65 2d 6e 61 6d 65 2c | 20 20 6e 65 78 74 2c 20 |de-name,| next, |
|00003d60| 20 70 72 65 76 69 6f 75 | 73 2c 20 20 75 70 0a 40 | previou|s, up.@|
|00003d70| 73 65 63 74 69 6f 6e 20 | 4f 70 65 6e 69 6e 67 20 |section |Opening |
|00003d80| 41 6e 64 20 43 6c 6f 73 | 69 6e 67 20 40 63 6f 64 |And Clos|ing @cod|
|00003d90| 65 7b 61 68 69 2e 64 65 | 76 69 63 65 7d 20 46 6f |e{ahi.de|vice} Fo|
|00003da0| 72 20 4c 6f 77 2d 6c 65 | 76 65 6c 20 41 63 63 65 |r Low-le|vel Acce|
|00003db0| 73 73 0a 0a 0a 20 4e 6f | 74 20 74 6f 6f 20 68 61 |ss... No|t too ha|
|00003dc0| 72 64 2e 20 20 4a 75 73 | 74 20 6f 70 65 6e 20 40 |rd. Jus|t open @|
|00003dd0| 63 6f 64 65 7b 61 68 69 | 2e 64 65 76 69 63 65 7d |code{ahi|.device}|
|00003de0| 20 75 6e 69 74 20 40 63 | 6f 64 65 7b 41 48 49 5f | unit @c|ode{AHI_|
|00003df0| 4e 4f 5f 55 4e 49 54 7d | 20 61 6e 64 0a 69 6e 69 |NO_UNIT}| and.ini|
|00003e00| 74 69 61 6c 69 7a 65 20 | 40 63 6f 64 65 7b 41 48 |tialize |@code{AH|
|00003e10| 49 42 61 73 65 7d 2e 20 | 20 41 66 74 65 72 20 74 |IBase}. | After t|
|00003e20| 68 61 74 20 79 6f 75 20 | 63 61 6e 20 61 63 63 65 |hat you |can acce|
|00003e30| 73 73 20 61 6c 6c 20 74 | 68 65 20 66 75 6e 63 74 |ss all t|he funct|
|00003e40| 69 6f 6e 73 20 6f 66 0a | 74 68 65 20 64 65 76 69 |ions of.|the devi|
|00003e50| 63 65 20 6a 75 73 74 20 | 61 73 20 69 66 20 79 6f |ce just |as if yo|
|00003e60| 75 20 68 61 64 20 6f 70 | 65 6e 65 64 20 61 20 73 |u had op|ened a s|
|00003e70| 74 61 6e 64 61 72 64 20 | 73 68 61 72 65 64 20 6c |tandard |shared l|
|00003e80| 69 62 72 61 72 79 2e 0a | 0a 0a 40 73 75 62 73 65 |ibrary..|..@subse|
|00003e90| 63 74 69 6f 6e 20 40 63 | 6f 64 65 7b 41 73 73 65 |ction @c|ode{Asse|
|00003ea0| 6d 62 6c 65 72 7d 0a 0a | 20 46 6f 72 20 74 68 65 |mbler}..| For the|
|00003eb0| 20 61 73 73 65 6d 62 6c | 65 72 20 70 72 6f 67 72 | assembl|er progr|
|00003ec0| 61 6d 6d 65 72 20 74 68 | 65 72 65 20 61 72 65 20 |ammer th|ere are |
|00003ed0| 74 77 6f 20 68 61 6e 64 | 79 20 6d 61 63 72 6f 73 |two hand|y macros|
|00003ee0| 3a 20 40 63 6f 64 65 7b | 4f 50 45 4e 41 48 49 7d |: @code{|OPENAHI}|
|00003ef0| 0a 61 6e 64 20 40 63 6f | 64 65 7b 43 4c 4f 53 45 |.and @co|de{CLOSE|
|00003f00| 41 48 49 7d 2e 20 20 48 | 65 72 65 20 69 73 20 61 |AHI}. H|ere is a|
|00003f10| 20 73 6d 61 6c 6c 20 65 | 78 61 6d 70 6c 65 20 68 | small e|xample h|
|00003f20| 6f 77 20 74 6f 20 75 73 | 65 20 74 68 65 6d 3a 0a |ow to us|e them:.|
|00003f30| 0a 40 65 78 61 6d 70 6c | 65 0a 20 20 20 20 20 20 |.@exampl|e. |
|00003f40| 20 20 4f 50 45 4e 41 48 | 49 20 34 20 20 20 20 20 | OPENAH|I 4 |
|00003f50| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 3b 4f 70 | | ;Op|
|00003f60| 65 6e 20 61 74 20 6c 65 | 61 73 74 20 76 65 72 73 |en at le|ast vers|
|00003f70| 69 6f 6e 20 34 2e 0a 20 | 20 20 20 20 20 20 20 6c |ion 4.. | l|
|00003f80| 65 61 20 20 20 20 20 5f | 41 48 49 42 61 73 65 28 |ea _|AHIBase(|
|00003f90| 70 63 29 2c 61 30 0a 20 | 20 20 20 20 20 20 20 6d |pc),a0. | m|
|00003fa0| 6f 76 65 2e 6c 20 20 64 | 30 2c 28 61 30 29 0a 20 |ove.l d|0,(a0). |
|00003fb0| 20 20 20 20 20 20 20 62 | 65 71 20 20 20 20 20 65 | b|eq e|
|00003fc0| 72 72 6f 72 0a 0a 3b 20 | 41 48 49 27 73 20 66 75 |rror..; |AHI's fu|
|00003fd0| 6e 63 74 69 6f 6e 73 20 | 63 61 6e 20 6e 6f 77 20 |nctions |can now |
|00003fe0| 62 65 20 63 61 6c 6c 65 | 64 20 61 73 20 6e 6f 72 |be calle|d as nor|
|00003ff0| 6d 61 6c 20 6c 69 62 72 | 61 72 79 20 66 75 6e 63 |mal libr|ary func|
|00004000| 74 69 6f 6e 73 3a 0a 20 | 20 20 20 20 20 20 20 6d |tions:. | m|
|00004010| 6f 76 65 2e 6c 20 20 5f | 41 48 49 42 61 73 65 28 |ove.l _|AHIBase(|
|00004020| 70 63 29 2c 61 36 0a 20 | 20 20 20 20 20 20 20 6d |pc),a6. | m|
|00004030| 6f 76 65 71 20 20 20 23 | 41 48 49 5f 49 4e 56 41 |oveq #|AHI_INVA|
|00004040| 4c 49 44 5f 49 44 2c 64 | 30 0a 20 20 20 20 20 20 |LID_ID,d|0. |
|00004050| 20 20 6a 73 72 20 20 20 | 20 20 5f 4c 56 4f 41 48 | jsr | _LVOAH|
|00004060| 49 5f 4e 65 78 74 41 75 | 64 69 6f 49 44 28 61 36 |I_NextAu|dioID(a6|
|00004070| 29 0a 0a 65 72 72 6f 72 | 3a 0a 20 20 20 20 20 20 |)..error|:. |
|00004080| 20 20 43 4c 4f 53 45 41 | 48 49 0a 20 20 20 20 20 | CLOSEA|HI. |
|00004090| 20 20 20 72 74 73 0a 40 | 65 6e 64 20 65 78 61 6d | rts.@|end exam|
|000040a0| 70 6c 65 0a 0a 0a 20 4e | 6f 74 65 20 74 68 61 74 |ple... N|ote that|
|000040b0| 20 79 6f 75 20 40 73 74 | 72 6f 6e 67 7b 68 61 76 | you @st|rong{hav|
|000040c0| 65 7d 20 74 6f 20 65 78 | 65 63 75 74 65 20 74 68 |e} to ex|ecute th|
|000040d0| 65 20 40 63 6f 64 65 7b | 43 4c 4f 53 45 41 48 49 |e @code{|CLOSEAHI|
|000040e0| 7d 20 6d 61 63 72 6f 20 | 65 76 65 6e 20 69 66 0a |} macro |even if.|
|000040f0| 40 63 6f 64 65 7b 4f 50 | 45 4e 41 48 49 7d 20 66 |@code{OP|ENAHI} f|
|00004100| 61 69 6c 65 64 21 0a 0a | 0a 40 73 75 62 73 65 63 |ailed!..|.@subsec|
|00004110| 74 69 6f 6e 20 40 63 6f | 64 65 7b 43 7d 0a 0a 20 |tion @co|de{C}.. |
|00004120| 46 6f 72 20 74 68 65 20 | 43 20 70 72 6f 67 72 61 |For the |C progra|
|00004130| 6d 6d 65 72 2c 20 68 65 | 72 65 20 69 73 20 68 6f |mmer, he|re is ho|
|00004140| 77 20 69 74 20 73 68 6f | 75 6c 64 20 62 65 20 64 |w it sho|uld be d|
|00004150| 6f 6e 65 3a 0a 0a 40 6e | 6f 69 6e 64 65 6e 74 0a |one:..@n|oindent.|
|00004160| 40 65 78 61 6d 70 6c 65 | 0a 73 74 72 75 63 74 20 |@example|.struct |
|00004170| 4c 69 62 72 61 72 79 20 | 20 20 20 2a 41 48 49 42 |Library | *AHIB|
|00004180| 61 73 65 3b 0a 73 74 72 | 75 63 74 20 4d 73 67 50 |ase;.str|uct MsgP|
|00004190| 6f 72 74 20 20 20 20 2a | 41 48 49 6d 70 3d 4e 55 |ort *|AHImp=NU|
|000041a0| 4c 4c 3b 0a 73 74 72 75 | 63 74 20 41 48 49 52 65 |LL;.stru|ct AHIRe|
|000041b0| 71 75 65 73 74 20 2a 41 | 48 49 69 6f 3d 4e 55 4c |quest *A|HIio=NUL|
|000041c0| 4c 3b 0a 42 59 54 45 20 | 20 20 20 20 20 20 20 20 |L;.BYTE | |
|000041d0| 20 20 20 20 20 20 41 48 | 49 44 65 76 69 63 65 3d | AH|IDevice=|
|000041e0| 2d 31 3b 0a 0a 69 66 28 | 41 48 49 6d 70 20 3d 20 |-1;..if(|AHImp = |
|000041f0| 43 72 65 61 74 65 4d 73 | 67 50 6f 72 74 28 29 29 |CreateMs|gPort())|
|00004200| 0a 40 7b 0a 20 20 69 66 | 28 41 48 49 69 6f 20 3d |.@{. if|(AHIio =|
|00004210| 20 28 73 74 72 75 63 74 | 20 41 48 49 52 65 71 75 | (struct| AHIRequ|
|00004220| 65 73 74 20 2a 29 20 43 | 72 65 61 74 65 49 4f 52 |est *) C|reateIOR|
|00004230| 65 71 75 65 73 74 28 0a | 20 20 20 20 20 20 41 48 |equest(.| AH|
|00004240| 49 6d 70 2c 20 73 69 7a | 65 6f 66 28 73 74 72 75 |Imp, siz|eof(stru|
|00004250| 63 74 20 41 48 49 52 65 | 71 75 65 73 74 29 29 29 |ct AHIRe|quest)))|
|00004260| 0a 20 20 40 7b 0a 20 20 | 20 20 41 48 49 69 6f 2d |. @{. | AHIio-|
|00004270| 3e 61 68 69 72 5f 56 65 | 72 73 69 6f 6e 20 3d 20 |>ahir_Ve|rsion = |
|00004280| 34 3b 20 20 2f 2a 20 4f | 70 65 6e 20 61 74 20 6c |4; /* O|pen at l|
|00004290| 65 61 73 74 20 76 65 72 | 73 69 6f 6e 20 34 2e 20 |east ver|sion 4. |
|000042a0| 2a 2f 0a 20 20 20 20 69 | 66 28 21 28 41 48 49 44 |*/. i|f(!(AHID|
|000042b0| 65 76 69 63 65 20 3d 20 | 4f 70 65 6e 44 65 76 69 |evice = |OpenDevi|
|000042c0| 63 65 28 41 48 49 4e 41 | 4d 45 2c 20 41 48 49 5f |ce(AHINA|ME, AHI_|
|000042d0| 4e 4f 5f 55 4e 49 54 2c | 0a 20 20 20 20 20 20 20 |NO_UNIT,|. |
|000042e0| 20 28 73 74 72 75 63 74 | 20 49 4f 52 65 71 75 65 | (struct| IOReque|
|000042f0| 73 74 20 2a 29 20 41 48 | 49 69 6f 2c 20 4e 55 4c |st *) AH|Iio, NUL|
|00004300| 4c 29 29 29 0a 20 20 20 | 20 40 7b 0a 20 20 20 20 |L))). | @{. |
|00004310| 20 20 41 48 49 42 61 73 | 65 20 3d 20 28 73 74 72 | AHIBas|e = (str|
|00004320| 75 63 74 20 4c 69 62 72 | 61 72 79 20 2a 29 20 41 |uct Libr|ary *) A|
|00004330| 48 49 69 6f 2d 3e 61 68 | 69 72 5f 53 74 64 2e 69 |HIio->ah|ir_Std.i|
|00004340| 6f 5f 44 65 76 69 63 65 | 3b 0a 0a 2f 2f 20 41 48 |o_Device|;..// AH|
|00004350| 49 27 73 20 66 75 6e 63 | 74 69 6f 6e 73 20 63 61 |I's func|tions ca|
|00004360| 6e 20 6e 6f 77 20 62 65 | 20 63 61 6c 6c 65 64 20 |n now be| called |
|00004370| 61 73 20 6e 6f 72 6d 61 | 6c 20 6c 69 62 72 61 72 |as norma|l librar|
|00004380| 79 20 66 75 6e 63 74 69 | 6f 6e 73 3a 0a 20 20 20 |y functi|ons:. |
|00004390| 20 20 20 41 48 49 5f 4e | 65 78 74 41 75 64 69 6f | AHI_N|extAudio|
|000043a0| 49 44 28 41 48 49 5f 49 | 4e 56 41 4c 49 44 5f 49 |ID(AHI_I|NVALID_I|
|000043b0| 44 29 3b 0a 0a 20 20 20 | 20 20 20 43 6c 6f 73 65 |D);.. | Close|
|000043c0| 44 65 76 69 63 65 28 28 | 73 74 72 75 63 74 20 49 |Device((|struct I|
|000043d0| 4f 52 65 71 75 65 73 74 | 20 2a 29 20 41 48 49 69 |ORequest| *) AHIi|
|000043e0| 6f 29 3b 0a 20 20 20 20 | 20 20 41 48 49 44 65 76 |o);. | AHIDev|
|000043f0| 69 63 65 20 3d 20 2d 31 | 3b 0a 20 20 20 20 40 7d |ice = -1|;. @}|
|00004400| 0a 20 20 20 20 44 65 6c | 65 74 65 49 4f 52 65 71 |. Del|eteIOReq|
|00004410| 75 65 73 74 28 28 73 74 | 72 75 63 74 20 49 4f 52 |uest((st|ruct IOR|
|00004420| 65 71 75 65 73 74 20 2a | 29 20 41 48 49 69 6f 29 |equest *|) AHIio)|
|00004430| 3b 0a 20 20 20 20 41 48 | 49 69 6f 20 3d 20 4e 55 |;. AH|Iio = NU|
|00004440| 4c 4c 3b 0a 20 20 40 7d | 0a 20 20 44 65 6c 65 74 |LL;. @}|. Delet|
|00004450| 65 4d 73 67 50 6f 72 74 | 28 41 48 49 6d 70 29 3b |eMsgPort|(AHImp);|
|00004460| 0a 20 20 41 48 49 6d 70 | 20 3d 20 4e 55 4c 4c 3b |. AHImp| = NULL;|
|00004470| 0a 40 7d 0a 40 65 6e 64 | 20 65 78 61 6d 70 6c 65 |.@}.@end| example|
|00004480| 0a 0a 0a 0a 40 63 20 2a | 2a 2a 2a 2a 2a 2a 2a 2a |....@c *|********|
|00004490| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000044a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000044b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000044c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 0a 40 |********|******.@|
|000044d0| 63 20 2a 2a 2a 2a 20 4f | 62 74 61 69 6e 69 6e 67 |c **** O|btaining|
|000044e0| 20 54 68 65 20 48 61 72 | 64 77 61 72 65 20 2a 2a | The Har|dware **|
|000044f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00004500| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00004510| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 0a 40 63 20 2a 2a 2a |********|*.@c ***|
|00004520| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00004530| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00004540| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00004550| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00004560| 2a 2a 2a 2a 0a 0a 40 6e | 6f 64 65 20 4f 62 74 61 |****..@n|ode Obta|
|00004570| 69 6e 69 6e 67 20 54 68 | 65 20 48 61 72 64 77 61 |ining Th|e Hardwa|
|00004580| 72 65 2c 20 44 65 63 6c | 61 72 69 6e 67 20 53 6f |re, Decl|aring So|
|00004590| 75 6e 64 73 2c 20 4f 70 | 65 6e 69 6e 67 20 41 6e |unds, Op|ening An|
|000045a0| 64 20 43 6c 6f 73 69 6e | 67 20 61 68 69 2e 64 65 |d Closin|g ahi.de|
|000045b0| 76 69 63 65 20 46 6f 72 | 20 4c 6f 77 2d 6c 65 76 |vice For| Low-lev|
|000045c0| 65 6c 20 41 63 63 65 73 | 73 2c 20 46 75 6e 63 74 |el Acces|s, Funct|
|000045d0| 69 6f 6e 20 49 6e 74 65 | 72 66 61 63 65 0a 40 63 |ion Inte|rface.@c|
|000045e0| 6f 6d 6d 65 6e 74 20 20 | 6e 6f 64 65 2d 6e 61 6d |omment |node-nam|
|000045f0| 65 2c 20 20 6e 65 78 74 | 2c 20 20 70 72 65 76 69 |e, next|, previ|
|00004600| 6f 75 73 2c 20 20 75 70 | 0a 40 73 65 63 74 69 6f |ous, up|.@sectio|
|00004610| 6e 20 4f 62 74 61 69 6e | 69 6e 67 20 54 68 65 20 |n Obtain|ing The |
|00004620| 48 61 72 64 77 61 72 65 | 0a 0a 20 49 66 20 79 6f |Hardware|.. If yo|
|00004630| 75 20 77 69 73 68 20 74 | 6f 20 63 61 6c 6c 20 61 |u wish t|o call a|
|00004640| 6e 79 20 6f 74 68 65 72 | 20 66 75 6e 63 74 69 6f |ny other| functio|
|00004650| 6e 20 74 68 61 6e 0a 0a | 40 69 74 65 6d 69 7a 65 |n than..|@itemize|
|00004660| 20 40 62 75 6c 6c 65 74 | 0a 0a 40 69 74 65 6d 0a | @bullet|..@item.|
|00004670| 40 63 6f 64 65 7b 41 48 | 49 5f 41 6c 6c 6f 63 41 |@code{AH|I_AllocA|
|00004680| 75 64 69 6f 52 65 71 75 | 65 73 74 41 28 29 7d 0a |udioRequ|estA()}.|
|00004690| 0a 40 69 74 65 6d 0a 40 | 63 6f 64 65 7b 41 48 49 |.@item.@|code{AHI|
|000046a0| 5f 41 75 64 69 6f 52 65 | 71 75 65 73 74 41 28 29 |_AudioRe|questA()|
|000046b0| 7d 0a 0a 40 69 74 65 6d | 0a 40 63 6f 64 65 7b 41 |}..@item|.@code{A|
|000046c0| 48 49 5f 42 65 73 74 41 | 75 64 69 6f 49 44 41 28 |HI_BestA|udioIDA(|
|000046d0| 29 7d 0a 0a 40 69 74 65 | 6d 0a 40 63 6f 64 65 7b |)}..@ite|m.@code{|
|000046e0| 41 48 49 5f 46 72 65 65 | 41 75 64 69 6f 52 65 71 |AHI_Free|AudioReq|
|000046f0| 75 65 73 74 28 29 7d 0a | 0a 40 69 74 65 6d 0a 40 |uest()}.|.@item.@|
|00004700| 63 6f 64 65 7b 41 48 49 | 5f 47 65 74 41 75 64 69 |code{AHI|_GetAudi|
|00004710| 6f 41 74 74 72 73 41 28 | 29 7d 0a 0a 40 69 74 65 |oAttrsA(|)}..@ite|
|00004720| 6d 0a 40 63 6f 64 65 7b | 41 48 49 5f 4e 65 78 74 |m.@code{|AHI_Next|
|00004730| 41 75 64 69 6f 49 44 28 | 29 7d 0a 0a 40 69 74 65 |AudioID(|)}..@ite|
|00004740| 6d 0a 40 63 6f 64 65 7b | 41 48 49 5f 53 61 6d 70 |m.@code{|AHI_Samp|
|00004750| 6c 65 46 72 61 6d 65 53 | 69 7a 65 28 29 7d 0a 0a |leFrameS|ize()}..|
|00004760| 40 65 6e 64 20 69 74 65 | 6d 69 7a 65 0a 0a 40 66 |@end ite|mize..@f|
|00004770| 69 6e 64 65 78 20 41 48 | 49 5f 41 6c 6c 6f 63 41 |index AH|I_AllocA|
|00004780| 75 64 69 6f 41 28 29 0a | 40 74 69 6e 64 65 78 20 |udioA().|@tindex |
|00004790| 41 48 49 41 75 64 69 6f | 43 74 72 6c 0a 40 76 69 |AHIAudio|Ctrl.@vi|
|000047a0| 6e 64 65 78 20 61 68 69 | 61 63 5f 55 73 65 72 44 |ndex ahi|ac_UserD|
|000047b0| 61 74 61 0a 0a 40 64 6f | 74 73 7b 7d 79 6f 75 20 |ata..@do|ts{}you |
|000047c0| 68 61 76 65 20 74 6f 20 | 61 6c 6c 6f 63 61 74 65 |have to |allocate|
|000047d0| 20 74 68 65 20 61 63 74 | 75 61 6c 20 73 6f 75 6e | the act|ual soun|
|000047e0| 64 20 68 61 72 64 77 61 | 72 65 2e 20 20 54 68 69 |d hardwa|re. Thi|
|000047f0| 73 20 69 73 20 64 6f 6e | 65 20 77 69 74 68 0a 40 |s is don|e with.@|
|00004800| 63 6f 64 65 7b 41 48 49 | 5f 41 6c 6c 6f 63 41 75 |code{AHI|_AllocAu|
|00004810| 64 69 6f 41 28 29 7d 2e | 20 20 40 63 6f 64 65 7b |dioA()}.| @code{|
|00004820| 41 48 49 5f 41 6c 6c 6f | 63 41 75 64 69 6f 41 28 |AHI_Allo|cAudioA(|
|00004830| 29 7d 20 72 65 74 75 72 | 6e 73 20 61 6e 0a 40 63 |)} retur|ns an.@c|
|00004840| 6f 64 65 7b 41 48 49 41 | 75 64 69 6f 43 74 72 6c |ode{AHIA|udioCtrl|
|00004850| 7d 20 73 74 72 75 63 74 | 75 72 65 2c 20 6f 72 20 |} struct|ure, or |
|00004860| 40 63 6f 64 65 7b 4e 55 | 4c 4c 7d 20 69 66 20 74 |@code{NU|LL} if t|
|00004870| 68 65 20 68 61 72 64 77 | 61 72 65 20 63 6f 75 6c |he hardw|are coul|
|00004880| 64 20 6e 6f 74 20 62 65 | 0a 61 6c 6c 6f 63 61 74 |d not be|.allocat|
|00004890| 65 64 2e 20 20 54 68 65 | 20 40 63 6f 64 65 7b 41 |ed. The| @code{A|
|000048a0| 48 49 41 75 64 69 6f 43 | 74 72 6c 7d 20 73 74 72 |HIAudioC|trl} str|
|000048b0| 75 63 74 75 72 65 20 68 | 61 73 20 6f 6e 6c 79 20 |ucture h|as only |
|000048c0| 6f 6e 65 20 70 75 62 6c | 69 63 20 66 69 65 6c 64 |one publ|ic field|
|000048d0| 2c 0a 40 63 6f 64 65 7b | 61 68 69 61 63 5f 55 73 |,.@code{|ahiac_Us|
|000048e0| 65 72 44 61 74 61 7d 2e | 20 20 54 68 69 73 20 69 |erData}.| This i|
|000048f0| 73 20 75 6e 75 73 65 64 | 20 62 79 20 40 73 63 7b |s unused| by @sc{|
|00004900| 41 68 69 7d 20 61 6e 64 | 20 79 6f 75 20 6d 61 79 |Ahi} and| you may|
|00004910| 20 73 74 6f 72 65 0a 61 | 6e 79 74 68 69 6e 67 20 | store.a|nything |
|00004920| 79 6f 75 20 6c 69 6b 65 | 20 68 65 72 65 2e 0a 0a |you like| here...|
|00004930| 20 49 66 20 40 63 6f 64 | 65 7b 41 48 49 5f 41 6c | If @cod|e{AHI_Al|
|00004940| 6c 6f 63 41 75 64 69 6f | 41 28 29 7d 20 66 61 69 |locAudio|A()} fai|
|00004950| 6c 73 20 69 74 20 69 73 | 20 69 6d 70 6f 72 74 61 |ls it is| importa|
|00004960| 6e 74 20 74 68 61 74 20 | 79 6f 75 20 68 61 6e 64 |nt that |you hand|
|00004970| 6c 65 20 74 68 65 0a 73 | 69 74 75 61 74 69 6f 6e |le the.s|ituation|
|00004980| 20 67 72 61 63 65 66 75 | 6c 6c 79 2e 0a 0a 40 66 | gracefu|lly...@f|
|00004990| 69 6e 64 65 78 20 41 48 | 49 5f 46 72 65 65 41 75 |index AH|I_FreeAu|
|000049a0| 64 69 6f 28 29 0a 0a 20 | 57 68 65 6e 20 79 6f 75 |dio().. |When you|
|000049b0| 20 61 72 65 20 66 69 6e | 69 73 68 65 64 20 70 6c | are fin|ished pl|
|000049c0| 61 79 69 6e 67 20 6f 72 | 20 72 65 63 6f 72 64 69 |aying or| recordi|
|000049d0| 6e 67 2c 20 63 61 6c 6c | 20 40 63 6f 64 65 7b 41 |ng, call| @code{A|
|000049e0| 48 49 5f 46 72 65 65 41 | 75 64 69 6f 28 29 7d 20 |HI_FreeA|udio()} |
|000049f0| 74 6f 0a 64 65 61 6c 6c | 6f 63 61 74 65 20 74 68 |to.deall|ocate th|
|00004a00| 65 20 68 61 72 64 77 61 | 72 65 20 61 6e 64 20 6f |e hardwa|re and o|
|00004a10| 74 68 65 72 20 72 65 73 | 6f 75 72 63 65 73 20 61 |ther res|ources a|
|00004a20| 6c 6c 6f 63 61 74 65 64 | 20 62 79 0a 40 63 6f 64 |llocated| by.@cod|
|00004a30| 65 7b 41 48 49 5f 41 6c | 6c 6f 63 41 75 64 69 6f |e{AHI_Al|locAudio|
|00004a40| 41 28 29 7d 2e 20 20 40 | 63 6f 64 65 7b 41 48 49 |A()}. @|code{AHI|
|00004a50| 5f 46 72 65 65 41 75 64 | 69 6f 28 29 7d 20 61 6c |_FreeAud|io()} al|
|00004a60| 73 6f 20 64 65 61 6c 6c | 6f 63 61 74 65 73 20 61 |so deall|ocates a|
|00004a70| 6c 6c 0a 6c 6f 61 64 65 | 64 20 73 6f 75 6e 64 73 |ll.loade|d sounds|
|00004a80| 20 28 40 70 78 72 65 66 | 7b 44 65 63 6c 61 72 69 | (@pxref|{Declari|
|00004a90| 6e 67 20 53 6f 75 6e 64 | 73 7d 29 2e 0a 0a 0a 40 |ng Sound|s})....@|
|00004aa0| 73 75 62 73 65 63 74 69 | 6f 6e 20 40 63 6f 64 65 |subsecti|on @code|
|00004ab0| 7b 41 48 49 5f 41 6c 6c | 6f 63 41 75 64 69 6f 41 |{AHI_All|ocAudioA|
|00004ac0| 28 29 7d 20 54 61 67 73 | 0a 0a 40 63 6f 64 65 7b |()} Tags|..@code{|
|00004ad0| 41 48 49 5f 41 6c 6c 6f | 63 41 75 64 69 6f 41 28 |AHI_Allo|cAudioA(|
|00004ae0| 29 7d 20 74 61 6b 65 73 | 20 73 65 76 65 72 61 6c |)} takes| several|
|00004af0| 20 74 61 67 73 20 61 73 | 20 69 6e 70 75 74 2e 0a | tags as| input..|
|00004b00| 0a 40 76 74 61 62 6c 65 | 20 40 63 6f 64 65 0a 0a |.@vtable| @code..|
|00004b10| 40 76 69 6e 64 65 78 20 | 41 48 49 5f 44 45 46 41 |@vindex |AHI_DEFA|
|00004b20| 55 4c 54 5f 49 44 0a 0a | 40 69 74 65 6d 20 41 48 |ULT_ID..|@item AH|
|00004b30| 49 41 5f 41 75 64 69 6f | 49 44 0a 54 68 69 73 20 |IA_Audio|ID.This |
|00004b40| 69 73 20 74 68 65 20 61 | 75 64 69 6f 20 6d 6f 64 |is the a|udio mod|
|00004b50| 65 20 74 6f 20 62 65 20 | 75 73 65 64 2e 20 20 59 |e to be |used. Y|
|00004b60| 6f 75 20 6d 75 73 74 20 | 6e 6f 74 20 75 73 65 20 |ou must |not use |
|00004b70| 61 6e 79 20 68 61 72 64 | 63 6f 64 65 64 20 76 61 |any hard|coded va|
|00004b80| 6c 75 65 73 0a 6f 74 68 | 65 72 20 74 68 61 6e 20 |lues.oth|er than |
|00004b90| 40 63 6f 64 65 7b 41 48 | 49 5f 44 45 46 41 55 4c |@code{AH|I_DEFAUL|
|00004ba0| 54 5f 49 44 7d 2c 20 77 | 68 69 63 68 20 69 73 20 |T_ID}, w|hich is |
|00004bb0| 74 68 65 20 75 73 65 72 | 27 73 20 64 65 66 61 75 |the user|'s defau|
|00004bc0| 6c 74 20 66 61 6c 6c 62 | 61 63 6b 20 49 44 2e 0a |lt fallb|ack ID..|
|00004bd0| 49 6e 20 6d 6f 73 74 20 | 63 61 73 65 73 20 79 6f |In most |cases yo|
|00004be0| 75 20 73 68 6f 75 6c 64 | 20 61 73 6b 20 74 68 65 |u should| ask the|
|00004bf0| 20 75 73 65 72 20 66 6f | 72 20 61 6e 20 49 44 20 | user fo|r an ID |
|00004c00| 63 6f 64 65 20 28 77 69 | 74 68 0a 40 63 6f 64 65 |code (wi|th.@code|
|00004c10| 7b 41 48 49 5f 41 75 64 | 69 6f 52 65 71 75 65 73 |{AHI_Aud|ioReques|
|00004c20| 74 41 28 29 7d 29 20 61 | 6e 64 20 74 68 65 6e 20 |tA()}) a|nd then |
|00004c30| 73 74 6f 72 65 20 74 68 | 65 20 76 61 6c 75 65 20 |store th|e value |
|00004c40| 69 6e 20 79 6f 75 72 20 | 73 65 74 74 69 6e 67 73 |in your |settings|
|00004c50| 20 66 69 6c 65 2e 0a 0a | 40 76 69 6e 64 65 78 20 | file...|@vindex |
|00004c60| 41 48 49 5f 44 45 46 41 | 55 4c 54 5f 46 52 45 51 |AHI_DEFA|ULT_FREQ|
|00004c70| 0a 0a 40 69 74 65 6d 20 | 41 48 49 41 5f 4d 69 78 |..@item |AHIA_Mix|
|00004c80| 46 72 65 71 0a 54 68 69 | 73 20 69 73 20 74 68 65 |Freq.Thi|s is the|
|00004c90| 20 6d 69 78 69 6e 67 20 | 66 72 65 71 75 65 6e 63 | mixing |frequenc|
|00004ca0| 79 20 74 6f 20 62 65 20 | 75 73 65 64 2e 20 20 54 |y to be |used. T|
|00004cb0| 68 65 20 61 63 74 75 61 | 6c 20 66 72 65 71 75 65 |he actua|l freque|
|00004cc0| 6e 63 79 20 77 69 6c 6c | 20 62 65 0a 72 6f 75 6e |ncy will| be.roun|
|00004cd0| 64 65 64 20 74 6f 20 74 | 68 65 20 6e 65 61 72 65 |ded to t|he neare|
|00004ce0| 73 74 20 66 72 65 71 75 | 65 6e 63 79 20 73 75 70 |st frequ|ency sup|
|00004cf0| 70 6f 72 74 65 64 20 62 | 79 20 74 68 65 20 73 6f |ported b|y the so|
|00004d00| 75 6e 64 20 68 61 72 64 | 77 61 72 65 2e 20 20 54 |und hard|ware. T|
|00004d10| 6f 20 66 69 6e 64 0a 74 | 68 65 20 61 63 74 75 61 |o find.t|he actua|
|00004d20| 6c 20 66 72 65 71 75 65 | 6e 63 79 2c 20 75 73 65 |l freque|ncy, use|
|00004d30| 20 40 63 6f 64 65 7b 41 | 48 49 5f 47 65 74 41 75 | @code{A|HI_GetAu|
|00004d40| 64 69 6f 41 74 74 72 73 | 41 28 29 7d 2e 20 20 49 |dioAttrs|A()}. I|
|00004d50| 66 20 6f 6d 69 74 74 65 | 64 20 6f 72 0a 40 63 6f |f omitte|d or.@co|
|00004d60| 64 65 7b 41 48 49 5f 44 | 45 46 41 55 4c 54 5f 46 |de{AHI_D|EFAULT_F|
|00004d70| 52 45 51 7d 2c 20 74 68 | 65 20 75 73 65 72 27 73 |REQ}, th|e user's|
|00004d80| 20 70 72 65 66 65 72 72 | 65 64 20 66 61 6c 6c 62 | preferr|ed fallb|
|00004d90| 61 63 6b 20 66 72 65 71 | 75 65 6e 63 79 20 77 69 |ack freq|uency wi|
|00004da0| 6c 6c 20 62 65 0a 75 73 | 65 64 2e 20 20 49 6e 20 |ll be.us|ed. In |
|00004db0| 6d 6f 73 74 20 63 61 73 | 65 73 20 79 6f 75 20 73 |most cas|es you s|
|00004dc0| 68 6f 75 6c 64 20 61 73 | 6b 20 74 68 65 20 75 73 |hould as|k the us|
|00004dd0| 65 72 20 66 6f 72 20 61 | 20 66 72 65 71 75 65 6e |er for a| frequen|
|00004de0| 63 79 20 28 77 69 74 68 | 0a 40 63 6f 64 65 7b 41 |cy (with|.@code{A|
|00004df0| 48 49 5f 41 75 64 69 6f | 52 65 71 75 65 73 74 41 |HI_Audio|RequestA|
|00004e00| 28 29 7d 29 20 61 6e 64 | 20 74 68 65 6e 20 73 74 |()}) and| then st|
|00004e10| 6f 72 65 20 74 68 65 20 | 76 61 6c 75 65 20 69 6e |ore the |value in|
|00004e20| 20 79 6f 75 72 20 73 65 | 74 74 69 6e 67 73 20 66 | your se|ttings f|
|00004e30| 69 6c 65 2e 0a 0a 40 69 | 74 65 6d 20 41 48 49 41 |ile...@i|tem AHIA|
|00004e40| 5f 43 68 61 6e 6e 65 6c | 73 0a 41 6c 6c 20 73 6f |_Channel|s.All so|
|00004e50| 75 6e 64 73 20 61 72 65 | 20 70 6c 61 79 65 64 20 |unds are| played |
|00004e60| 6f 6e 20 61 20 40 64 66 | 6e 7b 63 68 61 6e 6e 65 |on a @df|n{channe|
|00004e70| 6c 7d 2c 20 61 6e 64 20 | 74 68 69 73 20 74 61 67 |l}, and |this tag|
|00004e80| 20 73 65 6c 65 63 74 73 | 20 68 6f 77 20 6d 61 6e | selects| how man|
|00004e90| 79 20 79 6f 75 0a 77 69 | 73 68 20 74 6f 20 75 73 |y you.wi|sh to us|
|00004ea0| 65 2e 20 20 49 6e 20 67 | 65 6e 65 72 61 6c 20 69 |e. In g|eneral i|
|00004eb0| 74 20 74 61 6b 65 73 20 | 6d 6f 72 65 20 43 50 55 |t takes |more CPU|
|00004ec0| 20 70 6f 77 65 72 20 74 | 68 65 20 6d 6f 72 65 20 | power t|he more |
|00004ed0| 63 68 61 6e 6e 65 6c 73 | 20 79 6f 75 20 75 73 65 |channels| you use|
|00004ee0| 0a 61 6e 64 20 74 68 65 | 20 76 6f 6c 75 6d 65 20 |.and the| volume |
|00004ef0| 67 65 74 73 20 6c 6f 77 | 65 72 20 61 6e 64 20 6c |gets low|er and l|
|00004f00| 6f 77 65 72 2e 0a 0a 40 | 69 74 65 6d 20 41 48 49 |ower...@|item AHI|
|00004f10| 41 5f 53 6f 75 6e 64 73 | 0a 59 6f 75 20 6d 75 73 |A_Sounds|.You mus|
|00004f20| 74 20 74 65 6c 6c 20 40 | 73 63 7b 41 68 69 7d 20 |t tell @|sc{Ahi} |
|00004f30| 68 6f 77 20 6d 61 6e 79 | 20 64 69 66 66 65 72 65 |how many| differe|
|00004f40| 6e 74 20 73 6f 75 6e 64 | 73 20 79 6f 75 20 61 72 |nt sound|s you ar|
|00004f50| 65 20 67 6f 69 6e 67 20 | 74 6f 20 70 6c 61 79 2e |e going |to play.|
|00004f60| 0a 40 78 72 65 66 7b 44 | 65 63 6c 61 72 69 6e 67 |.@xref{D|eclaring|
|00004f70| 20 53 6f 75 6e 64 73 7d | 20 66 6f 72 20 6d 6f 72 | Sounds}| for mor|
|00004f80| 65 20 69 6e 66 6f 72 6d | 61 74 69 6f 6e 2e 0a 0a |e inform|ation...|
|00004f90| 40 74 69 6e 64 65 78 20 | 41 48 49 53 6f 75 6e 64 |@tindex |AHISound|
|00004fa0| 4d 65 73 73 61 67 65 0a | 40 76 69 6e 64 65 78 20 |Message.|@vindex |
|00004fb0| 61 68 69 73 6d 5f 43 68 | 61 6e 6e 65 6c 0a 0a 40 |ahism_Ch|annel..@|
|00004fc0| 69 74 65 6d 20 41 48 49 | 41 5f 53 6f 75 6e 64 46 |item AHI|A_SoundF|
|00004fd0| 75 6e 63 0a 57 69 74 68 | 20 74 68 69 73 20 74 61 |unc.With| this ta|
|00004fe0| 67 20 79 6f 75 20 74 65 | 6c 6c 20 40 73 63 7b 41 |g you te|ll @sc{A|
|00004ff0| 68 69 7d 20 74 6f 20 63 | 61 6c 6c 20 61 20 68 6f |hi} to c|all a ho|
|00005000| 6f 6b 20 77 68 65 6e 20 | 61 20 73 6f 75 6e 64 20 |ok when |a sound |
|00005010| 68 61 73 20 62 65 65 6e | 0a 73 74 61 72 74 65 64 |has been|.started|
|00005020| 2e 20 20 49 74 20 77 6f | 72 6b 73 20 6a 75 73 74 |. It wo|rks just|
|00005030| 20 6c 69 6b 65 20 50 61 | 75 6c 61 27 73 20 61 75 | like Pa|ula's au|
|00005040| 64 69 6f 20 69 6e 74 65 | 72 72 75 70 74 73 2e 20 |dio inte|rrupts. |
|00005050| 20 54 68 65 20 68 6f 6f | 6b 20 72 65 63 65 69 76 | The hoo|k receiv|
|00005060| 65 73 20 61 6e 0a 40 63 | 6f 64 65 7b 41 48 49 53 |es an.@c|ode{AHIS|
|00005070| 6f 75 6e 64 4d 65 73 73 | 61 67 65 7d 20 73 74 72 |oundMess|age} str|
|00005080| 75 63 74 75 72 65 20 61 | 73 20 6d 65 73 73 61 67 |ucture a|s messag|
|00005090| 65 2e 0a 40 63 6f 64 65 | 7b 41 48 49 53 6f 75 6e |e..@code|{AHISoun|
|000050a0| 64 4d 65 73 73 61 67 65 | 2d 3e 61 68 69 73 6d 5f |dMessage|->ahism_|
|000050b0| 43 68 61 6e 6e 65 6c 7d | 20 69 6e 64 69 63 61 74 |Channel}| indicat|
|000050c0| 65 73 20 77 68 69 63 68 | 20 63 68 61 6e 6e 65 6c |es which| channel|
|000050d0| 20 74 68 65 20 73 6f 75 | 6e 64 0a 74 68 61 74 20 | the sou|nd.that |
|000050e0| 63 61 75 73 65 64 20 74 | 68 65 20 68 6f 6f 6b 20 |caused t|he hook |
|000050f0| 74 6f 20 62 65 20 63 61 | 6c 6c 65 64 20 69 73 20 |to be ca|lled is |
|00005100| 70 6c 61 79 65 64 20 6f | 6e 2e 0a 0a 40 69 74 65 |played o|n...@ite|
|00005110| 6d 20 41 48 49 41 5f 50 | 6c 61 79 65 72 46 75 6e |m AHIA_P|layerFun|
|00005120| 63 0a 49 66 20 79 6f 75 | 20 61 72 65 20 67 6f 69 |c.If you| are goi|
|00005130| 6e 67 20 74 6f 20 70 6c | 61 79 20 61 20 6d 75 73 |ng to pl|ay a mus|
|00005140| 69 63 61 6c 20 73 63 6f | 72 65 2c 20 79 6f 75 20 |ical sco|re, you |
|00005150| 73 68 6f 75 6c 64 20 75 | 73 65 20 74 68 69 73 20 |should u|se this |
|00005160| 60 60 69 6e 74 65 72 72 | 75 70 74 27 27 0a 73 6f |``interr|upt''.so|
|00005170| 75 72 63 65 20 69 6e 73 | 74 65 61 64 20 6f 66 20 |urce ins|tead of |
|00005180| 56 42 4c 41 4e 4b 20 6f | 72 20 43 49 41 20 74 69 |VBLANK o|r CIA ti|
|00005190| 6d 65 72 73 20 69 6e 20 | 6f 72 64 65 72 20 74 6f |mers in |order to|
|000051a0| 20 67 65 74 20 74 68 65 | 20 62 65 73 74 20 72 65 | get the| best re|
|000051b0| 73 75 6c 74 20 77 69 74 | 68 0a 61 6c 6c 20 61 75 |sult wit|h.all au|
|000051c0| 64 69 6f 20 64 72 69 76 | 65 72 73 2e 20 20 49 66 |dio driv|ers. If|
|000051d0| 20 79 6f 75 20 63 61 6e | 6e 6f 74 20 75 73 65 20 | you can|not use |
|000051e0| 74 68 69 73 2c 20 79 6f | 75 20 6d 75 73 74 20 6e |this, yo|u must n|
|000051f0| 6f 74 20 75 73 65 20 61 | 6e 79 0a 60 60 6e 6f 6e |ot use a|ny.``non|
|00005200| 2d 72 65 61 6c 74 69 6d | 65 27 27 20 6d 6f 64 65 |-realtim|e'' mode|
|00005210| 73 20 28 73 65 65 20 40 | 63 6f 64 65 7b 41 48 49 |s (see @|code{AHI|
|00005220| 5f 47 65 74 41 75 64 69 | 6f 41 74 74 72 73 41 28 |_GetAudi|oAttrsA(|
|00005230| 29 7d 20 69 6e 20 74 68 | 65 20 61 75 74 6f 64 6f |)} in th|e autodo|
|00005240| 63 73 2c 0a 74 68 65 20 | 40 63 6f 64 65 7b 41 48 |cs,.the |@code{AH|
|00005250| 49 44 42 5f 52 65 61 6c | 74 69 6d 65 7d 20 74 61 |IDB_Real|time} ta|
|00005260| 67 29 2e 0a 0a 40 69 74 | 65 6d 20 41 48 49 41 5f |g)...@it|em AHIA_|
|00005270| 50 6c 61 79 65 72 46 72 | 65 71 0a 49 66 20 6e 6f |PlayerFr|eq.If no|
|00005280| 6e 2d 7a 65 72 6f 2c 20 | 69 74 20 65 6e 61 62 6c |n-zero, |it enabl|
|00005290| 65 73 20 74 69 6d 69 6e | 67 20 61 6e 64 20 73 70 |es timin|g and sp|
|000052a0| 65 63 69 66 69 65 73 20 | 68 6f 77 20 6d 61 6e 79 |ecifies |how many|
|000052b0| 20 74 69 6d 65 73 20 70 | 65 72 20 73 65 63 6f 6e | times p|er secon|
|000052c0| 64 0a 40 63 6f 64 65 7b | 50 6c 61 79 65 72 46 75 |d.@code{|PlayerFu|
|000052d0| 6e 63 7d 20 77 69 6c 6c | 20 62 65 20 63 61 6c 6c |nc} will| be call|
|000052e0| 65 64 2e 20 20 54 68 69 | 73 20 6d 75 73 74 20 62 |ed. Thi|s must b|
|000052f0| 65 20 73 70 65 63 69 66 | 69 65 64 20 69 66 0a 40 |e specif|ied if.@|
|00005300| 63 6f 64 65 7b 41 48 49 | 41 5f 50 6c 61 79 65 72 |code{AHI|A_Player|
|00005310| 46 75 6e 63 7d 20 69 73 | 21 20 20 49 74 20 69 73 |Func} is|! It is|
|00005320| 20 73 75 67 67 65 73 74 | 65 64 20 74 68 61 74 20 | suggest|ed that |
|00005330| 79 6f 75 20 6b 65 65 70 | 20 74 68 65 20 66 72 65 |you keep| the fre|
|00005340| 71 75 65 6e 63 79 0a 62 | 65 6c 6f 77 20 31 30 30 |quency.b|elow 100|
|00005350| 2d 32 30 30 20 48 7a 2e | 20 20 53 69 6e 63 65 20 |-200 Hz.| Since |
|00005360| 74 68 65 20 66 72 65 71 | 75 65 6e 63 79 20 69 73 |the freq|uency is|
|00005370| 20 61 20 66 69 78 70 6f | 69 6e 74 20 6e 75 6d 62 | a fixpo|int numb|
|00005380| 65 72 0a 40 63 6f 64 65 | 7b 41 48 49 41 5f 50 6c |er.@code|{AHIA_Pl|
|00005390| 61 79 65 72 46 72 65 71 | 7d 20 73 68 6f 75 6c 64 |ayerFreq|} should|
|000053a0| 20 62 65 20 6c 65 73 73 | 20 74 68 61 6e 20 31 33 | be less| than 13|
|000053b0| 31 30 37 32 30 30 20 28 | 74 68 61 74 27 73 20 32 |107200 (|that's 2|
|000053c0| 30 30 20 48 7a 29 2e 0a | 0a 40 69 74 65 6d 20 41 |00 Hz)..|.@item A|
|000053d0| 48 49 41 5f 4d 69 6e 50 | 6c 61 79 65 72 46 72 65 |HIA_MinP|layerFre|
|000053e0| 71 0a 54 68 65 20 6d 69 | 6e 69 6d 75 6d 20 66 72 |q.The mi|nimum fr|
|000053f0| 65 71 75 65 6e 63 79 20 | 28 40 63 6f 64 65 7b 41 |equency |(@code{A|
|00005400| 48 49 41 5f 50 6c 61 79 | 65 72 46 72 65 71 7d 29 |HIA_Play|erFreq})|
|00005410| 20 79 6f 75 20 77 69 6c | 6c 20 75 73 65 2e 20 20 | you wil|l use. |
|00005420| 59 6f 75 20 73 68 6f 75 | 6c 64 0a 61 6c 77 61 79 |You shou|ld.alway|
|00005430| 73 20 73 75 70 70 6c 79 | 20 74 68 69 73 20 69 66 |s supply| this if|
|00005440| 20 79 6f 75 20 61 72 65 | 20 75 73 69 6e 67 20 74 | you are| using t|
|00005450| 68 65 20 64 65 76 69 63 | 65 27 73 20 69 6e 74 65 |he devic|e's inte|
|00005460| 72 72 75 70 74 20 66 65 | 61 74 75 72 65 21 0a 0a |rrupt fe|ature!..|
|00005470| 40 69 74 65 6d 20 41 48 | 49 41 5f 4d 61 78 50 6c |@item AH|IA_MaxPl|
|00005480| 61 79 65 72 46 72 65 71 | 0a 54 68 65 20 6d 61 78 |ayerFreq|.The max|
|00005490| 69 6d 75 6d 20 66 72 65 | 71 75 65 6e 63 79 20 28 |imum fre|quency (|
|000054a0| 40 63 6f 64 65 7b 41 48 | 49 41 5f 50 6c 61 79 65 |@code{AH|IA_Playe|
|000054b0| 72 46 72 65 71 7d 29 20 | 79 6f 75 20 77 69 6c 6c |rFreq}) |you will|
|000054c0| 20 75 73 65 2e 20 20 59 | 6f 75 20 73 68 6f 75 6c | use. Y|ou shoul|
|000054d0| 64 0a 61 6c 77 61 79 73 | 20 73 75 70 70 6c 79 20 |d.always| supply |
|000054e0| 74 68 69 73 20 69 66 20 | 79 6f 75 20 61 72 65 20 |this if |you are |
|000054f0| 75 73 69 6e 67 20 74 68 | 65 20 64 65 76 69 63 65 |using th|e device|
|00005500| 27 73 20 69 6e 74 65 72 | 72 75 70 74 20 66 65 61 |'s inter|rupt fea|
|00005510| 74 75 72 65 21 0a 0a 40 | 69 74 65 6d 20 41 48 49 |ture!..@|item AHI|
|00005520| 41 5f 52 65 63 6f 72 64 | 46 75 6e 63 0a 54 68 69 |A_Record|Func.Thi|
|00005530| 73 20 68 6f 6f 6b 20 77 | 69 6c 6c 20 62 65 20 63 |s hook w|ill be c|
|00005540| 61 6c 6c 65 64 20 72 65 | 67 75 6c 61 72 6c 79 20 |alled re|gularly |
|00005550| 77 68 65 6e 20 73 61 6d | 70 6c 69 6e 67 20 69 73 |when sam|pling is|
|00005560| 20 74 75 72 6e 65 64 20 | 6f 6e 20 28 73 65 65 0a | turned |on (see.|
|00005570| 40 63 6f 64 65 7b 41 48 | 49 5f 43 6f 6e 74 72 6f |@code{AH|I_Contro|
|00005580| 6c 41 75 64 69 6f 41 28 | 29 7d 29 2e 20 20 49 74 |lAudioA(|)}). It|
|00005590| 20 69 73 20 69 6d 70 6f | 72 74 61 6e 74 20 74 68 | is impo|rtant th|
|000055a0| 61 74 20 79 6f 75 20 61 | 6c 77 61 79 73 20 63 68 |at you a|lways ch|
|000055b0| 65 63 6b 20 74 68 65 0a | 66 6f 72 6d 61 74 20 6f |eck the.|format o|
|000055c0| 66 20 74 68 65 20 73 61 | 6d 70 6c 65 64 20 64 61 |f the sa|mpled da|
|000055d0| 74 61 2c 20 61 6e 64 20 | 69 67 6e 6f 72 65 20 69 |ta, and |ignore i|
|000055e0| 74 20 69 66 20 79 6f 75 | 20 63 61 6e 27 74 20 70 |t if you| can't p|
|000055f0| 61 72 73 65 20 69 74 2e | 20 20 53 69 6e 63 65 0a |arse it.| Since.|
|00005600| 74 68 69 73 20 68 6f 6f | 6b 20 6d 61 79 20 62 65 |this hoo|k may be|
|00005610| 20 63 61 6c 6c 65 64 20 | 66 72 6f 6d 20 61 6e 20 | called |from an |
|00005620| 69 6e 74 65 72 72 75 70 | 74 2c 20 69 74 20 69 73 |interrup|t, it is|
|00005630| 20 6e 6f 74 20 6c 65 67 | 61 6c 20 74 6f 20 64 69 | not leg|al to di|
|00005640| 72 65 63 74 6c 79 0a 40 | 63 6f 64 65 7b 57 72 69 |rectly.@|code{Wri|
|00005650| 74 65 28 29 7d 20 74 68 | 65 20 62 75 66 66 65 72 |te()} th|e buffer|
|00005660| 20 74 6f 20 64 69 73 6b | 2e 20 20 54 6f 20 72 65 | to disk|. To re|
|00005670| 63 6f 72 64 20 64 69 72 | 65 63 74 6c 79 20 74 6f |cord dir|ectly to|
|00005680| 20 68 61 72 64 64 69 73 | 6b 20 79 6f 75 0a 68 61 | harddis|k you.ha|
|00005690| 76 65 20 74 6f 20 63 6f | 70 79 20 74 68 65 20 73 |ve to co|py the s|
|000056a0| 61 6d 70 6c 65 73 20 74 | 6f 20 61 6e 6f 74 68 65 |amples t|o anothe|
|000056b0| 72 20 62 75 66 66 65 72 | 20 61 6e 64 20 73 69 67 |r buffer| and sig|
|000056c0| 6e 61 6c 20 61 20 70 72 | 6f 63 65 73 73 20 74 6f |nal a pr|ocess to|
|000056d0| 20 73 61 76 65 20 69 74 | 2e 0a 54 6f 20 66 69 6e | save it|..To fin|
|000056e0| 64 20 6f 75 74 20 74 68 | 65 20 72 65 71 75 69 72 |d out th|e requir|
|000056f0| 65 64 20 73 69 7a 65 20 | 6f 66 20 74 68 65 20 62 |ed size |of the b|
|00005700| 75 66 66 65 72 2c 20 73 | 65 65 0a 40 63 6f 64 65 |uffer, s|ee.@code|
|00005710| 7b 41 48 49 5f 47 65 74 | 41 75 64 69 6f 41 74 74 |{AHI_Get|AudioAtt|
|00005720| 72 73 41 28 29 7d 20 69 | 6e 20 74 68 65 20 61 75 |rsA()} i|n the au|
|00005730| 74 6f 64 6f 63 73 2c 20 | 74 68 65 0a 40 63 6f 64 |todocs, |the.@cod|
|00005740| 65 7b 41 48 49 44 42 5f | 4d 61 78 52 65 63 6f 72 |e{AHIDB_|MaxRecor|
|00005750| 64 53 61 6d 70 6c 65 73 | 7d 20 74 61 67 2e 0a 0a |dSamples|} tag...|
|00005760| 40 76 69 6e 64 65 78 20 | 61 68 69 61 63 5f 55 73 |@vindex |ahiac_Us|
|00005770| 65 72 44 61 74 61 0a 0a | 40 69 74 65 6d 20 41 48 |erData..|@item AH|
|00005780| 49 41 5f 55 73 65 72 44 | 61 74 61 0a 43 61 6e 20 |IA_UserD|ata.Can |
|00005790| 62 65 20 75 73 65 64 20 | 74 6f 20 69 6e 69 74 69 |be used |to initi|
|000057a0| 61 6c 69 7a 65 20 74 68 | 65 20 40 63 6f 64 65 7b |alize th|e @code{|
|000057b0| 61 68 69 61 63 5f 55 73 | 65 72 44 61 74 61 7d 20 |ahiac_Us|erData} |
|000057c0| 66 69 65 6c 64 2e 20 20 | 59 6f 75 20 64 6f 20 6e |field. |You do n|
|000057d0| 6f 74 20 68 61 76 65 0a | 74 6f 20 75 73 65 20 74 |ot have.|to use t|
|000057e0| 68 69 73 20 74 61 67 20 | 74 6f 20 63 68 61 6e 67 |his tag |to chang|
|000057f0| 65 20 40 63 6f 64 65 7b | 61 68 69 61 63 5f 55 73 |e @code{|ahiac_Us|
|00005800| 65 72 44 61 74 61 7d 2c | 20 79 6f 75 20 6d 61 79 |erData},| you may|
|00005810| 20 77 72 69 74 65 20 74 | 6f 20 69 74 0a 64 69 72 | write t|o it.dir|
|00005820| 65 63 74 6c 79 2e 0a 0a | 40 65 6e 64 20 76 74 61 |ectly...|@end vta|
|00005830| 62 6c 65 0a 0a 40 63 20 | 2a 2a 2a 2a 2a 2a 2a 2a |ble..@c |********|
|00005840| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00005850| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00005860| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00005870| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 0a |********|*******.|
|00005880| 40 63 20 2a 2a 2a 2a 20 | 44 65 63 6c 61 72 69 6e |@c **** |Declarin|
|00005890| 67 20 53 6f 75 6e 64 73 | 20 2a 2a 2a 2a 2a 2a 2a |g Sounds| *******|
|000058a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000058b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000058c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 0a 40 63 20 2a 2a |********|**.@c **|
|000058d0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000058e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000058f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00005900| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00005910| 2a 2a 2a 2a 2a 0a 0a 40 | 6e 6f 64 65 20 44 65 63 |*****..@|node Dec|
|00005920| 6c 61 72 69 6e 67 20 53 | 6f 75 6e 64 73 2c 20 4d |laring S|ounds, M|
|00005930| 61 6b 69 6e 67 20 4e 6f | 69 73 65 2c 20 4f 62 74 |aking No|ise, Obt|
|00005940| 61 69 6e 69 6e 67 20 54 | 68 65 20 48 61 72 64 77 |aining T|he Hardw|
|00005950| 61 72 65 2c 20 46 75 6e | 63 74 69 6f 6e 20 49 6e |are, Fun|ction In|
|00005960| 74 65 72 66 61 63 65 0a | 40 63 6f 6d 6d 65 6e 74 |terface.|@comment|
|00005970| 20 20 6e 6f 64 65 2d 6e | 61 6d 65 2c 20 20 6e 65 | node-n|ame, ne|
|00005980| 78 74 2c 20 20 70 72 65 | 76 69 6f 75 73 2c 20 20 |xt, pre|vious, |
|00005990| 75 70 0a 40 73 65 63 74 | 69 6f 6e 20 44 65 63 6c |up.@sect|ion Decl|
|000059a0| 61 72 69 6e 67 20 53 6f | 75 6e 64 73 0a 0a 40 63 |aring So|unds..@c|
|000059b0| 69 6e 64 65 78 20 4c 6f | 61 64 69 6e 67 20 53 6f |index Lo|ading So|
|000059c0| 75 6e 64 73 0a 40 63 69 | 6e 64 65 78 20 55 6e 6c |unds.@ci|ndex Unl|
|000059d0| 6f 61 64 69 6e 67 20 53 | 6f 75 6e 64 73 0a 0a 40 |oading S|ounds..@|
|000059e0| 66 69 6e 64 65 78 20 41 | 48 49 5f 4c 6f 61 64 53 |findex A|HI_LoadS|
|000059f0| 6f 75 6e 64 28 29 0a 0a | 42 65 66 6f 72 65 20 79 |ound()..|Before y|
|00005a00| 6f 75 20 63 61 6e 20 70 | 6c 61 79 20 61 20 73 61 |ou can p|lay a sa|
|00005a10| 6d 70 6c 65 20 61 72 72 | 61 79 2c 20 79 6f 75 20 |mple arr|ay, you |
|00005a20| 6d 75 73 74 20 40 63 6f | 64 65 7b 41 48 49 5f 4c |must @co|de{AHI_L|
|00005a30| 6f 61 64 53 6f 75 6e 64 | 28 29 7d 20 69 74 2e 0a |oadSound|()} it..|
|00005a40| 57 68 79 3f 20 20 42 65 | 63 61 75 73 65 20 69 66 |Why? Be|cause if|
|00005a50| 20 40 73 63 7b 41 68 69 | 7d 20 6b 6e 6f 77 73 20 | @sc{Ahi|} knows |
|00005a60| 77 68 61 74 20 6b 69 6e | 64 20 6f 66 20 73 6f 75 |what kin|d of sou|
|00005a70| 6e 64 73 20 74 68 61 74 | 20 77 69 6c 6c 20 62 65 |nds that| will be|
|00005a80| 20 70 6c 61 79 65 64 0a | 6c 61 74 65 72 2c 20 74 | played.|later, t|
|00005a90| 61 62 6c 65 73 20 61 6e | 64 20 73 74 75 66 66 20 |ables an|d stuff |
|00005aa0| 63 61 6e 20 62 65 20 73 | 65 74 20 75 70 20 69 6e |can be s|et up in|
|00005ab0| 20 61 64 76 61 6e 63 65 | 2e 20 20 53 6f 6d 65 20 | advance|. Some |
|00005ac0| 64 72 69 76 65 72 73 20 | 6d 61 79 20 65 76 65 6e |drivers |may even|
|00005ad0| 0a 75 70 6c 6f 61 64 20 | 74 68 65 20 73 61 6d 70 |.upload |the samp|
|00005ae0| 6c 65 73 20 74 6f 20 74 | 68 65 20 73 6f 75 6e 64 |les to t|he sound|
|00005af0| 20 63 61 72 64 73 20 6c | 6f 63 61 6c 20 52 41 4d | cards l|ocal RAM|
|00005b00| 20 61 6e 64 20 70 6c 61 | 79 20 61 6c 6c 20 73 61 | and pla|y all sa|
|00005b10| 6d 70 6c 65 73 20 66 72 | 6f 6d 0a 74 68 65 72 65 |mples fr|om.there|
|00005b20| 2c 20 64 72 61 73 74 69 | 63 61 6c 6c 79 20 72 65 |, drasti|cally re|
|00005b30| 64 75 63 69 6e 67 20 43 | 50 55 20 61 6e 64 20 62 |ducing C|PU and b|
|00005b40| 75 73 20 6c 6f 61 64 2e | 0a 0a 59 6f 75 20 73 68 |us load.|..You sh|
|00005b50| 6f 75 6c 64 20 40 63 6f | 64 65 7b 41 48 49 5f 4c |ould @co|de{AHI_L|
|00005b60| 6f 61 64 53 6f 75 6e 64 | 28 29 7d 20 74 68 65 20 |oadSound|()} the |
|00005b70| 6d 6f 73 74 20 69 6d 70 | 6f 72 74 61 6e 74 20 73 |most imp|ortant s|
|00005b80| 6f 75 6e 64 73 20 66 69 | 72 73 74 2c 20 73 69 6e |ounds fi|rst, sin|
|00005b90| 63 65 0a 74 68 65 20 73 | 6f 75 6e 64 20 63 61 72 |ce.the s|ound car|
|00005ba0| 64 73 20 52 41 4d 20 6d | 61 79 20 6e 6f 74 20 62 |ds RAM m|ay not b|
|00005bb0| 65 20 6c 61 72 67 65 20 | 65 6e 6f 75 67 68 20 74 |e large |enough t|
|00005bc0| 6f 20 68 6f 6c 64 20 61 | 6c 6c 20 79 6f 75 72 20 |o hold a|ll your |
|00005bd0| 73 6f 75 6e 64 73 2e 0a | 0a 40 63 6f 64 65 7b 41 |sounds..|.@code{A|
|00005be0| 48 49 5f 4c 6f 61 64 53 | 6f 75 6e 64 28 29 7d 20 |HI_LoadS|ound()} |
|00005bf0| 61 6c 73 6f 20 61 73 73 | 6f 63 69 61 74 65 73 20 |also ass|ociates |
|00005c00| 65 61 63 68 20 73 6f 75 | 6e 64 20 6f 72 20 73 61 |each sou|nd or sa|
|00005c10| 6d 70 6c 65 20 61 72 72 | 61 79 20 77 69 74 68 20 |mple arr|ay with |
|00005c20| 61 0a 6e 75 6d 62 65 72 | 2c 20 77 68 69 63 68 20 |a.number|, which |
|00005c30| 69 73 20 6c 61 74 65 72 | 20 75 73 65 64 20 74 6f |is later| used to|
|00005c40| 20 72 65 66 65 72 20 74 | 6f 20 74 68 61 74 20 70 | refer t|o that p|
|00005c50| 61 72 74 69 63 75 6c 61 | 72 20 73 6f 75 6e 64 2e |articula|r sound.|
|00005c60| 0a 0a 20 54 68 65 72 65 | 20 61 72 65 20 32 20 74 |.. There| are 2 t|
|00005c70| 79 70 65 73 20 6f 66 20 | 73 6f 75 6e 64 73 2c 20 |ypes of |sounds, |
|00005c80| 6e 61 6d 65 6c 79 20 40 | 63 6f 64 65 7b 41 48 49 |namely @|code{AHI|
|00005c90| 53 54 5f 53 41 4d 50 4c | 45 7d 20 61 6e 64 0a 40 |ST_SAMPL|E} and.@|
|00005ca0| 63 6f 64 65 7b 41 48 49 | 53 54 5f 44 59 4e 41 4d |code{AHI|ST_DYNAM|
|00005cb0| 49 43 53 41 4d 50 4c 45 | 7d 2e 0a 0a 40 63 20 61 |ICSAMPLE|}...@c a|
|00005cc0| 6e 64 20 40 63 6f 64 65 | 7b 41 48 49 53 54 5f 49 |nd @code|{AHIST_I|
|00005cd0| 4e 50 55 54 7d 2e 0a 0a | 40 76 74 61 62 6c 65 20 |NPUT}...|@vtable |
|00005ce0| 40 63 6f 64 65 0a 0a 40 | 69 74 65 6d 20 41 48 49 |@code..@|item AHI|
|00005cf0| 53 54 5f 53 41 4d 50 4c | 45 0a 54 68 69 73 20 69 |ST_SAMPL|E.This i|
|00005d00| 73 20 75 73 65 64 20 66 | 6f 72 20 73 74 61 74 69 |s used f|or stati|
|00005d10| 63 20 73 61 6d 70 6c 65 | 73 2e 20 20 4d 6f 73 74 |c sample|s. Most|
|00005d20| 20 73 6f 75 6e 64 73 20 | 74 68 61 74 20 77 69 6c | sounds |that wil|
|00005d30| 6c 20 62 65 20 70 6c 61 | 79 65 64 20 61 72 65 20 |l be pla|yed are |
|00005d40| 6f 66 0a 74 68 69 73 20 | 74 79 70 65 2e 20 20 4f |of.this |type. O|
|00005d50| 6e 63 65 20 74 68 65 20 | 73 61 6d 70 6c 65 73 20 |nce the |samples |
|00005d60| 68 61 76 65 20 62 65 65 | 6e 20 60 60 6c 6f 61 64 |have bee|n ``load|
|00005d70| 65 64 27 27 2c 20 79 6f | 75 20 6d 61 79 20 6e 6f |ed'', yo|u may no|
|00005d80| 74 20 61 6c 74 65 72 20 | 74 68 65 0a 6d 65 6d 6f |t alter |the.memo|
|00005d90| 72 79 20 77 68 65 72 65 | 20 74 68 65 20 73 61 6d |ry where| the sam|
|00005da0| 70 6c 65 73 20 61 72 65 | 20 6c 6f 63 61 74 65 64 |ples are| located|
|00005db0| 2e 20 20 59 6f 75 20 6d | 61 79 2c 20 68 6f 77 65 |. You m|ay, howe|
|00005dc0| 76 65 72 2c 20 72 65 61 | 64 20 66 72 6f 6d 20 69 |ver, rea|d from i|
|00005dd0| 74 2e 0a 0a 40 69 74 65 | 6d 20 41 48 49 53 54 5f |t...@ite|m AHIST_|
|00005de0| 44 59 4e 41 4d 49 43 53 | 41 4d 50 4c 45 0a 49 66 |DYNAMICS|AMPLE.If|
|00005df0| 20 79 6f 75 20 77 69 73 | 68 20 74 6f 20 70 6c 61 | you wis|h to pla|
|00005e00| 79 20 73 61 6d 70 6c 65 | 73 20 74 68 61 74 20 79 |y sample|s that y|
|00005e10| 6f 75 20 63 61 6c 63 75 | 6c 61 74 65 20 69 6e 20 |ou calcu|late in |
|00005e20| 72 65 61 6c 74 69 6d 65 | 2c 20 6f 72 20 6c 6f 61 |realtime|, or loa|
|00005e30| 64 20 69 6e 0a 70 6f 72 | 74 69 6f 6e 73 20 66 72 |d in.por|tions fr|
|00005e40| 6f 6d 20 64 69 73 6b 2c | 20 79 6f 75 20 6d 75 73 |om disk,| you mus|
|00005e50| 74 20 75 73 65 20 74 68 | 69 73 20 74 79 70 65 2e |t use th|is type.|
|00005e60| 20 20 54 68 65 73 65 20 | 73 61 6d 70 6c 65 73 20 | These |samples |
|00005e70| 77 69 6c 6c 20 6e 65 76 | 65 72 20 62 65 0a 75 70 |will nev|er be.up|
|00005e80| 6c 6f 61 64 65 64 20 74 | 6f 20 61 20 73 6f 75 6e |loaded t|o a soun|
|00005e90| 64 20 63 61 72 64 73 20 | 6c 6f 63 61 6c 20 52 41 |d cards |local RA|
|00005ea0| 4d 2c 20 62 75 74 20 61 | 6c 77 61 79 73 20 70 6c |M, but a|lways pl|
|00005eb0| 61 79 65 64 20 66 72 6f | 6d 20 74 68 65 20 6e 6f |ayed fro|m the no|
|00005ec0| 72 6d 61 6c 0a 6d 65 6d | 6f 72 79 2e 20 20 54 68 |rmal.mem|ory. Th|
|00005ed0| 65 72 65 20 69 73 20 61 | 20 63 61 74 63 68 2c 20 |ere is a| catch, |
|00005ee0| 68 6f 77 65 76 65 72 2e | 20 20 42 65 63 61 75 73 |however.| Becaus|
|00005ef0| 65 20 6f 66 20 74 68 65 | 20 66 61 63 74 20 74 68 |e of the| fact th|
|00005f00| 61 74 20 74 68 65 20 73 | 6f 75 6e 64 20 69 73 0a |at the s|ound is.|
|00005f10| 6d 69 78 65 64 20 69 6e | 20 63 68 75 6e 6b 73 2c |mixed in| chunks,|
|00005f20| 20 79 6f 75 20 6d 75 73 | 74 20 68 61 76 65 20 61 | you mus|t have a|
|00005f30| 20 63 65 72 74 61 69 6e | 20 6e 75 6d 62 65 72 20 | certain| number |
|00005f40| 6f 66 20 73 61 6d 70 6c | 65 73 20 69 6e 20 6d 65 |of sampl|es in me|
|00005f50| 6d 6f 72 79 20 62 65 66 | 6f 72 65 0a 79 6f 75 20 |mory bef|ore.you |
|00005f60| 73 74 61 72 74 20 61 20 | 73 6f 75 6e 64 20 6f 66 |start a |sound of|
|00005f70| 20 74 68 69 73 20 74 79 | 70 65 2e 20 20 54 6f 20 | this ty|pe. To |
|00005f80| 63 61 6c 63 75 6c 61 74 | 65 20 74 68 65 20 73 69 |calculat|e the si|
|00005f90| 7a 65 20 6f 66 20 74 68 | 65 20 62 75 66 66 65 72 |ze of th|e buffer|
|00005fa0| 20 28 69 6e 0a 73 61 6d | 70 6c 65 73 29 2c 20 75 | (in.sam|ples), u|
|00005fb0| 73 65 20 74 68 65 20 66 | 6f 6c 6c 6f 77 69 6e 67 |se the f|ollowing|
|00005fc0| 20 66 6f 72 6d 75 6c 61 | 3a 0a 0a 40 65 78 61 6d | formula|:..@exam|
|00005fd0| 70 6c 65 0a 40 6d 61 74 | 68 7b 73 69 7a 65 20 3d |ple.@mat|h{size =|
|00005fe0| 20 73 61 6d 70 6c 65 73 | 20 2a 20 46 73 20 2f 20 | samples| * Fs / |
|00005ff0| 46 6d 7d 0a 40 65 6e 64 | 20 65 78 61 6d 70 6c 65 |Fm}.@end| example|
|00006000| 0a 0a 77 68 65 72 65 20 | 73 61 6d 70 6c 65 73 20 |..where |samples |
|00006010| 69 73 20 74 68 65 20 76 | 61 6c 75 65 20 72 65 74 |is the v|alue ret|
|00006020| 75 72 6e 65 64 20 66 72 | 6f 6d 20 40 63 6f 64 65 |urned fr|om @code|
|00006030| 7b 41 48 49 5f 47 65 74 | 41 75 64 69 6f 41 74 74 |{AHI_Get|AudioAtt|
|00006040| 72 73 41 28 29 7d 20 77 | 68 65 6e 0a 63 61 6c 6c |rsA()} w|hen.call|
|00006050| 65 64 20 77 69 74 68 20 | 74 68 65 20 40 63 6f 64 |ed with |the @cod|
|00006060| 65 7b 41 48 49 44 42 5f | 4d 61 78 50 6c 61 79 53 |e{AHIDB_|MaxPlayS|
|00006070| 61 6d 70 6c 65 73 7d 20 | 74 61 67 2c 20 46 73 20 |amples} |tag, Fs |
|00006080| 69 73 20 74 68 65 20 68 | 69 67 68 65 73 74 0a 66 |is the h|ighest.f|
|00006090| 72 65 71 75 65 6e 63 79 | 20 74 68 65 20 73 6f 75 |requency| the sou|
|000060a0| 6e 64 20 77 69 6c 6c 20 | 62 65 20 70 6c 61 79 65 |nd will |be playe|
|000060b0| 64 20 61 74 20 61 6e 64 | 20 46 6d 20 69 73 20 74 |d at and| Fm is t|
|000060c0| 68 65 20 61 63 74 75 61 | 6c 20 6d 69 78 69 6e 67 |he actua|l mixing|
|000060d0| 20 66 72 65 71 75 65 6e | 63 79 0a 28 40 63 6f 64 | frequen|cy.(@cod|
|000060e0| 65 7b 41 48 49 5f 43 6f | 6e 74 72 6f 6c 41 75 64 |e{AHI_Co|ntrolAud|
|000060f0| 69 6f 41 28 29 2f 41 48 | 49 43 5f 4d 69 78 46 72 |ioA()/AH|IC_MixFr|
|00006100| 65 71 5f 51 75 65 72 79 | 7d 29 2e 0a 0a 0a 40 63 |eq_Query|})....@c|
|00006110| 20 40 69 74 65 6d 20 41 | 48 49 53 54 5f 49 4e 50 | @item A|HIST_INP|
|00006120| 55 54 0a 40 63 20 54 68 | 69 73 20 73 6f 75 6e 64 |UT.@c Th|is sound|
|00006130| 20 74 79 70 65 20 69 73 | 20 75 73 65 64 20 74 6f | type is| used to|
|00006140| 20 75 73 65 20 40 73 63 | 7b 41 68 69 7d 27 73 20 | use @sc|{Ahi}'s |
|00006150| 44 53 50 2d 65 66 66 65 | 63 74 73 20 69 6e 20 72 |DSP-effe|cts in r|
|00006160| 65 61 6c 2d 74 69 6d 65 | 2e 20 20 5b 49 74 0a 40 |eal-time|. [It.@|
|00006170| 63 20 64 6f 65 73 20 6e | 6f 74 20 77 6f 72 6b 20 |c does n|ot work |
|00006180| 79 65 74 2e 20 46 49 58 | 49 54 5d 0a 0a 40 65 6e |yet. FIX|IT]..@en|
|00006190| 64 20 76 74 61 62 6c 65 | 0a 0a 54 68 65 20 73 61 |d vtable|..The sa|
|000061a0| 6d 70 6c 65 73 20 63 61 | 6e 20 62 65 20 69 6e 20 |mples ca|n be in |
|000061b0| 6f 6e 65 20 6f 66 20 66 | 6f 75 72 20 64 69 66 66 |one of f|our diff|
|000061c0| 65 72 65 6e 74 20 66 6f | 72 6d 61 74 73 2c 20 6e |erent fo|rmats, n|
|000061d0| 61 6d 65 64 20 40 63 6f | 64 65 7b 41 48 49 53 54 |amed @co|de{AHIST|
|000061e0| 5f 4d 38 53 7d 2c 0a 40 | 63 6f 64 65 7b 41 48 49 |_M8S},.@|code{AHI|
|000061f0| 53 54 5f 53 38 53 7d 2c | 20 40 63 6f 64 65 7b 41 |ST_S8S},| @code{A|
|00006200| 48 49 53 54 5f 4d 31 36 | 53 7d 2c 20 61 6e 64 20 |HIST_M16|S}, and |
|00006210| 40 63 6f 64 65 7b 41 48 | 49 53 54 5f 53 31 36 53 |@code{AH|IST_S16S|
|00006220| 7d 2e 0a 0a 40 76 74 61 | 62 6c 65 20 40 63 6f 64 |}...@vta|ble @cod|
|00006230| 65 0a 0a 40 69 74 65 6d | 20 41 48 49 53 54 5f 4d |e..@item| AHIST_M|
|00006240| 38 53 0a 54 68 69 73 20 | 69 73 20 61 6e 20 38 20 |8S.This |is an 8 |
|00006250| 62 69 74 20 6d 6f 6e 6f | 20 73 6f 75 6e 64 2e 20 |bit mono| sound. |
|00006260| 45 61 63 68 20 73 61 6d | 70 6c 65 20 66 72 61 6d |Each sam|ple fram|
|00006270| 65 20 69 73 20 6a 75 73 | 74 20 6f 6e 65 20 73 69 |e is jus|t one si|
|00006280| 67 6e 65 64 20 62 79 74 | 65 2e 0a 0a 40 69 74 65 |gned byt|e...@ite|
|00006290| 6d 20 41 48 49 53 54 5f | 53 38 53 0a 54 68 69 73 |m AHIST_|S8S.This|
|000062a0| 20 69 73 20 61 6e 20 38 | 20 62 69 74 20 73 74 65 | is an 8| bit ste|
|000062b0| 72 65 6f 20 73 6f 75 6e | 64 2e 20 45 61 63 68 20 |reo soun|d. Each |
|000062c0| 73 61 6d 70 6c 65 20 66 | 72 61 6d 65 20 69 73 20 |sample f|rame is |
|000062d0| 6f 6e 65 20 73 69 67 6e | 65 64 20 62 79 74 65 20 |one sign|ed byte |
|000062e0| 72 65 70 72 65 73 65 6e | 74 69 6e 67 0a 74 68 65 |represen|ting.the|
|000062f0| 20 6c 65 66 74 20 63 68 | 61 6e 6e 65 6c 2c 20 66 | left ch|annel, f|
|00006300| 6f 6c 6c 6f 77 65 64 20 | 62 79 20 61 6e 6f 74 68 |ollowed |by anoth|
|00006310| 65 72 20 6f 6e 65 20 66 | 6f 72 20 74 68 65 20 72 |er one f|or the r|
|00006320| 69 67 68 74 20 63 68 61 | 6e 6e 65 6c 2e 0a 0a 40 |ight cha|nnel...@|
|00006330| 69 74 65 6d 20 41 48 49 | 53 54 5f 4d 31 36 53 0a |item AHI|ST_M16S.|
|00006340| 54 68 69 73 20 69 73 20 | 61 20 31 36 20 62 69 74 |This is |a 16 bit|
|00006350| 20 6d 6f 6e 6f 20 73 6f | 75 6e 64 2e 20 20 45 61 | mono so|und. Ea|
|00006360| 63 68 20 73 61 6d 70 6c | 65 20 66 72 61 6d 65 20 |ch sampl|e frame |
|00006370| 69 73 20 6a 75 73 74 20 | 6f 6e 65 20 73 69 67 6e |is just |one sign|
|00006380| 65 64 20 31 36 20 62 69 | 74 0a 77 6f 72 64 2c 20 |ed 16 bi|t.word, |
|00006390| 69 6e 20 62 69 67 20 65 | 6e 64 69 61 6e 2f 6e 65 |in big e|ndian/ne|
|000063a0| 74 77 6f 72 6b 20 6f 72 | 64 65 72 20 66 6f 72 6d |twork or|der form|
|000063b0| 61 74 20 28 6d 6f 73 74 | 20 73 69 67 6e 69 66 69 |at (most| signifi|
|000063c0| 63 61 6e 74 20 62 79 74 | 65 20 66 69 72 73 74 29 |cant byt|e first)|
|000063d0| 2e 0a 0a 40 69 74 65 6d | 20 41 48 49 53 54 5f 53 |...@item| AHIST_S|
|000063e0| 31 36 53 0a 54 68 69 73 | 20 69 73 20 61 20 31 36 |16S.This| is a 16|
|000063f0| 20 62 69 74 20 73 74 65 | 72 65 6f 20 73 6f 75 6e | bit ste|reo soun|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.