Home » Archimedes archive » Micro User » MU 1992-02.adf » PD » !PlayerMod/UserBits/TrackerIV

!PlayerMod/UserBits/TrackerIV

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Micro User » MU 1992-02.adf » PD
Filename: !PlayerMod/UserBits/TrackerIV
Read OK:
File size: 14A2 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM > UserBits.TrackerIV
   20REM   Four Channel VU Track display
   30REM   Written by Nick Smith & David Evans, 1990
   40:
   50IF MODE<>15 THEN PRINT '"I would like to be in MODE 15 please !"':END
   60N%=4
   70MODE 15:OFF
   80SYS "OS_Module",18,"TrackerModule" TO ,,,point%,pr%
   90IF pr%<=0 THEN PRINT '"Try running a SoundTracker tune before this app !"':END
  100:
  110mul%=640
  120DIM code% 4000+16*2*mul%
  130:
  140xpos=11
  150point=12
  160screenbse=10
  170multiply=9
  180FOR J%=0 TO 2 STEP 2
  190P%=code%
  200[OPT J%
  210 
  220 STMFD   R13!,{R14}
  230 SWI     &2010C
  240 MOV     point,R0
  250 MOV     screenbse,R1
  260 SWI     "XOS_RemoveCursors"
  270 MOV     multiply,#mul%
  280 MOV     R8,#0
  290 B       bigloop
  300.ltr
  310 EQUD    ltable
  320.orr
  330 EQUD    oldrefs
  340.or2r
  350 EQUD    oldrefs2
  360.cols
  370 EQUB 0:EQUB &17:EQUB &77:EQUB &63:EQUB &FF:ALIGN
  380.trackno
  390 EQUD    0
  400.bigloop
  410 MOV     R0,#19
  420 SWI     "XOS_Byte"
  430 LDR     R6,orr
  440 LDR     R7,or2r
  450 MOV     R14,#N%
  460 STR     R14,trackno
  470.trackloop1a
  480 SUB     R4,R7,R8
  490 MOV     R14,#0
  500 MOV     R1,#mul%
  510.loop1a
  520 LDR     R0,[R4],#4
  530 STRB    R14,[R0]
  540 LDR     R0,[R4],#4
  550 STRB    R14,[R0]
  560 LDR     R0,[R4],#4
  570 STRB    R14,[R0]
  580 LDR     R0,[R4],#4
  590 STRB    R14,[R0]
  600 LDR     R0,[R4],#4
  610 STRB    R14,[R0]
  620 LDR     R0,[R4],#4
  630 STRB    R14,[R0]
  640 LDR     R0,[R4],#4
  650 STRB    R14,[R0]
  660 LDR     R0,[R4],#4
  670 STRB    R14,[R0]
  680 SUBS    R1,R1,#8
  690 BNE     loop1a
  700 
  710 ADD     R7,R7,#mul%*4
  720 LDR     R14,trackno
  730 SUBS    R14,R14,#1
  740 STR     R14,trackno
  750 BNE     trackloop1a
  760 
  770 MOV     R14,#N%
  780 STR     R14,trackno
  790
  800.trackloop1b
  810 ADD     R4,R6,R8
  820 ADR     R1, cols
  830 LDRB    R14, [R1, R14]
  840 MOV     R1,#mul%
  850.loop1b
  860 LDR     R0,[R4],#4
  870 STRB    R14,[R0]
  880 LDR     R0,[R4],#4
  890 STRB    R14,[R0]
  900 LDR     R0,[R4],#4
  910 STRB    R14,[R0]
  920 LDR     R0,[R4],#4
  930 STRB    R14,[R0]
  940 LDR     R0,[R4],#4
  950 STRB    R14,[R0]
  960 LDR     R0,[R4],#4
  970 STRB    R14,[R0]
  980 LDR     R0,[R4],#4
  990 STRB    R14,[R0]
 1000 LDR     R0,[R4],#4
 1010 STRB    R14,[R0]
 1020 SUBS    R1,R1,#8
 1030 BNE     loop1b
 1040 
 1050 ADD     R6,R6,#mul%*4
 1060 LDR     R14,trackno
 1070 SUBS    R14,R14,#1
 1080 STR     R14,trackno
 1090 BNE     trackloop1b
 1100 
 1110 EOR     R8,R8,#mul%*4*4
 1120 
 1130 MOV     R14,#N%
 1140 STR     R14,trackno
 1150 SUB     R6,R6,#mul%*4*4
 1160 
 1170.trackloop2
 1180 STMFD   R13!,{R6-R8,screenbse,point}
 1190 
 1200 ADD     R0,point,#4
 1210 ADD     point,R6,R8
 1220 LDMIA   R0!,{R1-R6}
 1230 MOV     xpos,screenbse
 1240 MOV     R7,#mul%
 1250 TEQ     R1,#0
 1260 TEQNE   R5,#0
 1270 BEQ     nosignal
 1280 LDR     screenbse,ltr
 1290.loop1
 1300 LDRB    R0,[R5,R1,LSR #16]
 1310 SUBS    R0,R0,R6
 1320 MOVMI   R0,#0
 1330 LDR     R0,[screenbse,R0,LSL #2]
 1340 ADD     R3,xpos,R0,LSL #9
 1350 ADD     R3,R3,R0,LSL #7
 1360 STR     R3,[point],#4
 1370 ADD     xpos,xpos,#1
 1380 ADD     R1,R1,R2
 1390 SUBS    R7,R7,#1
 1400 BNE     loop1
 1410 B       donesignal
 1420 
 1430.nosignal
 1440 MOV     R0,#128<<7
 1450 ADD     R0,R0,R0,LSL #2
 1460 ADD     R0,R0,xpos
 1470.nosigloop
 1480 STR     xpos,[point],#4
 1490 ADD     xpos,xpos,#1
 1500 ADD     R0,R0,#1
 1510 SUBS    R7,R7,#1
 1520 BNE     nosigloop
 1530 
 1540.donesignal
 1550 LDMFD   R13!,{R6-R8,screenbse,point}
 1560 
 1570 ADD     screenbse,screenbse,#40*1024
 1580 ADD     point,point,#32
 1590 LDR     R14,trackno
 1600 SUBS    R14,R14,#1
 1610 ADD     R6,R6,#mul%*4
 1620 STR     R14,trackno
 1630 BNE     trackloop2
 1640 
 1650 SUB     screenbse,screenbse,#40*1024*N%
 1660 SUB     point,point,#32*N%
 1670 
 1680 SWI     "XOS_ReadEscapeState"
 1690 BCC     bigloop
 1700 MOV     R0,#124
 1710 SWI     "XOS_Byte"
 1720 SWI     "XOS_RestoreCursors"
 1730 LDMFD   R13!,{R14}
 1740 MOV     PC, R14
 1750 
 1760.ltable
 1770 ]:P%+=256*4:[OPT J%
 1780.oldrefs
 1790]:P%+=mul%*4*4:[OPT J%
 1800.oldrefs2
 1810]:P%+=mul%*4*4:[OPT J%
 1820 
 1830]
 1840NEXT
 1850:
 1860DIM p% 400
 1870FOR I%=0 TO 2 STEP 2
 1880P%=p%
 1890[OPT I%
 1900 
 1910.sc
 1920 EQUD    148
 1930 EQUD    150
 1940 EQUD    -1
 1950.setup
 1960 STMFD   R13!,{R14}
 1970 LDR     R1,a+8
 1980 MOV     R2,#255
 1990.logl1
 2000 MOV     R0,#&12000
 2010 STR     R0,[R1,R2,LSL #2]
 2020 SUBS    R2,R2,#1
 2030 BPL     logl1
 2040 MOV     R2,#255
 2050.logloop
 2060 SUBS    R0,R2,#128
 2070 MOV     R0,R0,LSL #24
 2080 ORRMI   R0,R0,#1<<31
 2090 SWI     "Sound_SoundLog"
 2100 SUB     R3,R2,#128
 2110 MOV     R3,R3,ASR #2
 2120.backrefx
 2130 STR     R3,[R1,R0,LSL #2]
 2140 ADD     R0,R0,#1
 2150 LDR     R14,[R1,R0,LSL #2]
 2160 TEQ     R14,#&12000
 2170 BEQ     backrefx
 2180 SUBS    R2,R2,#1
 2190 BPL     logloop
 2200 ADR     R0,sc
 2210 MOV     R1,R0
 2220 SWI     "OS_ReadVduVariables"
 2230 LDR     R4,sc
 2240 LDR     R5,sc+4
 2250 LDR     R0,a+12
 2260 MOV     R0,R0,LSL #2
 2270 LDR     R1,a+4
 2280 MOV     R2,#0
 2290 B       o2l
 2300.a
 2310 EQUD    oldrefs
 2320 EQUD    oldrefs2
 2330 EQUD    ltable
 2340 EQUD    mul%
 2350.o2l
 2360 STR     R4,[R1,R2,LSL #2]
 2370 ADD     R2,R2,#1
 2380 CMP     R2,R0
 2390 BLT     o2l
 2400 LDR     R0,a
 2410 MOV     R2,#3
 2420 MOV     R6,R5,LSR #2
 2430 ADD     R5,R4,R5,LSR #3
 2440 LDR     R3,a+12
 2450.trkl2
 2460 MOV     R1,#0
 2470.trkl
 2480 STR     R5,[R0,R1,LSL #2]
 2490 ADD     R1,R1,#1
 2500 CMP     R1,R3
 2510 BLT     trkl
 2520 ADD     R0,R0,R1,LSL #2
 2530 ADD     R5,R5,R6
 2540 SUBS    R2,R2,#1
 2550 BPL     trkl2
 2560 LDMFD   R13!,{PC}
 2570 
 2580]
 2590NEXT
 2600:
 2610CALL p%
 2620A%=point%+&A1C
 2630B%=!sc+(sc!4)/8
 2640CALL code%
 2650MODE 15:OFF
 2660:
 2670END

� > UserBits.TrackerIV
%�   Four Channel VU Track display
1�   Written by Nick Smith & David Evans, 1990
(:
2<� �<>15 � � '"I would like to be in MODE 15 please !"':�
<N%=4
F
� 15:�
P5ș "OS_Module",18,"TrackerModule" � ,,,point%,pr%
ZH� pr%<=0 � � '"Try running a SoundTracker tune before this app !"':�
d:
nmul%=640
x� code% 4000+16*2*mul%
�:
�xpos=11
�point=12
�screenbse=10
�multiply=9
�� J%=0 � 2 � 2
�P%=code%
�[OPT J%
� 
� STMFD   R13!,{R14}
� SWI     &2010C
� MOV     point,R0
� MOV     screenbse,R1
  SWI     "XOS_RemoveCursors"
 MOV     multiply,#mul%
 MOV     R8,#0
" B       bigloop
,.ltr
6 EQUD    ltable
@.orr
J EQUD    oldrefs
T	.or2r
^ EQUD    oldrefs2
h	.cols
r5 EQUB 0:EQUB &17:EQUB &77:EQUB &63:EQUB &FF:ALIGN
|.trackno
� EQUD    0
�.bigloop
� MOV     R0,#19
� SWI     "XOS_Byte"
� LDR     R6,orr
� LDR     R7,or2r
� MOV     R14,#N%
� STR     R14,trackno
�.trackloop1a
� SUB     R4,R7,R8
� MOV     R14,#0
� MOV     R1,#mul%
�.loop1a
 LDR     R0,[R4],#4
 STRB    R14,[R0]
 LDR     R0,[R4],#4
& STRB    R14,[R0]
0 LDR     R0,[R4],#4
: STRB    R14,[R0]
D LDR     R0,[R4],#4
N STRB    R14,[R0]
X LDR     R0,[R4],#4
b STRB    R14,[R0]
l LDR     R0,[R4],#4
v STRB    R14,[R0]
� LDR     R0,[R4],#4
� STRB    R14,[R0]
� LDR     R0,[R4],#4
� STRB    R14,[R0]
� SUBS    R1,R1,#8
� BNE     loop1a
� 
� ADD     R7,R7,#mul%*4
� LDR     R14,trackno
� SUBS    R14,R14,#1
� STR     R14,trackno
� BNE     trackloop1a
� 
 MOV     R14,#N%
 STR     R14,trackno

 .trackloop1b
* ADD     R4,R6,R8
4 ADR     R1, cols
> LDRB    R14, [R1, R14]
H MOV     R1,#mul%
R.loop1b
\ LDR     R0,[R4],#4
f STRB    R14,[R0]
p LDR     R0,[R4],#4
z STRB    R14,[R0]
� LDR     R0,[R4],#4
� STRB    R14,[R0]
� LDR     R0,[R4],#4
� STRB    R14,[R0]
� LDR     R0,[R4],#4
� STRB    R14,[R0]
� LDR     R0,[R4],#4
� STRB    R14,[R0]
� LDR     R0,[R4],#4
� STRB    R14,[R0]
� LDR     R0,[R4],#4
� STRB    R14,[R0]
� SUBS    R1,R1,#8
 BNE     loop1b
 
 ADD     R6,R6,#mul%*4
$ LDR     R14,trackno
. SUBS    R14,R14,#1
8 STR     R14,trackno
B BNE     trackloop1b
L 
V �     R8,R8,#mul%*4*4
` 
j MOV     R14,#N%
t STR     R14,trackno
~ SUB     R6,R6,#mul%*4*4
� 
�.trackloop2
�) STMFD   R13!,{R6-R8,screenbse,point}
� 
� ADD     R0,point,#4
� ADD     point,R6,R8
� LDMIA   R0!,{R1-R6}
� MOV     xpos,screenbse
� MOV     R7,#mul%
� TEQ     R1,#0
� TEQNE   R5,#0
� BEQ     nosignal
 LDR     screenbse,ltr


.loop1
 LDRB    R0,[R5,R1,LSR #16]
 SUBS    R0,R0,R6
( MOVMI   R0,#0
2% LDR     R0,[screenbse,R0,LSL #2]
< ADD     R3,xpos,R0,LSL #9
F ADD     R3,R3,R0,LSL #7
P STR     R3,[point],#4
Z ADD     xpos,xpos,#1
d ADD     R1,R1,R2
n SUBS    R7,R7,#1
x BNE     loop1
� B       donesignal
� 
�
.nosignal
� MOV     R0,#128<<7
� ADD     R0,R0,R0,LSL #2
� ADD     R0,R0,xpos
�.nosigloop
� STR     xpos,[point],#4
� ADD     xpos,xpos,#1
� ADD     R0,R0,#1
� SUBS    R7,R7,#1
� BNE     nosigloop
� 
.donesignal
) LDMFD   R13!,{R6-R8,screenbse,point}
 
") ADD     screenbse,screenbse,#40*1024
, ADD     point,point,#32
6 LDR     R14,trackno
@ SUBS    R14,R14,#1
J ADD     R6,R6,#mul%*4
T STR     R14,trackno
^ BNE     trackloop2
h 
r, SUB     screenbse,screenbse,#40*1024*N%
| SUB     point,point,#32*N%
� 
�" SWI     "XOS_ReadEscapeState"
� BCC     bigloop
� MOV     R0,#124
� SWI     "XOS_Byte"
�! SWI     "XOS_RestoreCursors"
� LDMFD   R13!,{R14}
� MOV     PC, R14
� 
�.ltable
� ]:P%+=256*4:[OPT J%
�.oldrefs
�]:P%+=mul%*4*4:[OPT J%

.oldrefs2
]:P%+=mul%*4*4:[OPT J%
 
&]
0�
::
D� p% 400
N� I%=0 � 2 � 2
X	P%=p%
b[OPT I%
l 
v.sc
� EQUD    148
� EQUD    150
� EQUD    -1
�
.setup
� STMFD   R13!,{R14}
� LDR     R1,a+8
� MOV     R2,#255
�
.logl1
� MOV     R0,#&12000
� STR     R0,[R1,R2,LSL #2]
� SUBS    R2,R2,#1
� BPL     logl1
� MOV     R2,#255
.logloop
 SUBS    R0,R2,#128
 MOV     R0,R0,LSL #24
  �RMI   R0,R0,#1<<31
* SWI     "Sound_SoundLog"
4 SUB     R3,R2,#128
> MOV     R3,R3,ASR #2
H
.backrefx
R STR     R3,[R1,R0,LSL #2]
\ ADD     R0,R0,#1
f LDR     R14,[R1,R0,LSL #2]
p TEQ     R14,#&12000
z BEQ     backrefx
� SUBS    R2,R2,#1
� BPL     logloop
� ADR     R0,sc
� MOV     R1,R0
�" SWI     "OS_ReadVduVariables"
� LDR     R4,sc
� LDR     R5,sc+4
� LDR     R0,a+12
� MOV     R0,R0,LSL #2
� LDR     R1,a+4
� MOV     R2,#0
� B       o2l
�.a
	 EQUD    oldrefs
	 EQUD    oldrefs2
	 EQUD    ltable
	$ EQUD    mul%
	..o2l
	8 STR     R4,[R1,R2,LSL #2]
	B ADD     R2,R2,#1
	L CMP     R2,R0
	V BLT     o2l
	` LDR     R0,a
	j MOV     R2,#3
	t MOV     R6,R5,LSR #2
	~ ADD     R5,R4,R5,LSR #3
	� LDR     R3,a+12
	�
.trkl2
	� MOV     R1,#0
	�	.trkl
	� STR     R5,[R0,R1,LSL #2]
	� ADD     R1,R1,#1
	� CMP     R1,R3
	� BLT     trkl
	� ADD     R0,R0,R1,LSL #2
	� ADD     R5,R5,R6
	� SUBS    R2,R2,#1
	� BPL     trkl2
 LDMFD   R13!,{PC}

 
]
�
(:
2� p%
<A%=point%+&A1C
FB%=!sc+(sc!4)/8
P� code%
Z
� 15:�
d:
n�
�
00000000  0d 00 0a 1a f4 20 3e 20  55 73 65 72 42 69 74 73  |..... > UserBits|
00000010  2e 54 72 61 63 6b 65 72  49 56 0d 00 14 25 f4 20  |.TrackerIV...%. |
00000020  20 20 46 6f 75 72 20 43  68 61 6e 6e 65 6c 20 56  |  Four Channel V|
00000030  55 20 54 72 61 63 6b 20  64 69 73 70 6c 61 79 0d  |U Track display.|
00000040  00 1e 31 f4 20 20 20 57  72 69 74 74 65 6e 20 62  |..1.   Written b|
00000050  79 20 4e 69 63 6b 20 53  6d 69 74 68 20 26 20 44  |y Nick Smith & D|
00000060  61 76 69 64 20 45 76 61  6e 73 2c 20 31 39 39 30  |avid Evans, 1990|
00000070  0d 00 28 05 3a 0d 00 32  3c e7 20 eb 3c 3e 31 35  |..(.:..2<. .<>15|
00000080  20 8c 20 f1 20 27 22 49  20 77 6f 75 6c 64 20 6c  | . . '"I would l|
00000090  69 6b 65 20 74 6f 20 62  65 20 69 6e 20 4d 4f 44  |ike to be in MOD|
000000a0  45 20 31 35 20 70 6c 65  61 73 65 20 21 22 27 3a  |E 15 please !"':|
000000b0  e0 0d 00 3c 08 4e 25 3d  34 0d 00 46 0a eb 20 31  |...<.N%=4..F.. 1|
000000c0  35 3a 87 0d 00 50 35 c8  99 20 22 4f 53 5f 4d 6f  |5:...P5.. "OS_Mo|
000000d0  64 75 6c 65 22 2c 31 38  2c 22 54 72 61 63 6b 65  |dule",18,"Tracke|
000000e0  72 4d 6f 64 75 6c 65 22  20 b8 20 2c 2c 2c 70 6f  |rModule" . ,,,po|
000000f0  69 6e 74 25 2c 70 72 25  0d 00 5a 48 e7 20 70 72  |int%,pr%..ZH. pr|
00000100  25 3c 3d 30 20 8c 20 f1  20 27 22 54 72 79 20 72  |%<=0 . . '"Try r|
00000110  75 6e 6e 69 6e 67 20 61  20 53 6f 75 6e 64 54 72  |unning a SoundTr|
00000120  61 63 6b 65 72 20 74 75  6e 65 20 62 65 66 6f 72  |acker tune befor|
00000130  65 20 74 68 69 73 20 61  70 70 20 21 22 27 3a e0  |e this app !"':.|
00000140  0d 00 64 05 3a 0d 00 6e  0c 6d 75 6c 25 3d 36 34  |..d.:..n.mul%=64|
00000150  30 0d 00 78 1a de 20 63  6f 64 65 25 20 34 30 30  |0..x.. code% 400|
00000160  30 2b 31 36 2a 32 2a 6d  75 6c 25 0d 00 82 05 3a  |0+16*2*mul%....:|
00000170  0d 00 8c 0b 78 70 6f 73  3d 31 31 0d 00 96 0c 70  |....xpos=11....p|
00000180  6f 69 6e 74 3d 31 32 0d  00 a0 10 73 63 72 65 65  |oint=12....scree|
00000190  6e 62 73 65 3d 31 30 0d  00 aa 0e 6d 75 6c 74 69  |nbse=10....multi|
000001a0  70 6c 79 3d 39 0d 00 b4  12 e3 20 4a 25 3d 30 20  |ply=9..... J%=0 |
000001b0  b8 20 32 20 88 20 32 0d  00 be 0c 50 25 3d 63 6f  |. 2 . 2....P%=co|
000001c0  64 65 25 0d 00 c8 0b 5b  4f 50 54 20 4a 25 0d 00  |de%....[OPT J%..|
000001d0  d2 05 20 0d 00 dc 17 20  53 54 4d 46 44 20 20 20  |.. .... STMFD   |
000001e0  52 31 33 21 2c 7b 52 31  34 7d 0d 00 e6 13 20 53  |R13!,{R14}.... S|
000001f0  57 49 20 20 20 20 20 26  32 30 31 30 43 0d 00 f0  |WI     &2010C...|
00000200  15 20 4d 4f 56 20 20 20  20 20 70 6f 69 6e 74 2c  |. MOV     point,|
00000210  52 30 0d 00 fa 19 20 4d  4f 56 20 20 20 20 20 73  |R0.... MOV     s|
00000220  63 72 65 65 6e 62 73 65  2c 52 31 0d 01 04 20 20  |creenbse,R1...  |
00000230  53 57 49 20 20 20 20 20  22 58 4f 53 5f 52 65 6d  |SWI     "XOS_Rem|
00000240  6f 76 65 43 75 72 73 6f  72 73 22 0d 01 0e 1b 20  |oveCursors".... |
00000250  4d 4f 56 20 20 20 20 20  6d 75 6c 74 69 70 6c 79  |MOV     multiply|
00000260  2c 23 6d 75 6c 25 0d 01  18 12 20 4d 4f 56 20 20  |,#mul%.... MOV  |
00000270  20 20 20 52 38 2c 23 30  0d 01 22 14 20 42 20 20  |   R8,#0..". B  |
00000280  20 20 20 20 20 62 69 67  6c 6f 6f 70 0d 01 2c 08  |     bigloop..,.|
00000290  2e 6c 74 72 0d 01 36 13  20 45 51 55 44 20 20 20  |.ltr..6. EQUD   |
000002a0  20 6c 74 61 62 6c 65 0d  01 40 08 2e 6f 72 72 0d  | ltable..@..orr.|
000002b0  01 4a 14 20 45 51 55 44  20 20 20 20 6f 6c 64 72  |.J. EQUD    oldr|
000002c0  65 66 73 0d 01 54 09 2e  6f 72 32 72 0d 01 5e 15  |efs..T..or2r..^.|
000002d0  20 45 51 55 44 20 20 20  20 6f 6c 64 72 65 66 73  | EQUD    oldrefs|
000002e0  32 0d 01 68 09 2e 63 6f  6c 73 0d 01 72 35 20 45  |2..h..cols..r5 E|
000002f0  51 55 42 20 30 3a 45 51  55 42 20 26 31 37 3a 45  |QUB 0:EQUB &17:E|
00000300  51 55 42 20 26 37 37 3a  45 51 55 42 20 26 36 33  |QUB &77:EQUB &63|
00000310  3a 45 51 55 42 20 26 46  46 3a 41 4c 49 47 4e 0d  |:EQUB &FF:ALIGN.|
00000320  01 7c 0c 2e 74 72 61 63  6b 6e 6f 0d 01 86 0e 20  |.|..trackno.... |
00000330  45 51 55 44 20 20 20 20  30 0d 01 90 0c 2e 62 69  |EQUD    0.....bi|
00000340  67 6c 6f 6f 70 0d 01 9a  13 20 4d 4f 56 20 20 20  |gloop.... MOV   |
00000350  20 20 52 30 2c 23 31 39  0d 01 a4 17 20 53 57 49  |  R0,#19.... SWI|
00000360  20 20 20 20 20 22 58 4f  53 5f 42 79 74 65 22 0d  |     "XOS_Byte".|
00000370  01 ae 13 20 4c 44 52 20  20 20 20 20 52 36 2c 6f  |... LDR     R6,o|
00000380  72 72 0d 01 b8 14 20 4c  44 52 20 20 20 20 20 52  |rr.... LDR     R|
00000390  37 2c 6f 72 32 72 0d 01  c2 14 20 4d 4f 56 20 20  |7,or2r.... MOV  |
000003a0  20 20 20 52 31 34 2c 23  4e 25 0d 01 cc 18 20 53  |   R14,#N%.... S|
000003b0  54 52 20 20 20 20 20 52  31 34 2c 74 72 61 63 6b  |TR     R14,track|
000003c0  6e 6f 0d 01 d6 10 2e 74  72 61 63 6b 6c 6f 6f 70  |no.....trackloop|
000003d0  31 61 0d 01 e0 15 20 53  55 42 20 20 20 20 20 52  |1a.... SUB     R|
000003e0  34 2c 52 37 2c 52 38 0d  01 ea 13 20 4d 4f 56 20  |4,R7,R8.... MOV |
000003f0  20 20 20 20 52 31 34 2c  23 30 0d 01 f4 15 20 4d  |    R14,#0.... M|
00000400  4f 56 20 20 20 20 20 52  31 2c 23 6d 75 6c 25 0d  |OV     R1,#mul%.|
00000410  01 fe 0b 2e 6c 6f 6f 70  31 61 0d 02 08 17 20 4c  |....loop1a.... L|
00000420  44 52 20 20 20 20 20 52  30 2c 5b 52 34 5d 2c 23  |DR     R0,[R4],#|
00000430  34 0d 02 12 15 20 53 54  52 42 20 20 20 20 52 31  |4.... STRB    R1|
00000440  34 2c 5b 52 30 5d 0d 02  1c 17 20 4c 44 52 20 20  |4,[R0].... LDR  |
00000450  20 20 20 52 30 2c 5b 52  34 5d 2c 23 34 0d 02 26  |   R0,[R4],#4..&|
00000460  15 20 53 54 52 42 20 20  20 20 52 31 34 2c 5b 52  |. STRB    R14,[R|
00000470  30 5d 0d 02 30 17 20 4c  44 52 20 20 20 20 20 52  |0]..0. LDR     R|
00000480  30 2c 5b 52 34 5d 2c 23  34 0d 02 3a 15 20 53 54  |0,[R4],#4..:. ST|
00000490  52 42 20 20 20 20 52 31  34 2c 5b 52 30 5d 0d 02  |RB    R14,[R0]..|
000004a0  44 17 20 4c 44 52 20 20  20 20 20 52 30 2c 5b 52  |D. LDR     R0,[R|
000004b0  34 5d 2c 23 34 0d 02 4e  15 20 53 54 52 42 20 20  |4],#4..N. STRB  |
000004c0  20 20 52 31 34 2c 5b 52  30 5d 0d 02 58 17 20 4c  |  R14,[R0]..X. L|
000004d0  44 52 20 20 20 20 20 52  30 2c 5b 52 34 5d 2c 23  |DR     R0,[R4],#|
000004e0  34 0d 02 62 15 20 53 54  52 42 20 20 20 20 52 31  |4..b. STRB    R1|
000004f0  34 2c 5b 52 30 5d 0d 02  6c 17 20 4c 44 52 20 20  |4,[R0]..l. LDR  |
00000500  20 20 20 52 30 2c 5b 52  34 5d 2c 23 34 0d 02 76  |   R0,[R4],#4..v|
00000510  15 20 53 54 52 42 20 20  20 20 52 31 34 2c 5b 52  |. STRB    R14,[R|
00000520  30 5d 0d 02 80 17 20 4c  44 52 20 20 20 20 20 52  |0].... LDR     R|
00000530  30 2c 5b 52 34 5d 2c 23  34 0d 02 8a 15 20 53 54  |0,[R4],#4.... ST|
00000540  52 42 20 20 20 20 52 31  34 2c 5b 52 30 5d 0d 02  |RB    R14,[R0]..|
00000550  94 17 20 4c 44 52 20 20  20 20 20 52 30 2c 5b 52  |.. LDR     R0,[R|
00000560  34 5d 2c 23 34 0d 02 9e  15 20 53 54 52 42 20 20  |4],#4.... STRB  |
00000570  20 20 52 31 34 2c 5b 52  30 5d 0d 02 a8 15 20 53  |  R14,[R0].... S|
00000580  55 42 53 20 20 20 20 52  31 2c 52 31 2c 23 38 0d  |UBS    R1,R1,#8.|
00000590  02 b2 13 20 42 4e 45 20  20 20 20 20 6c 6f 6f 70  |... BNE     loop|
000005a0  31 61 0d 02 bc 05 20 0d  02 c6 1a 20 41 44 44 20  |1a.... .... ADD |
000005b0  20 20 20 20 52 37 2c 52  37 2c 23 6d 75 6c 25 2a  |    R7,R7,#mul%*|
000005c0  34 0d 02 d0 18 20 4c 44  52 20 20 20 20 20 52 31  |4.... LDR     R1|
000005d0  34 2c 74 72 61 63 6b 6e  6f 0d 02 da 17 20 53 55  |4,trackno.... SU|
000005e0  42 53 20 20 20 20 52 31  34 2c 52 31 34 2c 23 31  |BS    R14,R14,#1|
000005f0  0d 02 e4 18 20 53 54 52  20 20 20 20 20 52 31 34  |.... STR     R14|
00000600  2c 74 72 61 63 6b 6e 6f  0d 02 ee 18 20 42 4e 45  |,trackno.... BNE|
00000610  20 20 20 20 20 74 72 61  63 6b 6c 6f 6f 70 31 61  |     trackloop1a|
00000620  0d 02 f8 05 20 0d 03 02  14 20 4d 4f 56 20 20 20  |.... .... MOV   |
00000630  20 20 52 31 34 2c 23 4e  25 0d 03 0c 18 20 53 54  |  R14,#N%.... ST|
00000640  52 20 20 20 20 20 52 31  34 2c 74 72 61 63 6b 6e  |R     R14,trackn|
00000650  6f 0d 03 16 04 0d 03 20  10 2e 74 72 61 63 6b 6c  |o...... ..trackl|
00000660  6f 6f 70 31 62 0d 03 2a  15 20 41 44 44 20 20 20  |oop1b..*. ADD   |
00000670  20 20 52 34 2c 52 36 2c  52 38 0d 03 34 15 20 41  |  R4,R6,R8..4. A|
00000680  44 52 20 20 20 20 20 52  31 2c 20 63 6f 6c 73 0d  |DR     R1, cols.|
00000690  03 3e 1b 20 4c 44 52 42  20 20 20 20 52 31 34 2c  |.>. LDRB    R14,|
000006a0  20 5b 52 31 2c 20 52 31  34 5d 0d 03 48 15 20 4d  | [R1, R14]..H. M|
000006b0  4f 56 20 20 20 20 20 52  31 2c 23 6d 75 6c 25 0d  |OV     R1,#mul%.|
000006c0  03 52 0b 2e 6c 6f 6f 70  31 62 0d 03 5c 17 20 4c  |.R..loop1b..\. L|
000006d0  44 52 20 20 20 20 20 52  30 2c 5b 52 34 5d 2c 23  |DR     R0,[R4],#|
000006e0  34 0d 03 66 15 20 53 54  52 42 20 20 20 20 52 31  |4..f. STRB    R1|
000006f0  34 2c 5b 52 30 5d 0d 03  70 17 20 4c 44 52 20 20  |4,[R0]..p. LDR  |
00000700  20 20 20 52 30 2c 5b 52  34 5d 2c 23 34 0d 03 7a  |   R0,[R4],#4..z|
00000710  15 20 53 54 52 42 20 20  20 20 52 31 34 2c 5b 52  |. STRB    R14,[R|
00000720  30 5d 0d 03 84 17 20 4c  44 52 20 20 20 20 20 52  |0].... LDR     R|
00000730  30 2c 5b 52 34 5d 2c 23  34 0d 03 8e 15 20 53 54  |0,[R4],#4.... ST|
00000740  52 42 20 20 20 20 52 31  34 2c 5b 52 30 5d 0d 03  |RB    R14,[R0]..|
00000750  98 17 20 4c 44 52 20 20  20 20 20 52 30 2c 5b 52  |.. LDR     R0,[R|
00000760  34 5d 2c 23 34 0d 03 a2  15 20 53 54 52 42 20 20  |4],#4.... STRB  |
00000770  20 20 52 31 34 2c 5b 52  30 5d 0d 03 ac 17 20 4c  |  R14,[R0].... L|
00000780  44 52 20 20 20 20 20 52  30 2c 5b 52 34 5d 2c 23  |DR     R0,[R4],#|
00000790  34 0d 03 b6 15 20 53 54  52 42 20 20 20 20 52 31  |4.... STRB    R1|
000007a0  34 2c 5b 52 30 5d 0d 03  c0 17 20 4c 44 52 20 20  |4,[R0].... LDR  |
000007b0  20 20 20 52 30 2c 5b 52  34 5d 2c 23 34 0d 03 ca  |   R0,[R4],#4...|
000007c0  15 20 53 54 52 42 20 20  20 20 52 31 34 2c 5b 52  |. STRB    R14,[R|
000007d0  30 5d 0d 03 d4 17 20 4c  44 52 20 20 20 20 20 52  |0].... LDR     R|
000007e0  30 2c 5b 52 34 5d 2c 23  34 0d 03 de 15 20 53 54  |0,[R4],#4.... ST|
000007f0  52 42 20 20 20 20 52 31  34 2c 5b 52 30 5d 0d 03  |RB    R14,[R0]..|
00000800  e8 17 20 4c 44 52 20 20  20 20 20 52 30 2c 5b 52  |.. LDR     R0,[R|
00000810  34 5d 2c 23 34 0d 03 f2  15 20 53 54 52 42 20 20  |4],#4.... STRB  |
00000820  20 20 52 31 34 2c 5b 52  30 5d 0d 03 fc 15 20 53  |  R14,[R0].... S|
00000830  55 42 53 20 20 20 20 52  31 2c 52 31 2c 23 38 0d  |UBS    R1,R1,#8.|
00000840  04 06 13 20 42 4e 45 20  20 20 20 20 6c 6f 6f 70  |... BNE     loop|
00000850  31 62 0d 04 10 05 20 0d  04 1a 1a 20 41 44 44 20  |1b.... .... ADD |
00000860  20 20 20 20 52 36 2c 52  36 2c 23 6d 75 6c 25 2a  |    R6,R6,#mul%*|
00000870  34 0d 04 24 18 20 4c 44  52 20 20 20 20 20 52 31  |4..$. LDR     R1|
00000880  34 2c 74 72 61 63 6b 6e  6f 0d 04 2e 17 20 53 55  |4,trackno.... SU|
00000890  42 53 20 20 20 20 52 31  34 2c 52 31 34 2c 23 31  |BS    R14,R14,#1|
000008a0  0d 04 38 18 20 53 54 52  20 20 20 20 20 52 31 34  |..8. STR     R14|
000008b0  2c 74 72 61 63 6b 6e 6f  0d 04 42 18 20 42 4e 45  |,trackno..B. BNE|
000008c0  20 20 20 20 20 74 72 61  63 6b 6c 6f 6f 70 31 62  |     trackloop1b|
000008d0  0d 04 4c 05 20 0d 04 56  1a 20 82 20 20 20 20 20  |..L. ..V. .     |
000008e0  52 38 2c 52 38 2c 23 6d  75 6c 25 2a 34 2a 34 0d  |R8,R8,#mul%*4*4.|
000008f0  04 60 05 20 0d 04 6a 14  20 4d 4f 56 20 20 20 20  |.`. ..j. MOV    |
00000900  20 52 31 34 2c 23 4e 25  0d 04 74 18 20 53 54 52  | R14,#N%..t. STR|
00000910  20 20 20 20 20 52 31 34  2c 74 72 61 63 6b 6e 6f  |     R14,trackno|
00000920  0d 04 7e 1c 20 53 55 42  20 20 20 20 20 52 36 2c  |..~. SUB     R6,|
00000930  52 36 2c 23 6d 75 6c 25  2a 34 2a 34 0d 04 88 05  |R6,#mul%*4*4....|
00000940  20 0d 04 92 0f 2e 74 72  61 63 6b 6c 6f 6f 70 32  | .....trackloop2|
00000950  0d 04 9c 29 20 53 54 4d  46 44 20 20 20 52 31 33  |...) STMFD   R13|
00000960  21 2c 7b 52 36 2d 52 38  2c 73 63 72 65 65 6e 62  |!,{R6-R8,screenb|
00000970  73 65 2c 70 6f 69 6e 74  7d 0d 04 a6 05 20 0d 04  |se,point}.... ..|
00000980  b0 18 20 41 44 44 20 20  20 20 20 52 30 2c 70 6f  |.. ADD     R0,po|
00000990  69 6e 74 2c 23 34 0d 04  ba 18 20 41 44 44 20 20  |int,#4.... ADD  |
000009a0  20 20 20 70 6f 69 6e 74  2c 52 36 2c 52 38 0d 04  |   point,R6,R8..|
000009b0  c4 18 20 4c 44 4d 49 41  20 20 20 52 30 21 2c 7b  |.. LDMIA   R0!,{|
000009c0  52 31 2d 52 36 7d 0d 04  ce 1b 20 4d 4f 56 20 20  |R1-R6}.... MOV  |
000009d0  20 20 20 78 70 6f 73 2c  73 63 72 65 65 6e 62 73  |   xpos,screenbs|
000009e0  65 0d 04 d8 15 20 4d 4f  56 20 20 20 20 20 52 37  |e.... MOV     R7|
000009f0  2c 23 6d 75 6c 25 0d 04  e2 12 20 54 45 51 20 20  |,#mul%.... TEQ  |
00000a00  20 20 20 52 31 2c 23 30  0d 04 ec 12 20 54 45 51  |   R1,#0.... TEQ|
00000a10  4e 45 20 20 20 52 35 2c  23 30 0d 04 f6 15 20 42  |NE   R5,#0.... B|
00000a20  45 51 20 20 20 20 20 6e  6f 73 69 67 6e 61 6c 0d  |EQ     nosignal.|
00000a30  05 00 1a 20 4c 44 52 20  20 20 20 20 73 63 72 65  |... LDR     scre|
00000a40  65 6e 62 73 65 2c 6c 74  72 0d 05 0a 0a 2e 6c 6f  |enbse,ltr.....lo|
00000a50  6f 70 31 0d 05 14 1f 20  4c 44 52 42 20 20 20 20  |op1.... LDRB    |
00000a60  52 30 2c 5b 52 35 2c 52  31 2c 4c 53 52 20 23 31  |R0,[R5,R1,LSR #1|
00000a70  36 5d 0d 05 1e 15 20 53  55 42 53 20 20 20 20 52  |6].... SUBS    R|
00000a80  30 2c 52 30 2c 52 36 0d  05 28 12 20 4d 4f 56 4d  |0,R0,R6..(. MOVM|
00000a90  49 20 20 20 52 30 2c 23  30 0d 05 32 25 20 4c 44  |I   R0,#0..2% LD|
00000aa0  52 20 20 20 20 20 52 30  2c 5b 73 63 72 65 65 6e  |R     R0,[screen|
00000ab0  62 73 65 2c 52 30 2c 4c  53 4c 20 23 32 5d 0d 05  |bse,R0,LSL #2]..|
00000ac0  3c 1e 20 41 44 44 20 20  20 20 20 52 33 2c 78 70  |<. ADD     R3,xp|
00000ad0  6f 73 2c 52 30 2c 4c 53  4c 20 23 39 0d 05 46 1c  |os,R0,LSL #9..F.|
00000ae0  20 41 44 44 20 20 20 20  20 52 33 2c 52 33 2c 52  | ADD     R3,R3,R|
00000af0  30 2c 4c 53 4c 20 23 37  0d 05 50 1a 20 53 54 52  |0,LSL #7..P. STR|
00000b00  20 20 20 20 20 52 33 2c  5b 70 6f 69 6e 74 5d 2c  |     R3,[point],|
00000b10  23 34 0d 05 5a 19 20 41  44 44 20 20 20 20 20 78  |#4..Z. ADD     x|
00000b20  70 6f 73 2c 78 70 6f 73  2c 23 31 0d 05 64 15 20  |pos,xpos,#1..d. |
00000b30  41 44 44 20 20 20 20 20  52 31 2c 52 31 2c 52 32  |ADD     R1,R1,R2|
00000b40  0d 05 6e 15 20 53 55 42  53 20 20 20 20 52 37 2c  |..n. SUBS    R7,|
00000b50  52 37 2c 23 31 0d 05 78  12 20 42 4e 45 20 20 20  |R7,#1..x. BNE   |
00000b60  20 20 6c 6f 6f 70 31 0d  05 82 17 20 42 20 20 20  |  loop1.... B   |
00000b70  20 20 20 20 64 6f 6e 65  73 69 67 6e 61 6c 0d 05  |    donesignal..|
00000b80  8c 05 20 0d 05 96 0d 2e  6e 6f 73 69 67 6e 61 6c  |.. .....nosignal|
00000b90  0d 05 a0 17 20 4d 4f 56  20 20 20 20 20 52 30 2c  |.... MOV     R0,|
00000ba0  23 31 32 38 3c 3c 37 0d  05 aa 1c 20 41 44 44 20  |#128<<7.... ADD |
00000bb0  20 20 20 20 52 30 2c 52  30 2c 52 30 2c 4c 53 4c  |    R0,R0,R0,LSL|
00000bc0  20 23 32 0d 05 b4 17 20  41 44 44 20 20 20 20 20  | #2.... ADD     |
00000bd0  52 30 2c 52 30 2c 78 70  6f 73 0d 05 be 0e 2e 6e  |R0,R0,xpos.....n|
00000be0  6f 73 69 67 6c 6f 6f 70  0d 05 c8 1c 20 53 54 52  |osigloop.... STR|
00000bf0  20 20 20 20 20 78 70 6f  73 2c 5b 70 6f 69 6e 74  |     xpos,[point|
00000c00  5d 2c 23 34 0d 05 d2 19  20 41 44 44 20 20 20 20  |],#4.... ADD    |
00000c10  20 78 70 6f 73 2c 78 70  6f 73 2c 23 31 0d 05 dc  | xpos,xpos,#1...|
00000c20  15 20 41 44 44 20 20 20  20 20 52 30 2c 52 30 2c  |. ADD     R0,R0,|
00000c30  23 31 0d 05 e6 15 20 53  55 42 53 20 20 20 20 52  |#1.... SUBS    R|
00000c40  37 2c 52 37 2c 23 31 0d  05 f0 16 20 42 4e 45 20  |7,R7,#1.... BNE |
00000c50  20 20 20 20 6e 6f 73 69  67 6c 6f 6f 70 0d 05 fa  |    nosigloop...|
00000c60  05 20 0d 06 04 0f 2e 64  6f 6e 65 73 69 67 6e 61  |. .....donesigna|
00000c70  6c 0d 06 0e 29 20 4c 44  4d 46 44 20 20 20 52 31  |l...) LDMFD   R1|
00000c80  33 21 2c 7b 52 36 2d 52  38 2c 73 63 72 65 65 6e  |3!,{R6-R8,screen|
00000c90  62 73 65 2c 70 6f 69 6e  74 7d 0d 06 18 05 20 0d  |bse,point}.... .|
00000ca0  06 22 29 20 41 44 44 20  20 20 20 20 73 63 72 65  |.") ADD     scre|
00000cb0  65 6e 62 73 65 2c 73 63  72 65 65 6e 62 73 65 2c  |enbse,screenbse,|
00000cc0  23 34 30 2a 31 30 32 34  0d 06 2c 1c 20 41 44 44  |#40*1024..,. ADD|
00000cd0  20 20 20 20 20 70 6f 69  6e 74 2c 70 6f 69 6e 74  |     point,point|
00000ce0  2c 23 33 32 0d 06 36 18  20 4c 44 52 20 20 20 20  |,#32..6. LDR    |
00000cf0  20 52 31 34 2c 74 72 61  63 6b 6e 6f 0d 06 40 17  | R14,trackno..@.|
00000d00  20 53 55 42 53 20 20 20  20 52 31 34 2c 52 31 34  | SUBS    R14,R14|
00000d10  2c 23 31 0d 06 4a 1a 20  41 44 44 20 20 20 20 20  |,#1..J. ADD     |
00000d20  52 36 2c 52 36 2c 23 6d  75 6c 25 2a 34 0d 06 54  |R6,R6,#mul%*4..T|
00000d30  18 20 53 54 52 20 20 20  20 20 52 31 34 2c 74 72  |. STR     R14,tr|
00000d40  61 63 6b 6e 6f 0d 06 5e  17 20 42 4e 45 20 20 20  |ackno..^. BNE   |
00000d50  20 20 74 72 61 63 6b 6c  6f 6f 70 32 0d 06 68 05  |  trackloop2..h.|
00000d60  20 0d 06 72 2c 20 53 55  42 20 20 20 20 20 73 63  | ..r, SUB     sc|
00000d70  72 65 65 6e 62 73 65 2c  73 63 72 65 65 6e 62 73  |reenbse,screenbs|
00000d80  65 2c 23 34 30 2a 31 30  32 34 2a 4e 25 0d 06 7c  |e,#40*1024*N%..||
00000d90  1f 20 53 55 42 20 20 20  20 20 70 6f 69 6e 74 2c  |. SUB     point,|
00000da0  70 6f 69 6e 74 2c 23 33  32 2a 4e 25 0d 06 86 05  |point,#32*N%....|
00000db0  20 0d 06 90 22 20 53 57  49 20 20 20 20 20 22 58  | ..." SWI     "X|
00000dc0  4f 53 5f 52 65 61 64 45  73 63 61 70 65 53 74 61  |OS_ReadEscapeSta|
00000dd0  74 65 22 0d 06 9a 14 20  42 43 43 20 20 20 20 20  |te".... BCC     |
00000de0  62 69 67 6c 6f 6f 70 0d  06 a4 14 20 4d 4f 56 20  |bigloop.... MOV |
00000df0  20 20 20 20 52 30 2c 23  31 32 34 0d 06 ae 17 20  |    R0,#124.... |
00000e00  53 57 49 20 20 20 20 20  22 58 4f 53 5f 42 79 74  |SWI     "XOS_Byt|
00000e10  65 22 0d 06 b8 21 20 53  57 49 20 20 20 20 20 22  |e"...! SWI     "|
00000e20  58 4f 53 5f 52 65 73 74  6f 72 65 43 75 72 73 6f  |XOS_RestoreCurso|
00000e30  72 73 22 0d 06 c2 17 20  4c 44 4d 46 44 20 20 20  |rs".... LDMFD   |
00000e40  52 31 33 21 2c 7b 52 31  34 7d 0d 06 cc 14 20 4d  |R13!,{R14}.... M|
00000e50  4f 56 20 20 20 20 20 50  43 2c 20 52 31 34 0d 06  |OV     PC, R14..|
00000e60  d6 05 20 0d 06 e0 0b 2e  6c 74 61 62 6c 65 0d 06  |.. .....ltable..|
00000e70  ea 18 20 5d 3a 50 25 2b  3d 32 35 36 2a 34 3a 5b  |.. ]:P%+=256*4:[|
00000e80  4f 50 54 20 4a 25 0d 06  f4 0c 2e 6f 6c 64 72 65  |OPT J%.....oldre|
00000e90  66 73 0d 06 fe 1a 5d 3a  50 25 2b 3d 6d 75 6c 25  |fs....]:P%+=mul%|
00000ea0  2a 34 2a 34 3a 5b 4f 50  54 20 4a 25 0d 07 08 0d  |*4*4:[OPT J%....|
00000eb0  2e 6f 6c 64 72 65 66 73  32 0d 07 12 1a 5d 3a 50  |.oldrefs2....]:P|
00000ec0  25 2b 3d 6d 75 6c 25 2a  34 2a 34 3a 5b 4f 50 54  |%+=mul%*4*4:[OPT|
00000ed0  20 4a 25 0d 07 1c 05 20  0d 07 26 05 5d 0d 07 30  | J%.... ..&.]..0|
00000ee0  05 ed 0d 07 3a 05 3a 0d  07 44 0c de 20 70 25 20  |....:.:..D.. p% |
00000ef0  34 30 30 0d 07 4e 12 e3  20 49 25 3d 30 20 b8 20  |400..N.. I%=0 . |
00000f00  32 20 88 20 32 0d 07 58  09 50 25 3d 70 25 0d 07  |2 . 2..X.P%=p%..|
00000f10  62 0b 5b 4f 50 54 20 49  25 0d 07 6c 05 20 0d 07  |b.[OPT I%..l. ..|
00000f20  76 07 2e 73 63 0d 07 80  10 20 45 51 55 44 20 20  |v..sc.... EQUD  |
00000f30  20 20 31 34 38 0d 07 8a  10 20 45 51 55 44 20 20  |  148.... EQUD  |
00000f40  20 20 31 35 30 0d 07 94  0f 20 45 51 55 44 20 20  |  150.... EQUD  |
00000f50  20 20 2d 31 0d 07 9e 0a  2e 73 65 74 75 70 0d 07  |  -1.....setup..|
00000f60  a8 17 20 53 54 4d 46 44  20 20 20 52 31 33 21 2c  |.. STMFD   R13!,|
00000f70  7b 52 31 34 7d 0d 07 b2  13 20 4c 44 52 20 20 20  |{R14}.... LDR   |
00000f80  20 20 52 31 2c 61 2b 38  0d 07 bc 14 20 4d 4f 56  |  R1,a+8.... MOV|
00000f90  20 20 20 20 20 52 32 2c  23 32 35 35 0d 07 c6 0a  |     R2,#255....|
00000fa0  2e 6c 6f 67 6c 31 0d 07  d0 17 20 4d 4f 56 20 20  |.logl1.... MOV  |
00000fb0  20 20 20 52 30 2c 23 26  31 32 30 30 30 0d 07 da  |   R0,#&12000...|
00000fc0  1e 20 53 54 52 20 20 20  20 20 52 30 2c 5b 52 31  |. STR     R0,[R1|
00000fd0  2c 52 32 2c 4c 53 4c 20  23 32 5d 0d 07 e4 15 20  |,R2,LSL #2].... |
00000fe0  53 55 42 53 20 20 20 20  52 32 2c 52 32 2c 23 31  |SUBS    R2,R2,#1|
00000ff0  0d 07 ee 12 20 42 50 4c  20 20 20 20 20 6c 6f 67  |.... BPL     log|
00001000  6c 31 0d 07 f8 14 20 4d  4f 56 20 20 20 20 20 52  |l1.... MOV     R|
00001010  32 2c 23 32 35 35 0d 08  02 0c 2e 6c 6f 67 6c 6f  |2,#255.....loglo|
00001020  6f 70 0d 08 0c 17 20 53  55 42 53 20 20 20 20 52  |op.... SUBS    R|
00001030  30 2c 52 32 2c 23 31 32  38 0d 08 16 1a 20 4d 4f  |0,R2,#128.... MO|
00001040  56 20 20 20 20 20 52 30  2c 52 30 2c 4c 53 4c 20  |V     R0,R0,LSL |
00001050  23 32 34 0d 08 20 18 20  84 52 4d 49 20 20 20 52  |#24.. . .RMI   R|
00001060  30 2c 52 30 2c 23 31 3c  3c 33 31 0d 08 2a 1d 20  |0,R0,#1<<31..*. |
00001070  53 57 49 20 20 20 20 20  22 53 6f 75 6e 64 5f 53  |SWI     "Sound_S|
00001080  6f 75 6e 64 4c 6f 67 22  0d 08 34 17 20 53 55 42  |oundLog"..4. SUB|
00001090  20 20 20 20 20 52 33 2c  52 32 2c 23 31 32 38 0d  |     R3,R2,#128.|
000010a0  08 3e 19 20 4d 4f 56 20  20 20 20 20 52 33 2c 52  |.>. MOV     R3,R|
000010b0  33 2c 41 53 52 20 23 32  0d 08 48 0d 2e 62 61 63  |3,ASR #2..H..bac|
000010c0  6b 72 65 66 78 0d 08 52  1e 20 53 54 52 20 20 20  |krefx..R. STR   |
000010d0  20 20 52 33 2c 5b 52 31  2c 52 30 2c 4c 53 4c 20  |  R3,[R1,R0,LSL |
000010e0  23 32 5d 0d 08 5c 15 20  41 44 44 20 20 20 20 20  |#2]..\. ADD     |
000010f0  52 30 2c 52 30 2c 23 31  0d 08 66 1f 20 4c 44 52  |R0,R0,#1..f. LDR|
00001100  20 20 20 20 20 52 31 34  2c 5b 52 31 2c 52 30 2c  |     R14,[R1,R0,|
00001110  4c 53 4c 20 23 32 5d 0d  08 70 18 20 54 45 51 20  |LSL #2]..p. TEQ |
00001120  20 20 20 20 52 31 34 2c  23 26 31 32 30 30 30 0d  |    R14,#&12000.|
00001130  08 7a 15 20 42 45 51 20  20 20 20 20 62 61 63 6b  |.z. BEQ     back|
00001140  72 65 66 78 0d 08 84 15  20 53 55 42 53 20 20 20  |refx.... SUBS   |
00001150  20 52 32 2c 52 32 2c 23  31 0d 08 8e 14 20 42 50  | R2,R2,#1.... BP|
00001160  4c 20 20 20 20 20 6c 6f  67 6c 6f 6f 70 0d 08 98  |L     logloop...|
00001170  12 20 41 44 52 20 20 20  20 20 52 30 2c 73 63 0d  |. ADR     R0,sc.|
00001180  08 a2 12 20 4d 4f 56 20  20 20 20 20 52 31 2c 52  |... MOV     R1,R|
00001190  30 0d 08 ac 22 20 53 57  49 20 20 20 20 20 22 4f  |0..." SWI     "O|
000011a0  53 5f 52 65 61 64 56 64  75 56 61 72 69 61 62 6c  |S_ReadVduVariabl|
000011b0  65 73 22 0d 08 b6 12 20  4c 44 52 20 20 20 20 20  |es".... LDR     |
000011c0  52 34 2c 73 63 0d 08 c0  14 20 4c 44 52 20 20 20  |R4,sc.... LDR   |
000011d0  20 20 52 35 2c 73 63 2b  34 0d 08 ca 14 20 4c 44  |  R5,sc+4.... LD|
000011e0  52 20 20 20 20 20 52 30  2c 61 2b 31 32 0d 08 d4  |R     R0,a+12...|
000011f0  19 20 4d 4f 56 20 20 20  20 20 52 30 2c 52 30 2c  |. MOV     R0,R0,|
00001200  4c 53 4c 20 23 32 0d 08  de 13 20 4c 44 52 20 20  |LSL #2.... LDR  |
00001210  20 20 20 52 31 2c 61 2b  34 0d 08 e8 12 20 4d 4f  |   R1,a+4.... MO|
00001220  56 20 20 20 20 20 52 32  2c 23 30 0d 08 f2 10 20  |V     R2,#0.... |
00001230  42 20 20 20 20 20 20 20  6f 32 6c 0d 08 fc 06 2e  |B       o2l.....|
00001240  61 0d 09 06 14 20 45 51  55 44 20 20 20 20 6f 6c  |a.... EQUD    ol|
00001250  64 72 65 66 73 0d 09 10  15 20 45 51 55 44 20 20  |drefs.... EQUD  |
00001260  20 20 6f 6c 64 72 65 66  73 32 0d 09 1a 13 20 45  |  oldrefs2.... E|
00001270  51 55 44 20 20 20 20 6c  74 61 62 6c 65 0d 09 24  |QUD    ltable..$|
00001280  11 20 45 51 55 44 20 20  20 20 6d 75 6c 25 0d 09  |. EQUD    mul%..|
00001290  2e 08 2e 6f 32 6c 0d 09  38 1e 20 53 54 52 20 20  |...o2l..8. STR  |
000012a0  20 20 20 52 34 2c 5b 52  31 2c 52 32 2c 4c 53 4c  |   R4,[R1,R2,LSL|
000012b0  20 23 32 5d 0d 09 42 15  20 41 44 44 20 20 20 20  | #2]..B. ADD    |
000012c0  20 52 32 2c 52 32 2c 23  31 0d 09 4c 12 20 43 4d  | R2,R2,#1..L. CM|
000012d0  50 20 20 20 20 20 52 32  2c 52 30 0d 09 56 10 20  |P     R2,R0..V. |
000012e0  42 4c 54 20 20 20 20 20  6f 32 6c 0d 09 60 11 20  |BLT     o2l..`. |
000012f0  4c 44 52 20 20 20 20 20  52 30 2c 61 0d 09 6a 12  |LDR     R0,a..j.|
00001300  20 4d 4f 56 20 20 20 20  20 52 32 2c 23 33 0d 09  | MOV     R2,#3..|
00001310  74 19 20 4d 4f 56 20 20  20 20 20 52 36 2c 52 35  |t. MOV     R6,R5|
00001320  2c 4c 53 52 20 23 32 0d  09 7e 1c 20 41 44 44 20  |,LSR #2..~. ADD |
00001330  20 20 20 20 52 35 2c 52  34 2c 52 35 2c 4c 53 52  |    R5,R4,R5,LSR|
00001340  20 23 33 0d 09 88 14 20  4c 44 52 20 20 20 20 20  | #3.... LDR     |
00001350  52 33 2c 61 2b 31 32 0d  09 92 0a 2e 74 72 6b 6c  |R3,a+12.....trkl|
00001360  32 0d 09 9c 12 20 4d 4f  56 20 20 20 20 20 52 31  |2.... MOV     R1|
00001370  2c 23 30 0d 09 a6 09 2e  74 72 6b 6c 0d 09 b0 1e  |,#0.....trkl....|
00001380  20 53 54 52 20 20 20 20  20 52 35 2c 5b 52 30 2c  | STR     R5,[R0,|
00001390  52 31 2c 4c 53 4c 20 23  32 5d 0d 09 ba 15 20 41  |R1,LSL #2].... A|
000013a0  44 44 20 20 20 20 20 52  31 2c 52 31 2c 23 31 0d  |DD     R1,R1,#1.|
000013b0  09 c4 12 20 43 4d 50 20  20 20 20 20 52 31 2c 52  |... CMP     R1,R|
000013c0  33 0d 09 ce 11 20 42 4c  54 20 20 20 20 20 74 72  |3.... BLT     tr|
000013d0  6b 6c 0d 09 d8 1c 20 41  44 44 20 20 20 20 20 52  |kl.... ADD     R|
000013e0  30 2c 52 30 2c 52 31 2c  4c 53 4c 20 23 32 0d 09  |0,R0,R1,LSL #2..|
000013f0  e2 15 20 41 44 44 20 20  20 20 20 52 35 2c 52 35  |.. ADD     R5,R5|
00001400  2c 52 36 0d 09 ec 15 20  53 55 42 53 20 20 20 20  |,R6.... SUBS    |
00001410  52 32 2c 52 32 2c 23 31  0d 09 f6 12 20 42 50 4c  |R2,R2,#1.... BPL|
00001420  20 20 20 20 20 74 72 6b  6c 32 0d 0a 00 16 20 4c  |     trkl2.... L|
00001430  44 4d 46 44 20 20 20 52  31 33 21 2c 7b 50 43 7d  |DMFD   R13!,{PC}|
00001440  0d 0a 0a 05 20 0d 0a 14  05 5d 0d 0a 1e 05 ed 0d  |.... ....]......|
00001450  0a 28 05 3a 0d 0a 32 08  d6 20 70 25 0d 0a 3c 12  |.(.:..2.. p%..<.|
00001460  41 25 3d 70 6f 69 6e 74  25 2b 26 41 31 43 0d 0a  |A%=point%+&A1C..|
00001470  46 13 42 25 3d 21 73 63  2b 28 73 63 21 34 29 2f  |F.B%=!sc+(sc!4)/|
00001480  38 0d 0a 50 0b d6 20 63  6f 64 65 25 0d 0a 5a 0a  |8..P.. code%..Z.|
00001490  eb 20 31 35 3a 87 0d 0a  64 05 3a 0d 0a 6e 05 e0  |. 15:...d.:..n..|
000014a0  0d ff                                             |..|
000014a2