home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / t / tim / !Tim / Play < prev    next >
Unknown  |  1992-04-25  |  5.3 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default
100% xdgMime image/x-tga default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 0b f4 20 3e 50 | 6c 61 79 0d 00 14 05 3a |..... >P|lay....:|
|00000010| 0d 00 1e 0c f4 20 55 73 | 61 67 65 3a 0d 00 28 39 |..... Us|age:..(9|
|00000020| f4 20 50 6c 61 79 20 3c | 53 61 6d 70 6c 65 52 61 |. Play <|SampleRa|
|00000030| 74 65 3e 20 3c 53 61 6d | 70 6c 65 31 3e 20 3c 53 |te> <Sam|ple1> <S|
|00000040| 61 6d 70 6c 65 32 3e 20 | 2e 2e 2e 20 3c 53 61 6d |ample2> |... <Sam|
|00000050| 70 6c 65 4e 3e 0d 00 32 | 05 f4 0d 00 3c 05 3a 0d |pleN>..2|....<.:.|
|00000060| 00 46 0e ee 20 85 20 f2 | 45 72 72 6f 72 0d 00 50 |.F.. . .|Error..P|
|00000070| 05 3a 0d 00 5a 36 f4 20 | 53 74 61 72 74 20 75 70 |.:..Z6. |Start up|
|00000080| 20 61 73 20 61 20 57 69 | 6d 70 20 54 61 73 6b 20 | as a Wi|mp Task |
|00000090| 74 6f 20 61 76 6f 69 64 | 20 73 70 75 72 69 6f 75 |to avoid| spuriou|
|000000a0| 73 20 6f 75 74 70 75 74 | 0d 00 64 0a de 20 71 25 |s output|..d.. q%|
|000000b0| 20 38 0d 00 6e 0e 24 71 | 25 3d 22 54 41 53 4b 22 | 8..n.$q|%="TASK"|
|000000c0| 0d 00 78 34 c8 99 20 22 | 57 69 6d 70 5f 49 6e 69 |..x4.. "|Wimp_Ini|
|000000d0| 74 69 61 6c 69 73 65 22 | 2c 32 30 30 2c 21 71 25 |tialise"|,200,!q%|
|000000e0| 2c 22 54 69 6d 20 53 61 | 6d 70 6c 65 20 50 6c 61 |,"Tim Sa|mple Pla|
|000000f0| 79 65 72 22 0d 00 82 05 | 3a 0d 00 8c 0e de 20 45 |yer"....|:..... E|
|00000100| 72 72 25 20 31 30 30 0d | 00 96 05 3a 0d 00 a0 24 |rr% 100.|...:...$|
|00000110| f4 20 47 65 74 20 74 68 | 65 20 63 6f 6d 6d 61 6e |. Get th|e comman|
|00000120| 64 20 6c 69 6e 65 20 61 | 72 67 75 6d 65 6e 74 73 |d line a|rguments|
|00000130| 0d 00 aa 1b c8 99 20 22 | 4f 53 5f 47 65 74 45 6e |...... "|OS_GetEn|
|00000140| 76 22 20 b8 20 63 6c 69 | 6e 65 24 0d 00 b4 05 3a |v" . cli|ne$....:|
|00000150| 0d 00 be 42 f4 20 67 65 | 74 20 72 69 64 20 6f 66 |...B. ge|t rid of|
|00000160| 20 22 62 61 73 69 63 20 | 2d 71 75 69 74 20 3c 54 | "basic |-quit <T|
|00000170| 69 6d 24 44 69 72 3e 2e | 50 6c 61 79 22 20 66 72 |im$Dir>.|Play" fr|
|00000180| 6f 6d 20 73 74 61 72 74 | 20 6f 66 20 73 74 72 69 |om start| of stri|
|00000190| 6e 67 0d 00 c8 18 64 75 | 6d 6d 79 24 20 3d 20 a4 |ng....du|mmy$ = .|
|000001a0| 67 65 74 6e 65 78 74 61 | 72 67 0d 00 d2 18 64 75 |getnexta|rg....du|
|000001b0| 6d 6d 79 24 20 3d 20 a4 | 67 65 74 6e 65 78 74 61 |mmy$ = .|getnexta|
|000001c0| 72 67 0d 00 dc 18 64 75 | 6d 6d 79 24 20 3d 20 a4 |rg....du|mmy$ = .|
|000001d0| 67 65 74 6e 65 78 74 61 | 72 67 0d 00 e6 05 3a 0d |getnexta|rg....:.|
|000001e0| 00 f0 20 53 61 6d 70 6c | 65 52 61 74 65 25 20 3d |.. Sampl|eRate% =|
|000001f0| 20 bb 28 a4 67 65 74 6e | 65 78 74 61 72 67 29 0d | .(.getn|extarg).|
|00000200| 00 fa 05 3a 0d 01 04 29 | f4 20 43 68 65 63 6b 20 |...:...)|. Check |
|00000210| 66 6f 72 20 70 72 65 73 | 65 6e 63 65 20 6f 66 20 |for pres|ence of |
|00000220| 56 49 44 43 20 45 6e 68 | 61 6e 63 65 72 0d 01 0e |VIDC Enh|ancer...|
|00000230| 4e c8 99 20 22 58 4f 53 | 5f 52 65 61 64 56 61 72 |N.. "XOS|_ReadVar|
|00000240| 56 61 6c 22 2c 22 54 69 | 6d 24 56 49 44 43 45 6e |Val","Ti|m$VIDCEn|
|00000250| 68 61 6e 63 65 72 50 72 | 65 73 65 6e 74 22 2c 2c |hancerPr|esent",,|
|00000260| 2d 31 20 b8 20 2c 2c 56 | 49 44 43 45 6e 68 61 6e |-1 . ,,V|IDCEnhan|
|00000270| 63 65 72 50 72 65 73 65 | 6e 74 25 0d 01 18 05 3a |cerPrese|nt%....:|
|00000280| 0d 01 22 3d f4 20 41 64 | 6a 75 73 74 20 73 61 6d |.."=. Ad|just sam|
|00000290| 70 6c 65 20 72 61 74 65 | 20 69 66 20 56 49 44 43 |ple rate| if VIDC|
|000002a0| 20 45 6e 68 61 6e 63 65 | 72 20 69 73 20 69 6e 20 | Enhance|r is in |
|000002b0| 33 36 4d 48 7a 20 6d 6f | 64 65 2e 2e 2e 0d 01 2c |36MHz mo|de.....,|
|000002c0| 28 e7 20 56 49 44 43 45 | 6e 68 61 6e 63 65 72 50 |(. VIDCE|nhancerP|
|000002d0| 72 65 73 65 6e 74 25 20 | 80 20 28 eb 20 3e 3d 20 |resent% |. (. >= |
|000002e0| 39 36 29 20 8c 0d 01 36 | 29 20 20 53 61 6d 70 6c |96) ...6|) Sampl|
|000002f0| 65 52 61 74 65 25 20 3d | 20 28 53 61 6d 70 6c 65 |eRate% =| (Sample|
|00000300| 52 61 74 65 25 20 2a 20 | 32 29 20 2f 20 33 0d 01 |Rate% * |2) / 3..|
|00000310| 40 05 cd 0d 01 4a 05 3a | 0d 01 54 29 53 61 6d 70 |@....J.:|..T)Samp|
|00000320| 6c 65 50 65 72 69 6f 64 | 25 20 3d 20 31 30 30 30 |lePeriod|% = 1000|
|00000330| 30 30 30 20 81 20 53 61 | 6d 70 6c 65 52 61 74 65 |000 . Sa|mpleRate|
|00000340| 25 0d 01 5e 05 3a 0d 01 | 68 15 53 61 6d 70 6c 65 |%..^.:..|h.Sample|
|00000350| 73 24 20 3d 20 63 6c 69 | 6e 65 24 0d 01 72 05 3a |s$ = cli|ne$..r.:|
|00000360| 0d 01 7c 3f f4 20 46 69 | 72 73 74 20 66 69 6e 64 |..|?. Fi|rst find|
|00000370| 20 6f 75 74 20 68 6f 77 | 20 6c 6f 6e 67 20 74 68 | out how| long th|
|00000380| 65 20 73 61 6d 70 6c 65 | 73 20 61 72 65 20 77 68 |e sample|s are wh|
|00000390| 65 6e 20 63 6f 6e 63 61 | 74 65 6e 61 74 65 64 0d |en conca|tenated.|
|000003a0| 01 86 05 3a 0d 01 90 0f | 4c 65 6e 67 74 68 25 20 |...:....|Length% |
|000003b0| 3d 20 30 0d 01 9a 11 4c | 61 73 74 42 79 74 65 25 |= 0....L|astByte%|
|000003c0| 20 3d 20 30 0d 01 a4 05 | 3a 0d 01 ae 05 f5 0d 01 | = 0....|:.......|
|000003d0| b8 1d 20 20 53 61 6d 70 | 4e 61 6d 65 24 20 3d 20 |.. Samp|Name$ = |
|000003e0| a4 67 65 74 6e 65 78 74 | 61 72 67 0d 01 c2 19 20 |.getnext|arg.... |
|000003f0| 20 e7 20 53 61 6d 70 4e | 61 6d 65 24 20 3c 3e 20 | . SampN|ame$ <> |
|00000400| 22 22 20 8c 0d 01 cc 31 | 20 20 20 20 53 61 6d 70 |"" ....1| Samp|
|00000410| 4e 61 6d 65 24 20 3d 20 | 22 3c 54 69 6d 24 44 69 |Name$ = |"<Tim$Di|
|00000420| 72 3e 2e 73 70 65 65 63 | 68 2e 22 2b 53 61 6d 70 |r>.speec|h."+Samp|
|00000430| 4e 61 6d 65 24 0d 01 d6 | 2f 20 20 20 20 c8 99 20 |Name$...|/ .. |
|00000440| 22 4f 53 5f 46 69 6c 65 | 22 2c 31 37 2c 53 61 6d |"OS_File|",17,Sam|
|00000450| 70 4e 61 6d 65 24 20 b8 | 20 2c 2c 2c 2c 4f 62 6a |pName$ .| ,,,,Obj|
|00000460| 4c 65 6e 25 0d 01 e0 1a | 20 20 20 20 4c 65 6e 67 |Len%....| Leng|
|00000470| 74 68 25 20 2b 3d 20 4f | 62 6a 4c 65 6e 25 0d 01 |th% += O|bjLen%..|
|00000480| ea 07 20 20 cd 0d 01 f4 | 14 fd 20 53 61 6d 70 4e |.. ....|.. SampN|
|00000490| 61 6d 65 24 20 3d 20 22 | 22 0d 01 fe 05 3a 0d 02 |ame$ = "|"....:..|
|000004a0| 08 05 3a 0d 02 12 40 f4 | 20 41 6c 6c 6f 63 61 74 |..:...@.| Allocat|
|000004b0| 65 20 74 68 65 20 73 70 | 61 63 65 20 66 6f 72 20 |e the sp|ace for |
|000004c0| 73 6f 75 6e 64 20 64 61 | 74 61 20 61 6e 64 20 76 |sound da|ta and v|
|000004d0| 6f 69 63 65 20 67 65 6e | 65 72 61 74 6f 72 20 63 |oice gen|erator c|
|000004e0| 6f 64 65 0d 02 1c 05 3a | 0d 02 26 1a de 20 53 6f |ode....:|..&.. So|
|000004f0| 75 6e 64 44 61 74 61 25 | 20 4c 65 6e 67 74 68 25 |undData%| Length%|
|00000500| 2b 34 0d 02 30 10 de 20 | 43 6f 64 65 25 20 34 30 |+4..0.. |Code% 40|
|00000510| 39 35 0d 02 3a 05 3a 0d | 02 44 22 f4 20 52 65 61 |95..:.:.|.D". Rea|
|00000520| 64 20 73 61 6d 70 6c 65 | 20 64 61 74 61 20 69 6e |d sample| data in|
|00000530| 74 6f 20 62 75 66 66 65 | 72 0d 02 4e 05 3a 0d 02 |to buffe|r..N.:..|
|00000540| 58 15 63 6c 69 6e 65 24 | 20 3d 20 53 61 6d 70 6c |X.cline$| = Sampl|
|00000550| 65 73 24 0d 02 62 05 3a | 0d 02 6c 0c 4f 66 73 25 |es$..b.:|..l.Ofs%|
|00000560| 20 3d 20 30 0d 02 76 05 | 3a 0d 02 80 05 f5 0d 02 | = 0..v.|:.......|
|00000570| 8a 1d 20 20 53 61 6d 70 | 4e 61 6d 65 24 20 3d 20 |.. Samp|Name$ = |
|00000580| a4 67 65 74 6e 65 78 74 | 61 72 67 0d 02 94 19 20 |.getnext|arg.... |
|00000590| 20 e7 20 53 61 6d 70 4e | 61 6d 65 24 20 3c 3e 20 | . SampN|ame$ <> |
|000005a0| 22 22 20 8c 0d 02 9e 09 | 20 20 20 20 3a 0d 02 a8 |"" .....| :...|
|000005b0| 31 20 20 20 20 53 61 6d | 70 4e 61 6d 65 24 20 3d |1 Sam|pName$ =|
|000005c0| 20 22 3c 54 69 6d 24 44 | 69 72 3e 2e 73 70 65 65 | "<Tim$D|ir>.spee|
|000005d0| 63 68 2e 22 2b 53 61 6d | 70 4e 61 6d 65 24 0d 02 |ch."+Sam|pName$..|
|000005e0| b2 2f 20 20 20 20 c8 99 | 20 22 4f 53 5f 46 69 6c |./ ..| "OS_Fil|
|000005f0| 65 22 2c 31 37 2c 53 61 | 6d 70 4e 61 6d 65 24 20 |e",17,Sa|mpName$ |
|00000600| b8 20 2c 2c 2c 2c 4f 62 | 6a 4c 65 6e 25 0d 02 bc |. ,,,,Ob|jLen%...|
|00000610| 09 20 20 20 20 3a 0d 02 | c6 36 20 20 20 20 ff 28 |. :..|.6 .(|
|00000620| 22 4c 4f 41 44 20 22 2b | 53 61 6d 70 4e 61 6d 65 |"LOAD "+|SampName|
|00000630| 24 2b 22 20 22 2b c3 7e | 28 53 6f 75 6e 64 44 61 |$+" "+.~|(SoundDa|
|00000640| 74 61 25 20 2b 20 4f 66 | 73 25 29 29 0d 02 d0 09 |ta% + Of|s%))....|
|00000650| 20 20 20 20 3a 0d 02 da | 15 20 20 20 20 e7 20 4f | :...|. . O|
|00000660| 66 73 25 20 3c 3e 20 30 | 20 8c 0d 02 e4 2a 20 20 |fs% <> 0| ....* |
|00000670| 20 20 20 20 3f 28 53 6f | 75 6e 64 44 61 74 61 25 | ?(So|undData%|
|00000680| 20 2b 20 4f 66 73 25 29 | 20 3d 20 4c 61 73 74 42 | + Ofs%)| = LastB|
|00000690| 79 74 65 25 0d 02 ee 09 | 20 20 20 20 cd 0d 02 f8 |yte%....| ....|
|000006a0| 19 20 20 20 20 4f 66 73 | 25 20 2b 3d 20 4f 62 6a |. Ofs|% += Obj|
|000006b0| 4c 65 6e 25 2d 31 0d 03 | 02 19 20 20 20 20 4c 61 |Len%-1..|.. La|
|000006c0| 73 74 42 79 74 65 25 20 | 3d 20 3f 4f 66 73 25 0d |stByte% |= ?Ofs%.|
|000006d0| 03 0c 07 20 20 cd 0d 03 | 16 14 fd 20 53 61 6d 70 |... ...|... Samp|
|000006e0| 4e 61 6d 65 24 20 3d 20 | 22 22 0d 03 20 05 3a 0d |Name$ = |"".. .:.|
|000006f0| 03 2a 2c f4 20 47 65 74 | 20 6c 65 6e 67 74 68 20 |.*,. Get| length |
|00000700| 6f 66 20 73 61 6d 70 6c | 65 20 28 69 6e 20 63 65 |of sampl|e (in ce|
|00000710| 6e 74 69 73 65 63 6f 6e | 64 73 29 0d 03 34 36 52 |ntisecon|ds)..46R|
|00000720| 65 61 6c 53 61 6d 70 6c | 65 4c 65 6e 25 20 3d 20 |ealSampl|eLen% = |
|00000730| 28 53 61 6d 70 6c 65 50 | 65 72 69 6f 64 25 20 2a |(SampleP|eriod% *|
|00000740| 20 4c 65 6e 67 74 68 25 | 29 20 81 20 31 30 30 30 | Length%|) . 1000|
|00000750| 30 0d 03 3e 05 3a 0d 03 | 48 05 3a 0d 03 52 13 e3 |0..>.:..|H.:..R..|
|00000760| 20 43 20 3d 20 30 20 b8 | 20 32 20 88 20 32 0d 03 | C = 0 .| 2 . 2..|
|00000770| 5c 0c 50 25 3d 43 6f 64 | 65 25 0d 03 66 0b 5b 20 |\.P%=Cod|e%..f.[ |
|00000780| 4f 50 54 20 43 0d 03 70 | 0e 2e 56 6f 69 63 65 42 |OPT C..p|..VoiceB|
|00000790| 61 73 65 0d 03 7a 13 20 | 20 20 42 20 20 20 20 20 |ase..z. | B |
|000007a0| 20 20 46 69 6c 6c 0d 03 | 84 24 20 20 20 42 20 20 | Fill..|.$ B |
|000007b0| 20 20 20 20 20 46 69 6c | 6c 20 20 20 3b 20 75 70 | Fil|l ; up|
|000007c0| 64 61 74 65 20 65 6e 74 | 72 79 0d 03 8e 15 20 20 |date ent|ry.... |
|000007d0| 20 42 20 20 20 20 20 20 | 20 47 61 74 65 4f 6e 0d | B | GateOn.|
|000007e0| 03 98 16 20 20 20 42 20 | 20 20 20 20 20 20 47 61 |... B | Ga|
|000007f0| 74 65 4f 66 66 0d 03 a2 | 17 20 20 20 42 20 20 20 |teOff...|. B |
|00000800| 20 20 20 20 49 6e 73 74 | 61 6e 63 65 0d 03 ac 18 | Inst|ance....|
|00000810| 20 20 20 4c 44 4d 46 44 | 20 20 20 52 31 33 21 2c | LDMFD| R13!,|
|00000820| 7b 50 43 7d 0d 03 b6 18 | 20 20 20 4c 44 4d 46 44 |{PC}....| LDMFD|
|00000830| 20 20 20 52 31 33 21 2c | 7b 50 43 7d 0d 03 c0 24 | R13!,|{PC}...$|
|00000840| 20 20 20 45 51 55 44 20 | 20 20 20 56 6f 69 63 65 | EQUD | Voice|
|00000850| 4e 61 6d 65 20 2d 20 56 | 6f 69 63 65 42 61 73 65 |Name - V|oiceBase|
|00000860| 0d 03 ca 05 3b 0d 03 d4 | 23 2e 56 6f 69 63 65 4e |....;...|#.VoiceN|
|00000870| 61 6d 65 20 45 51 55 53 | 20 22 53 70 65 61 6b 69 |ame EQUS| "Speaki|
|00000880| 6e 67 43 6c 6f 63 6b 22 | 0d 03 de 15 20 20 20 20 |ngClock"|.... |
|00000890| 20 20 20 20 20 20 20 45 | 51 55 42 20 30 0d 03 e8 | E|QUB 0...|
|000008a0| 09 41 4c 49 47 4e 0d 03 | f2 05 3b 0d 03 fc 15 2e |.ALIGN..|..;.....|
|000008b0| 4c 69 6e 4c 6f 67 50 74 | 72 20 45 51 55 44 20 30 |LinLogPt|r EQUD 0|
|000008c0| 0d 04 06 1e 2e 53 74 61 | 72 74 20 20 20 20 20 45 |.....Sta|rt E|
|000008d0| 51 55 44 20 53 6f 75 6e | 64 44 61 74 61 25 0d 04 |QUD Soun|dData%..|
|000008e0| 10 26 2e 45 6e 64 20 20 | 20 20 20 20 20 45 51 55 |.&.End | EQU|
|000008f0| 44 20 53 6f 75 6e 64 44 | 61 74 61 25 2b 4c 65 6e |D SoundD|ata%+Len|
|00000900| 67 74 68 25 0d 04 1a 05 | 3b 0d 04 24 0d 2e 49 6e |gth%....|;..$..In|
|00000910| 73 74 61 6e 63 65 0d 04 | 2e 1b 20 20 20 53 54 4d |stance..|.. STM|
|00000920| 46 44 20 20 20 52 31 33 | 21 2c 7b 52 30 2d 52 34 |FD R13|!,{R0-R4|
|00000930| 7d 0d 04 38 15 20 20 20 | 4d 4f 56 20 20 20 20 20 |}..8. |MOV |
|00000940| 52 30 2c 20 23 31 0d 04 | 42 17 20 20 20 4d 4f 56 |R0, #1..|B. MOV|
|00000950| 20 20 20 20 20 52 31 2c | 20 23 32 30 38 0d 04 4c | R1,| #208..L|
|00000960| 3b 20 20 20 4d 4f 56 20 | 20 20 20 20 52 32 2c 20 |; MOV | R2, |
|00000970| 23 53 61 6d 70 6c 65 50 | 65 72 69 6f 64 25 20 20 |#SampleP|eriod% |
|00000980| 20 3b 20 75 73 65 63 73 | 20 62 65 74 77 65 65 6e | ; usecs| between|
|00000990| 20 73 61 6d 70 6c 65 73 | 0d 04 56 15 20 20 20 4d | samples|..V. M|
|000009a0| 4f 56 20 20 20 20 20 52 | 33 2c 20 23 30 0d 04 60 |OV R|3, #0..`|
|000009b0| 15 20 20 20 4d 4f 56 20 | 20 20 20 20 52 34 2c 20 |. MOV | R4, |
|000009c0| 23 30 0d 04 6a 21 20 20 | 20 53 57 49 20 20 20 20 |#0..j! | SWI |
|000009d0| 20 22 58 53 6f 75 6e 64 | 5f 43 6f 6e 66 69 67 75 | "XSound|_Configu|
|000009e0| 72 65 22 0d 04 74 3f 20 | 20 20 4c 44 52 56 43 20 |re"..t? | LDRVC |
|000009f0| 20 20 52 30 2c 5b 52 33 | 2c 23 38 5d 20 20 20 20 | R0,[R3|,#8] |
|00000a00| 20 20 20 20 3b 20 67 65 | 74 20 61 64 64 72 65 73 | ; ge|t addres|
|00000a10| 73 20 6f 66 20 6c 69 6e | 2d 6c 6f 67 20 74 61 62 |s of lin|-log tab|
|00000a20| 6c 65 0d 04 7e 1c 20 20 | 20 53 54 52 56 43 20 20 |le..~. | STRVC |
|00000a30| 20 52 30 2c 20 4c 69 6e | 4c 6f 67 50 74 72 0d 04 | R0, Lin|LogPtr..|
|00000a40| 88 37 20 20 20 53 54 52 | 56 53 20 20 20 52 30 2c |.7 STR|VS R0,|
|00000a50| 20 5b 52 31 33 5d 20 20 | 20 20 20 20 20 20 20 3b | [R13] | ;|
|00000a60| 20 72 65 74 75 72 6e 20 | 65 72 72 6f 72 20 70 6f | return |error po|
|00000a70| 69 6e 74 65 72 0d 04 92 | 3f 20 20 20 4c 44 4d 46 |inter...|? LDMF|
|00000a80| 44 20 20 20 52 31 33 21 | 2c 7b 52 30 2d 52 34 2c |D R13!|,{R0-R4,|
|00000a90| 50 43 7d 20 20 20 3b 20 | 72 65 73 74 6f 72 65 20 |PC} ; |restore |
|00000aa0| 72 65 67 69 73 74 65 72 | 73 20 61 6e 64 20 72 65 |register|s and re|
|00000ab0| 74 75 72 6e 0d 04 9c 05 | 3b 0d 04 a6 29 3b 2a 2a |turn....|;...);**|
|00000ac0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000ad0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000ae0| 2a 2a 0d 04 b0 24 3b 2a | 20 20 20 20 c8 a1 20 42 |**...$;*| .. B|
|00000af0| 55 46 46 45 52 20 c8 90 | 20 52 4f 55 54 49 4e 45 |UFFER ..| ROUTINE|
|00000b00| 53 20 20 20 20 2a 0d 04 | ba 29 3b 2a 2a 2a 2a 2a |S *..|.);*****|
|00000b10| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000b20| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 0d |********|*******.|
|00000b30| 04 c4 05 3b 0d 04 ce 0f | 3b 20 6f 6e 20 65 6e 74 |...;....|; on ent|
|00000b40| 72 79 3a 0d 04 d8 17 3b | 20 20 20 72 30 2d 72 38 |ry:....;| r0-r8|
|00000b50| 20 61 76 61 69 6c 61 62 | 6c 65 0d 04 e2 2e 3b 20 | availab|le....; |
|00000b60| 20 20 72 39 20 69 73 20 | 53 6f 75 6e 64 43 68 61 | r9 is |SoundCha|
|00000b70| 6e 6e 65 6c 43 6f 6e 74 | 72 6f 6c 42 6c 6f 63 6b |nnelCont|rolBlock|
|00000b80| 20 70 6f 69 6e 74 65 72 | 0d 04 ec 21 3b 20 20 20 | pointer|...!; |
|00000b90| 72 31 30 20 44 4d 41 20 | 62 75 66 66 65 72 20 6c |r10 DMA |buffer l|
|00000ba0| 69 6d 69 74 20 28 2b 31 | 29 0d 04 f6 2b 3b 20 20 |imit (+1|)...+; |
|00000bb0| 20 72 31 31 20 44 4d 41 | 20 62 75 66 66 65 72 20 | r11 DMA| buffer |
|00000bc0| 69 6e 74 65 72 6c 65 61 | 76 65 20 69 6e 63 72 65 |interlea|ve incre|
|00000bd0| 6d 65 6e 74 0d 05 00 23 | 3b 20 20 20 72 31 32 20 |ment...#|; r12 |
|00000be0| 44 4d 41 20 62 75 66 66 | 65 72 20 62 61 73 65 20 |DMA buff|er base |
|00000bf0| 70 6f 69 6e 74 65 72 0d | 05 0a 36 3b 20 20 20 72 |pointer.|..6; r|
|00000c00| 31 33 20 53 6f 75 6e 64 | 20 53 79 73 74 65 6d 20 |13 Sound| System |
|00000c10| 77 69 74 68 20 72 65 74 | 75 72 6e 20 61 64 64 72 |with ret|urn addr|
|00000c20| 65 73 73 20 61 6e 64 20 | 66 6c 61 67 73 0d 05 14 |ess and |flags...|
|00000c30| 2d 3b 20 20 20 20 20 20 | 20 6f 6e 20 74 6f 70 20 |-; | on top |
|00000c40| 28 6d 75 73 74 20 4c 44 | 4d 46 44 20 52 31 33 2c |(must LD|MFD R13,|
|00000c50| 7b 2e 2e 2e 2c 70 63 7d | 20 29 0d 05 1e 35 3b 20 |{...,pc}| )...5; |
|00000c60| 4e 4f 20 72 31 34 20 2d | 20 49 52 51 73 20 61 72 |NO r14 -| IRQs ar|
|00000c70| 65 20 65 6e 61 62 6c 65 | 64 20 61 6e 64 20 72 31 |e enable|d and r1|
|00000c80| 34 20 69 73 20 6e 6f 74 | 20 75 73 61 62 6c 65 0d |4 is not| usable.|
|00000c90| 05 28 0b 2e 47 61 74 65 | 4f 6e 0d 05 32 33 20 20 |.(..Gate|On..23 |
|00000ca0| 20 4c 44 52 20 20 20 20 | 20 52 30 2c 53 74 61 72 | LDR | R0,Star|
|00000cb0| 74 20 20 20 20 20 20 20 | 20 20 20 3b 20 73 6f 75 |t | ; sou|
|00000cc0| 6e 64 20 74 61 62 6c 65 | 20 62 61 73 65 0d 05 3c |nd table| base..<|
|00000cd0| 47 20 20 20 53 54 52 20 | 20 20 20 20 52 30 2c 5b |G STR | R0,[|
|00000ce0| 52 39 2c 23 31 36 5d 20 | 20 20 20 20 20 20 3b 20 |R9,#16] | ; |
|00000cf0| 73 65 74 20 75 70 20 69 | 6e 20 53 43 43 42 20 61 |set up i|n SCCB a|
|00000d00| 73 20 77 6f 72 6b 69 6e | 67 20 72 65 67 69 73 74 |s workin|g regist|
|00000d10| 65 72 20 35 0d 05 46 15 | 20 20 20 4c 44 52 20 20 |er 5..F.| LDR |
|00000d20| 20 20 20 52 30 2c 45 6e | 64 0d 05 50 47 20 20 20 | R0,En|d..PG |
|00000d30| 53 54 52 20 20 20 20 20 | 52 30 2c 5b 52 39 2c 23 |STR |R0,[R9,#|
|00000d40| 32 30 5d 20 20 20 20 20 | 20 20 3b 20 73 65 74 20 |20] | ; set |
|00000d50| 75 70 20 69 6e 20 53 43 | 43 42 20 61 73 20 77 6f |up in SC|CB as wo|
|00000d60| 72 6b 69 6e 67 20 72 65 | 67 69 73 74 65 72 20 36 |rking re|gister 6|
|00000d70| 0d 05 5a 05 3b 0d 05 64 | 09 2e 46 69 6c 6c 0d 05 |..Z.;..d|..Fill..|
|00000d80| 6e 46 20 20 20 4c 44 4d | 49 41 20 20 20 52 39 2c |nF LDM|IA R9,|
|00000d90| 7b 52 31 2d 52 36 7d 20 | 20 20 20 20 20 20 20 3b |{R1-R6} | ;|
|00000da0| 20 70 69 63 6b 20 75 70 | 20 77 6f 72 6b 69 6e 67 | pick up| working|
|00000db0| 20 72 65 67 69 73 74 65 | 72 73 20 66 72 6f 6d 20 | registe|rs from |
|00000dc0| 53 43 43 42 0d 05 78 33 | 3b 20 52 31 20 69 73 20 |SCCB..x3|; R1 is |
|00000dd0| 61 6d 70 20 28 30 2d 31 | 32 37 29 20 20 20 20 20 |amp (0-1|27) |
|00000de0| 20 20 52 32 20 69 73 20 | 70 69 74 63 68 20 70 68 | R2 is |pitch ph|
|00000df0| 61 73 65 20 61 63 63 0d | 05 82 2c 3b 20 52 33 20 |ase acc.|..,; R3 |
|00000e00| 69 73 20 74 69 6d 62 72 | 65 20 70 68 61 73 65 20 |is timbr|e phase |
|00000e10| 61 63 63 20 20 52 34 20 | 69 73 20 64 75 72 61 74 |acc R4 |is durat|
|00000e20| 69 6f 6e 0d 05 8c 36 3b | 20 52 35 20 69 73 20 73 |ion...6;| R5 is s|
|00000e30| 6f 75 6e 64 20 74 61 62 | 6c 65 20 62 61 73 65 20 |ound tab|le base |
|00000e40| 20 52 36 20 69 73 20 65 | 6e 64 20 6f 66 20 73 6f | R6 is e|nd of so|
|00000e50| 75 6e 64 20 74 61 62 6c | 65 0d 05 96 1b 20 20 20 |und tabl|e.... |
|00000e60| 4c 44 52 20 20 20 20 20 | 52 37 2c 4c 69 6e 4c 6f |LDR |R7,LinLo|
|00000e70| 67 50 74 72 0d 05 a0 0d | 2e 46 69 6c 6c 4c 6f 6f |gPtr....|.FillLoo|
|00000e80| 70 0d 05 aa 14 20 20 20 | 43 4d 50 20 20 20 20 20 |p.... |CMP |
|00000e90| 52 35 2c 52 36 0d 05 b4 | 14 20 20 20 4d 4f 56 47 |R5,R6...|. MOVG|
|00000ea0| 45 20 20 20 52 30 2c 23 | 30 0d 05 be 19 20 20 20 |E R0,#|0.... |
|00000eb0| 4c 44 52 4c 54 42 20 20 | 52 30 2c 5b 52 35 5d 2c |LDRLTB |R0,[R5],|
|00000ec0| 23 31 0d 05 c8 20 20 20 | 20 4c 44 52 4c 54 42 20 |#1... | LDRLTB |
|00000ed0| 20 52 30 2c 5b 52 37 2c | 52 30 2c 4c 53 4c 20 23 | R0,[R7,|R0,LSL #|
|00000ee0| 35 5d 0d 05 d2 39 20 20 | 20 53 54 52 42 20 20 20 |5]...9 | STRB |
|00000ef0| 20 52 30 2c 5b 52 31 32 | 5d 2c 52 31 31 20 20 20 | R0,[R12|],R11 |
|00000f00| 20 20 20 3b 20 67 65 6e | 65 72 61 74 65 20 6f 75 | ; gen|erate ou|
|00000f10| 74 70 75 74 20 73 61 6d | 70 6c 65 0d 05 dc 3f 20 |tput sam|ple...? |
|00000f20| 20 20 43 4d 50 20 20 20 | 20 20 52 31 32 2c 52 31 | CMP | R12,R1|
|00000f30| 30 20 20 20 20 20 20 20 | 20 20 20 20 3b 20 63 68 |0 | ; ch|
|00000f40| 65 63 6b 20 66 6f 72 20 | 65 6e 64 20 6f 66 20 62 |eck for |end of b|
|00000f50| 75 66 66 65 72 20 66 69 | 6c 6c 0d 05 e6 17 20 20 |uffer fi|ll.... |
|00000f60| 20 42 4c 54 20 20 20 20 | 20 46 69 6c 6c 4c 6f 6f | BLT | FillLoo|
|00000f70| 70 0d 05 f0 1b 3b 20 63 | 68 65 63 6b 20 66 6f 72 |p....; c|heck for|
|00000f80| 20 65 6e 64 20 6f 66 20 | 6e 6f 74 65 0d 05 fa 3e | end of |note...>|
|00000f90| 20 20 20 53 55 42 53 20 | 20 20 20 52 34 2c 52 34 | SUBS | R4,R4|
|00000fa0| 2c 23 31 20 20 20 20 20 | 20 20 20 20 20 3b 20 64 |,#1 | ; d|
|00000fb0| 65 63 72 65 6d 65 6e 74 | 20 63 65 6e 74 69 73 65 |ecrement| centise|
|00000fc0| 63 6f 6e 64 20 63 6f 75 | 6e 74 0d 06 04 39 20 20 |cond cou|nt...9 |
|00000fd0| 20 53 54 4d 49 42 20 20 | 20 52 39 2c 7b 52 32 2d | STMIB | R9,{R2-|
|00000fe0| 52 35 7d 20 20 20 20 20 | 20 20 20 3b 20 73 61 76 |R5} | ; sav|
|00000ff0| 65 20 72 65 67 69 73 74 | 65 72 73 20 74 6f 20 53 |e regist|ers to S|
|00001000| 43 43 42 0d 06 0e 46 20 | 20 20 4d 4f 56 50 4c 20 |CCB...F | MOVPL |
|00001010| 20 20 52 30 2c 23 25 30 | 30 30 30 31 30 30 30 20 | R0,#%0|0001000 |
|00001020| 20 20 20 20 3b 20 76 6f | 69 63 65 20 61 63 74 69 | ; vo|ice acti|
|00001030| 76 65 20 69 66 20 73 74 | 69 6c 6c 20 64 75 72 61 |ve if st|ill dura|
|00001040| 74 69 6f 6e 20 6c 65 66 | 74 0d 06 18 33 20 20 20 |tion lef|t...3 |
|00001050| 4d 4f 56 4d 49 20 20 20 | 52 30 2c 23 25 30 30 30 |MOVMI |R0,#%000|
|00001060| 30 30 30 31 30 20 20 20 | 20 20 3b 20 65 6c 73 65 |00010 | ; else|
|00001070| 20 66 6f 72 63 65 20 66 | 6c 75 73 68 0d 06 22 34 | force f|lush.."4|
|00001080| 20 20 20 4c 44 4d 46 44 | 20 20 20 52 31 33 21 2c | LDMFD| R13!,|
|00001090| 7b 50 43 7d 20 20 20 20 | 20 20 20 20 20 3b 20 72 |{PC} | ; r|
|000010a0| 65 74 75 72 6e 20 74 6f | 20 6c 65 76 65 6c 20 31 |eturn to| level 1|
|000010b0| 0d 06 2c 05 3b 0d 06 36 | 05 3b 0d 06 40 05 3b 0d |..,.;..6|.;..@.;.|
|000010c0| 06 4a 0c 2e 47 61 74 65 | 4f 66 66 0d 06 54 14 20 |.J..Gate|Off..T. |
|000010d0| 20 20 4d 4f 56 20 20 20 | 20 20 52 30 2c 23 30 0d | MOV | R0,#0.|
|000010e0| 06 5e 0e 2e 46 6c 75 73 | 68 4c 6f 6f 70 0d 06 68 |.^..Flus|hLoop..h|
|000010f0| 14 20 20 20 4d 4f 56 20 | 20 20 20 20 52 30 2c 23 |. MOV | R0,#|
|00001100| 30 0d 06 72 3a 20 20 20 | 53 54 52 42 20 20 20 20 |0..r: |STRB |
|00001110| 52 30 2c 5b 52 31 32 5d | 2c 52 31 31 20 20 20 20 |R0,[R12]|,R11 |
|00001120| 20 20 3b 20 66 69 6c 6c | 20 62 75 66 66 65 72 20 | ; fill| buffer |
|00001130| 77 69 74 68 20 7a 65 72 | 6f 65 73 0d 06 7c 16 20 |with zer|oes..|. |
|00001140| 20 20 43 4d 50 20 20 20 | 20 20 52 31 32 2c 52 31 | CMP | R12,R1|
|00001150| 30 0d 06 86 18 20 20 20 | 42 4c 54 20 20 20 20 20 |0.... |BLT |
|00001160| 46 6c 75 73 68 4c 6f 6f | 70 0d 06 90 26 3b 20 43 |FlushLoo|p...&; C|
|00001170| 41 55 53 45 20 6c 65 76 | 65 6c 20 31 20 74 6f 20 |AUSE lev|el 1 to |
|00001180| 46 4c 55 53 48 20 6f 6e | 63 65 20 6d 6f 72 65 0d |FLUSH on|ce more.|
|00001190| 06 9a 44 20 20 20 4d 4f | 56 20 20 20 20 20 52 30 |..D MO|V R0|
|000011a0| 2c 23 25 30 30 30 30 30 | 30 30 31 20 20 20 20 20 |,#%00000|001 |
|000011b0| 3b 20 73 65 74 20 66 6c | 61 67 20 74 6f 20 66 6c |; set fl|ag to fl|
|000011c0| 75 73 68 20 6f 6e 65 20 | 6d 6f 72 65 20 62 75 66 |ush one |more buf|
|000011d0| 66 65 72 0d 06 a4 18 20 | 20 20 4c 44 4d 46 44 20 |fer.... | LDMFD |
|000011e0| 20 20 52 31 33 21 2c 7b | 50 43 7d 0d 06 ae 05 5d | R13!,{|PC}....]|
|000011f0| 0d 06 b8 07 ed 20 43 0d | 06 c2 05 3a 0d 06 cc 34 |..... C.|...:...4|
|00001200| c8 99 20 22 53 6f 75 6e | 64 5f 49 6e 73 74 61 6c |.. "Soun|d_Instal|
|00001210| 6c 56 6f 69 63 65 22 2c | 56 6f 69 63 65 42 61 73 |lVoice",|VoiceBas|
|00001220| 65 2c 30 20 b8 20 61 25 | 2c 20 56 6f 69 63 65 25 |e,0 . a%|, Voice%|
|00001230| 0d 06 d6 2d c8 99 20 22 | 53 6f 75 6e 64 5f 41 74 |...-.. "|Sound_At|
|00001240| 74 61 63 68 56 6f 69 63 | 65 22 2c 31 2c 30 20 b8 |tachVoic|e",1,0 .|
|00001250| 20 7a 25 2c 4f 6c 64 56 | 6f 69 63 65 25 0d 06 e0 | z%,OldV|oice%...|
|00001260| 19 c8 a1 20 31 2c 20 22 | 53 70 65 61 6b 69 6e 67 |... 1, "|Speaking|
|00001270| 43 6c 6f 63 6b 22 0d 06 | ea 05 3a 0d 06 f4 08 c8 |Clock"..|..:.....|
|00001280| a0 20 31 0d 06 fe 2a d4 | 20 31 2c 26 31 37 46 2c |. 1...*.| 1,&17F,|
|00001290| 35 33 2c 32 30 30 20 3a | f4 20 61 63 74 69 76 61 |53,200 :|. activa|
|000012a0| 74 65 20 63 68 61 6e 6e | 65 6c 20 31 21 0d 07 08 |te chann|el 1!...|
|000012b0| 21 d1 3d 30 3a f5 3a fd | 20 91 20 3e 20 52 65 61 |!.=0:.:.| . > Rea|
|000012c0| 6c 53 61 6d 70 6c 65 4c | 65 6e 25 2b 32 30 0d 07 |lSampleL|en%+20..|
|000012d0| 12 05 3a 0d 07 1c 11 f2 | 52 65 73 74 6f 72 65 53 |..:.....|RestoreS|
|000012e0| 6f 75 6e 64 0d 07 26 05 | 3a 0d 07 30 17 c8 99 20 |ound..&.|:..0... |
|000012f0| 22 57 69 6d 70 5f 43 6c | 6f 73 65 44 6f 77 6e 22 |"Wimp_Cl|oseDown"|
|00001300| 0d 07 3a 05 e0 0d 07 44 | 05 3a 0d 07 4e 13 dd 20 |..:....D|.:..N.. |
|00001310| f2 52 65 73 74 6f 72 65 | 53 6f 75 6e 64 0d 07 58 |.Restore|Sound..X|
|00001320| 25 20 20 c8 99 20 22 53 | 6f 75 6e 64 5f 52 65 6d |% .. "S|ound_Rem|
|00001330| 6f 76 65 56 6f 69 63 65 | 22 2c 30 2c 56 6f 69 63 |oveVoice|",0,Voic|
|00001340| 65 25 0d 07 62 05 e1 0d | 07 6c 05 3a 0d 07 76 11 |e%..b...|.l.:..v.|
|00001350| dd 20 a4 67 65 74 6e 65 | 78 74 61 72 67 0d 07 80 |. .getne|xtarg...|
|00001360| 11 ea 20 69 25 2c 63 68 | 24 2c 61 72 67 24 0d 07 |.. i%,ch|$,arg$..|
|00001370| 8a 0a 69 25 20 3d 20 31 | 0d 07 94 0b 61 72 67 24 |..i% = 1|....arg$|
|00001380| 3d 22 22 0d 07 9e 05 f5 | 0d 07 a8 19 20 20 63 68 |="".....|.... ch|
|00001390| 24 20 3d 20 c1 63 6c 69 | 6e 65 24 2c 69 25 2c 31 |$ = .cli|ne$,i%,1|
|000013a0| 29 0d 07 b2 24 20 20 e7 | 20 28 63 68 24 20 3c 3e |)...$ .| (ch$ <>|
|000013b0| 20 22 22 29 20 80 20 28 | 63 68 24 20 3c 3e 20 22 | "") . (|ch$ <> "|
|000013c0| 20 22 29 20 8c 0d 07 bc | 13 20 20 20 20 61 72 67 | ") ....|. arg|
|000013d0| 24 20 2b 3d 20 63 68 24 | 0d 07 c6 07 20 20 cd 0d |$ += ch$|.... ..|
|000013e0| 07 d0 0d 20 20 69 25 20 | 2b 3d 20 31 0d 07 da 1e |... i% |+= 1....|
|000013f0| fd 20 28 63 68 24 20 3d | 20 22 22 29 20 84 20 28 |. (ch$ =| "") . (|
|00001400| 63 68 24 20 3d 20 22 20 | 22 29 0d 07 e4 05 3a 0d |ch$ = " |")....:.|
|00001410| 07 ee 29 63 6c 69 6e 65 | 24 20 3d 20 c2 63 6c 69 |..)cline|$ = .cli|
|00001420| 6e 65 24 2c 20 a9 28 63 | 6c 69 6e 65 24 29 20 2d |ne$, .(c|line$) -|
|00001430| 20 28 69 25 2d 31 29 29 | 0d 07 f8 05 3a 0d 08 02 | (i%-1))|....:...|
|00001440| 0a 3d 20 61 72 67 24 0d | 08 0c 05 3a 0d 08 16 0c |.= arg$.|...:....|
|00001450| dd 20 f2 45 72 72 6f 72 | 0d 08 20 09 ee 20 85 20 |. .Error|.. .. . |
|00001460| 87 0d 08 2a 23 f4 20 49 | 66 20 6e 6f 20 72 6f 6f |...*#. I|f no roo|
|00001470| 6d 20 74 6f 20 6c 6f 61 | 64 20 73 61 6d 70 6c 65 |m to loa|d sample|
|00001480| 73 2e 2e 2e 0d 08 34 0c | e7 20 9f 3d 31 31 20 8c |s.....4.|. .=11 .|
|00001490| 0d 08 3e 10 20 20 45 72 | 72 25 21 30 20 3d 20 30 |..>. Er|r%!0 = 0|
|000014a0| 0d 08 48 54 20 20 24 28 | 45 72 72 25 2b 34 29 20 |..HT $(|Err%+4) |
|000014b0| 3d 20 22 53 6f 72 72 79 | 2c 20 62 75 74 20 79 6f |= "Sorry|, but yo|
|000014c0| 75 72 20 41 72 63 20 69 | 73 20 74 6f 6f 20 70 6f |ur Arc i|s too po|
|000014d0| 6c 69 74 65 20 74 6f 20 | 73 70 65 61 6b 20 77 69 |lite to |speak wi|
|000014e0| 74 68 20 69 74 73 20 6d | 65 6d 6f 72 79 20 66 75 |th its m|emory fu|
|000014f0| 6c 6c 21 22 0d 08 52 07 | 20 20 3a 0d 08 5c 33 20 |ll!"..R.| :..\3 |
|00001500| 20 c8 99 20 22 57 69 6d | 70 5f 52 65 70 6f 72 74 | .. "Wim|p_Report|
|00001510| 45 72 72 6f 72 22 2c 45 | 72 72 25 2c 31 2c 22 53 |Error",E|rr%,1,"S|
|00001520| 70 65 61 6b 69 6e 67 20 | 43 6c 6f 63 6b 22 0d 08 |peaking |Clock"..|
|00001530| 66 05 cd 0d 08 70 05 3a | 0d 08 7a 17 c8 99 20 22 |f....p.:|..z... "|
|00001540| 57 69 6d 70 5f 43 6c 6f | 73 65 44 6f 77 6e 22 0d |Wimp_Clo|seDown".|
|00001550| 08 84 05 e0 0d ff | |...... | |
+--------+-------------------------+-------------------------+--------+--------+