Home » Personal collection » Acorn hard disk » demos » Demo » Sillies/!WobblText/!RunImage
Sillies/!WobblText/!RunImage
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 » Personal collection » Acorn hard disk » demos » Demo |
Filename: | Sillies/!WobblText/!RunImage |
Read OK: | ✔ |
File size: | 11B5 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM WobbleText 20REM by Jack Parkinson 30MODE 15 40OFF 50ON ERROR PROCerror:END 60: 70amp1%=2 80amp2%=2 90wave1inc%=30+RND(5) 100wave2inc%=15+RND(5) 110minheight%=3 120: 130PRINT "Please wait... FOR PETER TO SPILL THE BEANS ON HIS LATEST ROMP!!" 140PROCload 150PROCtables 160PROCassemble 170MODE 13 180OFF 190CALL animate 200MODE 0 210END 220: 230DEF PROCerror 240MODE 0 250PRINT REPORT$;" at line ";ERL 260ENDPROC 270: 280DEF FNfilelen(fn$) 290f%=OPENIN(fn$) 300len%=EXT#f% 310CLOSE #f% 320=len% 330: 340DEF PROCload 350sprites%=(FNfilelen("<WobbleText$Dir>.charimage")-256) DIV (32*40) 360DIM charimage% (256+32*40*sprites%) 370OSCLI "LOAD <WobbleText$Dir>.charimage "+STR$~charimage% 380textlen%=FNfilelen("<WobbleText$Dir>.text") 390DIM text% textlen%+10 400OSCLI "LOAD <WobbleText$Dir>.text "+STR$~text% 410FOR i%=0 TO 9 420text%?(textlen%+i%)=32 430NEXT i% 440ENDPROC 450: 460DEF PROCtables 470wavelength%=640 480DIM sinetable% wavelength%,scaletable% 128*128 490FOR p%=1 TO wavelength% 500angle=2*PI*(p%/wavelength%) 510sinetable%?(p%-1)=128+127*SIN(angle) 520NEXT p% 530FOR height%=1 TO 128 540addr%=scaletable%+128*(height%-1) 550FOR ypos%=1 TO height% 560addr%?(ypos%-1)=40*(ypos%/height%)-1 570NEXT ypos% 580NEXT height% 590ENDPROC 600: 610: 620DEF PROCassemble 630wave1ypos%=128-(128/2^amp1%)-minheight%/2 640wave2ypos%=128+(128/2^amp2%)+minheight%/2 650DIM code% &1000,temp% 88*4 660FOR pass%=0 TO 2 STEP 2 670P%=code% 680[OPT pass% 690.vbuffer EQUD 148 700 EQUD -1 710.scr1 EQUD 0 720.scr2 EQUD 0 730.cscr EQUD 0 740.textaddr EQUD text% 750.textlen EQUD textlen% 760.textpos EQUD 0 770.textoff EQUD 0 780.spriteaddr EQUD charimage%+256 790.asciitable EQUD charimage% 800.sinetable EQUD sinetable% 810.wave1pos EQUD 0 820.wave2pos EQUD 0 830.scaletable EQUD scaletable% 840.plottable EQUD temp% 850: 860.animate 870STMFD R13!,{R14} 880.aniloop 890BL cls 900BL plotscrolltext 910BL doscroll 920BL swap 930MOV R0,#129 940MVN R1,#112 950MOV R2,#&FF 960SWI "OS_Byte" 970CMP R1,#&FF 980BNE aniloop 990LDMFD R13!,{PC} 1000: 1010.swap 1020MOV R0,#19 1030SWI "OS_Byte" 1040LDR R0,cscr 1050LDR R1,scr1 1060LDR R2,scr2 1070CMP R0,R2 1080BEQ swap2 1090.swap1 1100STR R2,cscr 1110MOV R0,#113 1120MOV R1,#1 1130SWI "OS_Byte" 1140MOV PC,R14 1150.swap2 1160STR R1,cscr 1170MOV R0,#113 1180MOV R1,#2 1190SWI "OS_Byte" 1200MOV PC,R14 1210: 1220.cls 1230LDR R0,cscr 1240ADD R0,R0,#32*320 1250]:FOR r%=2 TO 11 1260[OPT pass% 1270MOV r%,#0 1280]:NEXT r% 1290[OPT pass% 1300MOV R1,#48 1310.clsloop 1320]:FOR i%=1 TO 32 1330[OPT pass% 1340STMIA R0!,{R2-R11} 1350]:NEXT i% 1360[OPT pass% 1370SUBS R1,R1,#1 1380BGT clsloop 1390MOV PC,R14 1400: 1410.doscroll 1420MOV R0,#129 1430MVN R1,#35 1440MOV R2,#&FF 1450SWI "OS_Byte" 1460CMP R1,#&FF 1470BEQ notextscroll 1480LDR R0,textoff 1490LDR R1,textpos 1500ADD R0,R0,#4 1510CMP R0,#32 1520MOVGE R0,#0 1530ADDGE R1,R1,#1 1540LDR R2,textlen 1550CMP R1,R2 1560MOVGE R1,#0 1570STR R0,textoff 1580STR R1,textpos 1590.notextscroll 1600MOV R0,#129 1610MVN R1,#33 1620MOV R2,#&FF 1630SWI "OS_Byte" 1640CMP R1,#&FF 1650BEQ nowavemotion 1660LDR R0,wave1pos 1670ADD R0,R0,#wave1inc% 1680CMP R0,#wavelength% 1690SUBGE R0,R0,#wavelength% 1700STR R0,wave1pos 1710LDR R0,wave2pos 1720ADD R0,R0,#wave2inc% 1730CMP R0,#wavelength% 1740SUBGE R0,R0,#wavelength% 1750STR R0,wave2pos 1760.nowavemotion 1770MOV PC,R14 1780: 1790.plotscrolltext 1800LDR R0,textaddr 1810LDR R1,textpos 1820ADD R0,R0,R1 1830LDR R1,plottable 1840LDR R2,asciitable 1850LDR R3,spriteaddr 1860MOV R4,#11 1870.charloop 1880LDRB R5,[R0],#1 1890LDRB R5,[R2,R5] 1900CMP R5,#0 1910LDREQB R5,[R2,#32] 1920SUB R5,R5,#1 1930MOV R6,#(32*40) 1940MUL R5,R6,R5 1950ADD R5,R5,R3 1960]:FOR i%=1 TO 8 1970[OPT pass% 1980STR R5,[R1],#4 1990ADD R5,R5,#4*40 2000]:NEXT i% 2010[OPT pass% 2020SUBS R4,R4,#1 2030BGT charloop 2040: 2050MOV R0,#0 2060LDR R1,plottable 2070LDR R2,textoff 2080ADD R1,R1,R2 2090LDR R2,sinetable 2100LDR R3,wave1pos 2110LDR R4,wave2pos 2120LDR R5,scaletable 2130LDR R12,cscr 2140.plottextloop 2150LDRB R6,[R2,R3] 2160SUB R6,R6,#128 2170MOV R6,R6,ASR#amp1% 2180ADD R6,R6,#wave1ypos% 2190LDRB R7,[R2,R4] 2200SUB R7,R7,#128 2210MOV R7,R7,ASR#amp2% 2220ADD R7,R7,#wave2ypos% 2230SUB R7,R7,R6 2240SUB R8,R7,#1 2250CMP R8,#127 2260MOVGT R8,#127 2270MOVGT R7,#127 2280ADD R8,R5,R8,LSL#7 2290ADD R9,R12,R6,LSL#6 2300ADD R9,R9,R6,LSL#8 2310ADD R9,R9,R0 2320LDR R10,[R1],#4 2330.columnloop 2340LDRB R11,[R8],#1 2350LDR R11,[R10,R11,LSL#2] 2360STR R11,[R9],#320 2370SUBS R7,R7,#1 2380BGT columnloop 2390: 2400ADD R3,R3,#4 2410CMP R3,#wavelength% 2420SUBGE R3,R3,#wavelength% 2430ADD R4,R4,#4 2440CMP R4,#wavelength% 2450SUBGE R4,R4,#wavelength% 2460ADD R0,R0,#4 2470CMP R0,#320 2480BLT plottextloop 2490MOV PC,R14 2500] 2510NEXT pass% 2520SYS "OS_ReadVduVariables",vbuffer,scr1 2530!scr2=320*256+!scr1 2540!cscr=!scr1 2550ENDPROC
� WobbleText � by Jack Parkinson � 15 (� 2� � �error:� <: Famp1%=2 Pamp2%=2 Zwave1inc%=30+�(5) dwave2inc%=15+�(5) nminheight%=3 x: �H� "Please wait... FOR PETER TO SPILL THE BEANS ON HIS LATEST ROMP!!" � �load ��tables � �assemble �� 13 �� � � animate �� 0 �� �: �� �error �� 0 �� �$;" at line ";� � : � �filelen(fn$) " f%=�(fn$) , len%=�#f% 6 � #f% @ =len% J: T� �load ^Csprites%=(�filelen("<WobbleText$Dir>.charimage")-256) � (32*40) h%� charimage% (256+32*40*sprites%) r5� "LOAD <WobbleText$Dir>.charimage "+�~charimage% |.textlen%=�filelen("<WobbleText$Dir>.text") �� text% textlen%+10 �+� "LOAD <WobbleText$Dir>.text "+�~text% �� i%=0 � 9 �text%?(textlen%+i%)=32 �� i% �� �: � � �tables �wavelength%=640 �0� sinetable% wavelength%,scaletable% 128*128 �� p%=1 � wavelength% �angle=2*�*(p%/wavelength%) �&sinetable%?(p%-1)=128+127*�(angle) � p% � height%=1 � 128 %addr%=scaletable%+128*(height%-1) &� ypos%=1 � height% 0(addr%?(ypos%-1)=40*(ypos%/height%)-1 :� ypos% D � height% N� X: b: l� �assemble v-wave1ypos%=128-(128/2^amp1%)-minheight%/2 �-wave2ypos%=128+(128/2^amp2%)+minheight%/2 �� code% &1000,temp% 88*4 �� pass%=0 � 2 � 2 �P%=code% �[OPT pass% �.vbuffer EQUD 148 � EQUD -1 �.scr1 EQUD 0 �.scr2 EQUD 0 �.cscr EQUD 0 �.textaddr EQUD text% �.textlen EQUD textlen% �.textpos EQUD 0 .textoff EQUD 0 $.spriteaddr EQUD charimage%+256 .asciitable EQUD charimage% .sinetable EQUD sinetable% *.wave1pos EQUD 0 4.wave2pos EQUD 0 >!.scaletable EQUD scaletable% H.plottable EQUD temp% R: \.animate fSTMFD R13!,{R14} p.aniloop z BL cls �BL plotscrolltext �BL doscroll �BL swap �MOV R0,#129 �MVN R1,#112 �MOV R2,#&FF �SWI "OS_Byte" �CMP R1,#&FF �BNE aniloop �LDMFD R13!,{PC} �: � .swap �MOV R0,#19 SWI "OS_Byte" LDR R0,cscr LDR R1,scr1 $LDR R2,scr2 . CMP R0,R2 8 BEQ swap2 B .swap1 LSTR R2,cscr VMOV R0,#113 ` MOV R1,#1 jSWI "OS_Byte" tMOV PC,R14 ~ .swap2 �STR R1,cscr �MOV R0,#113 � MOV R1,#2 �SWI "OS_Byte" �MOV PC,R14 �: �.cls �LDR R0,cscr �ADD R0,R0,#32*320 �]:� r%=2 � 11 �[OPT pass% � MOV r%,#0 ]:� r% [OPT pass% MOV R1,#48 .clsloop (]:� i%=1 � 32 2[OPT pass% <STMIA R0!,{R2-R11} F ]:� i% P[OPT pass% ZSUBS R1,R1,#1 dBGT clsloop nMOV PC,R14 x: � .doscroll �MOV R0,#129 �MVN R1,#35 �MOV R2,#&FF �SWI "OS_Byte" �CMP R1,#&FF �BEQ notextscroll �LDR R0,textoff �LDR R1,textpos �ADD R0,R0,#4 �CMP R0,#32 �MOVGE R0,#0 �ADDGE R1,R1,#1 LDR R2,textlen CMP R1,R2 MOVGE R1,#0 "STR R0,textoff ,STR R1,textpos 6.notextscroll @MOV R0,#129 JMVN R1,#33 TMOV R2,#&FF ^SWI "OS_Byte" hCMP R1,#&FF rBEQ nowavemotion |LDR R0,wave1pos �ADD R0,R0,#wave1inc% �CMP R0,#wavelength% �SUBGE R0,R0,#wavelength% �STR R0,wave1pos �LDR R0,wave2pos �ADD R0,R0,#wave2inc% �CMP R0,#wavelength% �SUBGE R0,R0,#wavelength% �STR R0,wave2pos �.nowavemotion �MOV PC,R14 �: �.plotscrolltext LDR R0,textaddr LDR R1,textpos ADD R0,R0,R1 &LDR R1,plottable 0LDR R2,asciitable :LDR R3,spriteaddr DMOV R4,#11 N .charloop XLDRB R5,[R0],#1 bLDRB R5,[R2,R5] l CMP R5,#0 vLDREQB R5,[R2,#32] �SUB R5,R5,#1 �MOV R6,#(32*40) �MUL R5,R6,R5 �ADD R5,R5,R3 �]:� i%=1 � 8 �[OPT pass% �STR R5,[R1],#4 �ADD R5,R5,#4*40 � ]:� i% �[OPT pass% �SUBS R4,R4,#1 �BGT charloop �: MOV R0,#0 LDR R1,plottable LDR R2,textoff ADD R1,R1,R2 *LDR R2,sinetable 4LDR R3,wave1pos >LDR R4,wave2pos HLDR R5,scaletable RLDR R12,cscr \.plottextloop fLDRB R6,[R2,R3] pSUB R6,R6,#128 zMOV R6,R6,ASR#amp1% �ADD R6,R6,#wave1ypos% �LDRB R7,[R2,R4] �SUB R7,R7,#128 �MOV R7,R7,ASR#amp2% �ADD R7,R7,#wave2ypos% �SUB R7,R7,R6 �SUB R8,R7,#1 �CMP R8,#127 �MOVGT R8,#127 �MOVGT R7,#127 �ADD R8,R5,R8,LSL#7 �ADD R9,R12,R6,LSL#6 �ADD R9,R9,R6,LSL#8 ADD R9,R9,R0 LDR R10,[R1],#4 .columnloop $LDRB R11,[R8],#1 .LDR R11,[R10,R11,LSL#2] 8STR R11,[R9],#320 BSUBS R7,R7,#1 LBGT columnloop V: `ADD R3,R3,#4 jCMP R3,#wavelength% tSUBGE R3,R3,#wavelength% ~ADD R4,R4,#4 �CMP R4,#wavelength% �SUBGE R4,R4,#wavelength% �ADD R0,R0,#4 �CMP R0,#320 �BLT plottextloop �MOV PC,R14 �] �� pass% �)ș "OS_ReadVduVariables",vbuffer,scr1 �!scr2=320*256+!scr1 �!cscr=!scr1 �� �
00000000 0d 00 0a 10 f4 20 57 6f 62 62 6c 65 54 65 78 74 |..... WobbleText| 00000010 0d 00 14 17 f4 20 62 79 20 4a 61 63 6b 20 50 61 |..... by Jack Pa| 00000020 72 6b 69 6e 73 6f 6e 0d 00 1e 08 eb 20 31 35 0d |rkinson..... 15.| 00000030 00 28 05 87 0d 00 32 10 ee 20 85 20 f2 65 72 72 |.(....2.. . .err| 00000040 6f 72 3a e0 0d 00 3c 05 3a 0d 00 46 0b 61 6d 70 |or:...<.:..F.amp| 00000050 31 25 3d 32 0d 00 50 0b 61 6d 70 32 25 3d 32 0d |1%=2..P.amp2%=2.| 00000060 00 5a 15 77 61 76 65 31 69 6e 63 25 3d 33 30 2b |.Z.wave1inc%=30+| 00000070 b3 28 35 29 0d 00 64 15 77 61 76 65 32 69 6e 63 |.(5)..d.wave2inc| 00000080 25 3d 31 35 2b b3 28 35 29 0d 00 6e 10 6d 69 6e |%=15+.(5)..n.min| 00000090 68 65 69 67 68 74 25 3d 33 0d 00 78 05 3a 0d 00 |height%=3..x.:..| 000000a0 82 48 f1 20 22 50 6c 65 61 73 65 20 77 61 69 74 |.H. "Please wait| 000000b0 2e 2e 2e 20 46 4f 52 20 50 45 54 45 52 20 54 4f |... FOR PETER TO| 000000c0 20 53 50 49 4c 4c 20 54 48 45 20 42 45 41 4e 53 | SPILL THE BEANS| 000000d0 20 4f 4e 20 48 49 53 20 4c 41 54 45 53 54 20 52 | ON HIS LATEST R| 000000e0 4f 4d 50 21 21 22 0d 00 8c 09 f2 6c 6f 61 64 0d |OMP!!".....load.| 000000f0 00 96 0b f2 74 61 62 6c 65 73 0d 00 a0 0d f2 61 |....tables.....a| 00000100 73 73 65 6d 62 6c 65 0d 00 aa 08 eb 20 31 33 0d |ssemble..... 13.| 00000110 00 b4 05 87 0d 00 be 0d d6 20 61 6e 69 6d 61 74 |......... animat| 00000120 65 0d 00 c8 07 eb 20 30 0d 00 d2 05 e0 0d 00 dc |e..... 0........| 00000130 05 3a 0d 00 e6 0c dd 20 f2 65 72 72 6f 72 0d 00 |.:..... .error..| 00000140 f0 07 eb 20 30 0d 00 fa 16 f1 20 f6 24 3b 22 20 |... 0..... .$;" | 00000150 61 74 20 6c 69 6e 65 20 22 3b 9e 0d 01 04 05 e1 |at line ";......| 00000160 0d 01 0e 05 3a 0d 01 18 13 dd 20 a4 66 69 6c 65 |....:..... .file| 00000170 6c 65 6e 28 66 6e 24 29 0d 01 22 0d 66 25 3d 8e |len(fn$)..".f%=.| 00000180 28 66 6e 24 29 0d 01 2c 0d 6c 65 6e 25 3d a2 23 |(fn$)..,.len%=.#| 00000190 66 25 0d 01 36 09 d9 20 23 66 25 0d 01 40 09 3d |f%..6.. #f%..@.=| 000001a0 6c 65 6e 25 0d 01 4a 05 3a 0d 01 54 0b dd 20 f2 |len%..J.:..T.. .| 000001b0 6c 6f 61 64 0d 01 5e 43 73 70 72 69 74 65 73 25 |load..^Csprites%| 000001c0 3d 28 a4 66 69 6c 65 6c 65 6e 28 22 3c 57 6f 62 |=(.filelen("<Wob| 000001d0 62 6c 65 54 65 78 74 24 44 69 72 3e 2e 63 68 61 |bleText$Dir>.cha| 000001e0 72 69 6d 61 67 65 22 29 2d 32 35 36 29 20 81 20 |rimage")-256) . | 000001f0 28 33 32 2a 34 30 29 0d 01 68 25 de 20 63 68 61 |(32*40)..h%. cha| 00000200 72 69 6d 61 67 65 25 20 28 32 35 36 2b 33 32 2a |rimage% (256+32*| 00000210 34 30 2a 73 70 72 69 74 65 73 25 29 0d 01 72 35 |40*sprites%)..r5| 00000220 ff 20 22 4c 4f 41 44 20 3c 57 6f 62 62 6c 65 54 |. "LOAD <WobbleT| 00000230 65 78 74 24 44 69 72 3e 2e 63 68 61 72 69 6d 61 |ext$Dir>.charima| 00000240 67 65 20 22 2b c3 7e 63 68 61 72 69 6d 61 67 65 |ge "+.~charimage| 00000250 25 0d 01 7c 2e 74 65 78 74 6c 65 6e 25 3d a4 66 |%..|.textlen%=.f| 00000260 69 6c 65 6c 65 6e 28 22 3c 57 6f 62 62 6c 65 54 |ilelen("<WobbleT| 00000270 65 78 74 24 44 69 72 3e 2e 74 65 78 74 22 29 0d |ext$Dir>.text").| 00000280 01 86 17 de 20 74 65 78 74 25 20 74 65 78 74 6c |.... text% textl| 00000290 65 6e 25 2b 31 30 0d 01 90 2b ff 20 22 4c 4f 41 |en%+10...+. "LOA| 000002a0 44 20 3c 57 6f 62 62 6c 65 54 65 78 74 24 44 69 |D <WobbleText$Di| 000002b0 72 3e 2e 74 65 78 74 20 22 2b c3 7e 74 65 78 74 |r>.text "+.~text| 000002c0 25 0d 01 9a 0e e3 20 69 25 3d 30 20 b8 20 39 0d |%..... i%=0 . 9.| 000002d0 01 a4 1a 74 65 78 74 25 3f 28 74 65 78 74 6c 65 |...text%?(textle| 000002e0 6e 25 2b 69 25 29 3d 33 32 0d 01 ae 08 ed 20 69 |n%+i%)=32..... i| 000002f0 25 0d 01 b8 05 e1 0d 01 c2 05 3a 0d 01 cc 0d dd |%.........:.....| 00000300 20 f2 74 61 62 6c 65 73 0d 01 d6 13 77 61 76 65 | .tables....wave| 00000310 6c 65 6e 67 74 68 25 3d 36 34 30 0d 01 e0 30 de |length%=640...0.| 00000320 20 73 69 6e 65 74 61 62 6c 65 25 20 77 61 76 65 | sinetable% wave| 00000330 6c 65 6e 67 74 68 25 2c 73 63 61 6c 65 74 61 62 |length%,scaletab| 00000340 6c 65 25 20 31 32 38 2a 31 32 38 0d 01 ea 18 e3 |le% 128*128.....| 00000350 20 70 25 3d 31 20 b8 20 77 61 76 65 6c 65 6e 67 | p%=1 . waveleng| 00000360 74 68 25 0d 01 f4 1e 61 6e 67 6c 65 3d 32 2a af |th%....angle=2*.| 00000370 2a 28 70 25 2f 77 61 76 65 6c 65 6e 67 74 68 25 |*(p%/wavelength%| 00000380 29 0d 01 fe 26 73 69 6e 65 74 61 62 6c 65 25 3f |)...&sinetable%?| 00000390 28 70 25 2d 31 29 3d 31 32 38 2b 31 32 37 2a b5 |(p%-1)=128+127*.| 000003a0 28 61 6e 67 6c 65 29 0d 02 08 08 ed 20 70 25 0d |(angle)..... p%.| 000003b0 02 12 15 e3 20 68 65 69 67 68 74 25 3d 31 20 b8 |.... height%=1 .| 000003c0 20 31 32 38 0d 02 1c 25 61 64 64 72 25 3d 73 63 | 128...%addr%=sc| 000003d0 61 6c 65 74 61 62 6c 65 25 2b 31 32 38 2a 28 68 |aletable%+128*(h| 000003e0 65 69 67 68 74 25 2d 31 29 0d 02 26 17 e3 20 79 |eight%-1)..&.. y| 000003f0 70 6f 73 25 3d 31 20 b8 20 68 65 69 67 68 74 25 |pos%=1 . height%| 00000400 0d 02 30 28 61 64 64 72 25 3f 28 79 70 6f 73 25 |..0(addr%?(ypos%| 00000410 2d 31 29 3d 34 30 2a 28 79 70 6f 73 25 2f 68 65 |-1)=40*(ypos%/he| 00000420 69 67 68 74 25 29 2d 31 0d 02 3a 0b ed 20 79 70 |ight%)-1..:.. yp| 00000430 6f 73 25 0d 02 44 0d ed 20 68 65 69 67 68 74 25 |os%..D.. height%| 00000440 0d 02 4e 05 e1 0d 02 58 05 3a 0d 02 62 05 3a 0d |..N....X.:..b.:.| 00000450 02 6c 0f dd 20 f2 61 73 73 65 6d 62 6c 65 0d 02 |.l.. .assemble..| 00000460 76 2d 77 61 76 65 31 79 70 6f 73 25 3d 31 32 38 |v-wave1ypos%=128| 00000470 2d 28 31 32 38 2f 32 5e 61 6d 70 31 25 29 2d 6d |-(128/2^amp1%)-m| 00000480 69 6e 68 65 69 67 68 74 25 2f 32 0d 02 80 2d 77 |inheight%/2...-w| 00000490 61 76 65 32 79 70 6f 73 25 3d 31 32 38 2b 28 31 |ave2ypos%=128+(1| 000004a0 32 38 2f 32 5e 61 6d 70 32 25 29 2b 6d 69 6e 68 |28/2^amp2%)+minh| 000004b0 65 69 67 68 74 25 2f 32 0d 02 8a 1c de 20 63 6f |eight%/2..... co| 000004c0 64 65 25 20 26 31 30 30 30 2c 74 65 6d 70 25 20 |de% &1000,temp% | 000004d0 38 38 2a 34 0d 02 94 15 e3 20 70 61 73 73 25 3d |88*4..... pass%=| 000004e0 30 20 b8 20 32 20 88 20 32 0d 02 9e 0c 50 25 3d |0 . 2 . 2....P%=| 000004f0 63 6f 64 65 25 0d 02 a8 0e 5b 4f 50 54 20 70 61 |code%....[OPT pa| 00000500 73 73 25 0d 02 b2 19 2e 76 62 75 66 66 65 72 20 |ss%.....vbuffer | 00000510 20 20 20 20 45 51 55 44 20 31 34 38 0d 02 bc 18 | EQUD 148....| 00000520 20 20 20 20 20 20 20 20 20 20 20 20 20 45 51 55 | EQU| 00000530 44 20 2d 31 0d 02 c6 17 2e 73 63 72 31 20 20 20 |D -1.....scr1 | 00000540 20 20 20 20 20 45 51 55 44 20 30 0d 02 d0 17 2e | EQUD 0.....| 00000550 73 63 72 32 20 20 20 20 20 20 20 20 45 51 55 44 |scr2 EQUD| 00000560 20 30 0d 02 da 17 2e 63 73 63 72 20 20 20 20 20 | 0.....cscr | 00000570 20 20 20 45 51 55 44 20 30 0d 02 e4 1b 2e 74 65 | EQUD 0.....te| 00000580 78 74 61 64 64 72 20 20 20 20 45 51 55 44 20 74 |xtaddr EQUD t| 00000590 65 78 74 25 0d 02 ee 1e 2e 74 65 78 74 6c 65 6e |ext%.....textlen| 000005a0 20 20 20 20 20 45 51 55 44 20 74 65 78 74 6c 65 | EQUD textle| 000005b0 6e 25 0d 02 f8 17 2e 74 65 78 74 70 6f 73 20 20 |n%.....textpos | 000005c0 20 20 20 45 51 55 44 20 30 0d 03 02 17 2e 74 65 | EQUD 0.....te| 000005d0 78 74 6f 66 66 20 20 20 20 20 45 51 55 44 20 30 |xtoff EQUD 0| 000005e0 0d 03 0c 24 2e 73 70 72 69 74 65 61 64 64 72 20 |...$.spriteaddr | 000005f0 20 45 51 55 44 20 63 68 61 72 69 6d 61 67 65 25 | EQUD charimage%| 00000600 2b 32 35 36 0d 03 16 20 2e 61 73 63 69 69 74 61 |+256... .asciita| 00000610 62 6c 65 20 20 45 51 55 44 20 63 68 61 72 69 6d |ble EQUD charim| 00000620 61 67 65 25 0d 03 20 20 2e 73 69 6e 65 74 61 62 |age%.. .sinetab| 00000630 6c 65 20 20 20 45 51 55 44 20 73 69 6e 65 74 61 |le EQUD sineta| 00000640 62 6c 65 25 0d 03 2a 17 2e 77 61 76 65 31 70 6f |ble%..*..wave1po| 00000650 73 20 20 20 20 45 51 55 44 20 30 0d 03 34 17 2e |s EQUD 0..4..| 00000660 77 61 76 65 32 70 6f 73 20 20 20 20 45 51 55 44 |wave2pos EQUD| 00000670 20 30 0d 03 3e 21 2e 73 63 61 6c 65 74 61 62 6c | 0..>!.scaletabl| 00000680 65 20 20 45 51 55 44 20 73 63 61 6c 65 74 61 62 |e EQUD scaletab| 00000690 6c 65 25 0d 03 48 1b 2e 70 6c 6f 74 74 61 62 6c |le%..H..plottabl| 000006a0 65 20 20 20 45 51 55 44 20 74 65 6d 70 25 0d 03 |e EQUD temp%..| 000006b0 52 05 3a 0d 03 5c 0c 2e 61 6e 69 6d 61 74 65 0d |R.:..\..animate.| 000006c0 03 66 14 53 54 4d 46 44 20 52 31 33 21 2c 7b 52 |.f.STMFD R13!,{R| 000006d0 31 34 7d 0d 03 70 0c 2e 61 6e 69 6c 6f 6f 70 0d |14}..p..aniloop.| 000006e0 03 7a 0a 42 4c 20 63 6c 73 0d 03 84 15 42 4c 20 |.z.BL cls....BL | 000006f0 70 6c 6f 74 73 63 72 6f 6c 6c 74 65 78 74 0d 03 |plotscrolltext..| 00000700 8e 0f 42 4c 20 64 6f 73 63 72 6f 6c 6c 0d 03 98 |..BL doscroll...| 00000710 0b 42 4c 20 73 77 61 70 0d 03 a2 0f 4d 4f 56 20 |.BL swap....MOV | 00000720 52 30 2c 23 31 32 39 0d 03 ac 0f 4d 56 4e 20 52 |R0,#129....MVN R| 00000730 31 2c 23 31 31 32 0d 03 b6 0f 4d 4f 56 20 52 32 |1,#112....MOV R2| 00000740 2c 23 26 46 46 0d 03 c0 11 53 57 49 20 22 4f 53 |,#&FF....SWI "OS| 00000750 5f 42 79 74 65 22 0d 03 ca 0f 43 4d 50 20 52 31 |_Byte"....CMP R1| 00000760 2c 23 26 46 46 0d 03 d4 0f 42 4e 45 20 61 6e 69 |,#&FF....BNE ani| 00000770 6c 6f 6f 70 0d 03 de 13 4c 44 4d 46 44 20 52 31 |loop....LDMFD R1| 00000780 33 21 2c 7b 50 43 7d 0d 03 e8 05 3a 0d 03 f2 09 |3!,{PC}....:....| 00000790 2e 73 77 61 70 0d 03 fc 0e 4d 4f 56 20 52 30 2c |.swap....MOV R0,| 000007a0 23 31 39 0d 04 06 11 53 57 49 20 22 4f 53 5f 42 |#19....SWI "OS_B| 000007b0 79 74 65 22 0d 04 10 0f 4c 44 52 20 52 30 2c 63 |yte"....LDR R0,c| 000007c0 73 63 72 0d 04 1a 0f 4c 44 52 20 52 31 2c 73 63 |scr....LDR R1,sc| 000007d0 72 31 0d 04 24 0f 4c 44 52 20 52 32 2c 73 63 72 |r1..$.LDR R2,scr| 000007e0 32 0d 04 2e 0d 43 4d 50 20 52 30 2c 52 32 0d 04 |2....CMP R0,R2..| 000007f0 38 0d 42 45 51 20 73 77 61 70 32 0d 04 42 0a 2e |8.BEQ swap2..B..| 00000800 73 77 61 70 31 0d 04 4c 0f 53 54 52 20 52 32 2c |swap1..L.STR R2,| 00000810 63 73 63 72 0d 04 56 0f 4d 4f 56 20 52 30 2c 23 |cscr..V.MOV R0,#| 00000820 31 31 33 0d 04 60 0d 4d 4f 56 20 52 31 2c 23 31 |113..`.MOV R1,#1| 00000830 0d 04 6a 11 53 57 49 20 22 4f 53 5f 42 79 74 65 |..j.SWI "OS_Byte| 00000840 22 0d 04 74 0e 4d 4f 56 20 50 43 2c 52 31 34 0d |"..t.MOV PC,R14.| 00000850 04 7e 0a 2e 73 77 61 70 32 0d 04 88 0f 53 54 52 |.~..swap2....STR| 00000860 20 52 31 2c 63 73 63 72 0d 04 92 0f 4d 4f 56 20 | R1,cscr....MOV | 00000870 52 30 2c 23 31 31 33 0d 04 9c 0d 4d 4f 56 20 52 |R0,#113....MOV R| 00000880 31 2c 23 32 0d 04 a6 11 53 57 49 20 22 4f 53 5f |1,#2....SWI "OS_| 00000890 42 79 74 65 22 0d 04 b0 0e 4d 4f 56 20 50 43 2c |Byte"....MOV PC,| 000008a0 52 31 34 0d 04 ba 05 3a 0d 04 c4 08 2e 63 6c 73 |R14....:.....cls| 000008b0 0d 04 ce 0f 4c 44 52 20 52 30 2c 63 73 63 72 0d |....LDR R0,cscr.| 000008c0 04 d8 15 41 44 44 20 52 30 2c 52 30 2c 23 33 32 |...ADD R0,R0,#32| 000008d0 2a 33 32 30 0d 04 e2 11 5d 3a e3 20 72 25 3d 32 |*320....]:. r%=2| 000008e0 20 b8 20 31 31 0d 04 ec 0e 5b 4f 50 54 20 70 61 | . 11....[OPT pa| 000008f0 73 73 25 0d 04 f6 0d 4d 4f 56 20 72 25 2c 23 30 |ss%....MOV r%,#0| 00000900 0d 05 00 0a 5d 3a ed 20 72 25 0d 05 0a 0e 5b 4f |....]:. r%....[O| 00000910 50 54 20 70 61 73 73 25 0d 05 14 0e 4d 4f 56 20 |PT pass%....MOV | 00000920 52 31 2c 23 34 38 0d 05 1e 0c 2e 63 6c 73 6c 6f |R1,#48.....clslo| 00000930 6f 70 0d 05 28 11 5d 3a e3 20 69 25 3d 31 20 b8 |op..(.]:. i%=1 .| 00000940 20 33 32 0d 05 32 0e 5b 4f 50 54 20 70 61 73 73 | 32..2.[OPT pass| 00000950 25 0d 05 3c 16 53 54 4d 49 41 20 52 30 21 2c 7b |%..<.STMIA R0!,{| 00000960 52 32 2d 52 31 31 7d 0d 05 46 0a 5d 3a ed 20 69 |R2-R11}..F.]:. i| 00000970 25 0d 05 50 0e 5b 4f 50 54 20 70 61 73 73 25 0d |%..P.[OPT pass%.| 00000980 05 5a 11 53 55 42 53 20 52 31 2c 52 31 2c 23 31 |.Z.SUBS R1,R1,#1| 00000990 0d 05 64 0f 42 47 54 20 63 6c 73 6c 6f 6f 70 0d |..d.BGT clsloop.| 000009a0 05 6e 0e 4d 4f 56 20 50 43 2c 52 31 34 0d 05 78 |.n.MOV PC,R14..x| 000009b0 05 3a 0d 05 82 0d 2e 64 6f 73 63 72 6f 6c 6c 0d |.:.....doscroll.| 000009c0 05 8c 0f 4d 4f 56 20 52 30 2c 23 31 32 39 0d 05 |...MOV R0,#129..| 000009d0 96 0e 4d 56 4e 20 52 31 2c 23 33 35 0d 05 a0 0f |..MVN R1,#35....| 000009e0 4d 4f 56 20 52 32 2c 23 26 46 46 0d 05 aa 11 53 |MOV R2,#&FF....S| 000009f0 57 49 20 22 4f 53 5f 42 79 74 65 22 0d 05 b4 0f |WI "OS_Byte"....| 00000a00 43 4d 50 20 52 31 2c 23 26 46 46 0d 05 be 14 42 |CMP R1,#&FF....B| 00000a10 45 51 20 6e 6f 74 65 78 74 73 63 72 6f 6c 6c 0d |EQ notextscroll.| 00000a20 05 c8 12 4c 44 52 20 52 30 2c 74 65 78 74 6f 66 |...LDR R0,textof| 00000a30 66 0d 05 d2 12 4c 44 52 20 52 31 2c 74 65 78 74 |f....LDR R1,text| 00000a40 70 6f 73 0d 05 dc 10 41 44 44 20 52 30 2c 52 30 |pos....ADD R0,R0| 00000a50 2c 23 34 0d 05 e6 0e 43 4d 50 20 52 30 2c 23 33 |,#4....CMP R0,#3| 00000a60 32 0d 05 f0 0f 4d 4f 56 47 45 20 52 30 2c 23 30 |2....MOVGE R0,#0| 00000a70 0d 05 fa 12 41 44 44 47 45 20 52 31 2c 52 31 2c |....ADDGE R1,R1,| 00000a80 23 31 0d 06 04 12 4c 44 52 20 52 32 2c 74 65 78 |#1....LDR R2,tex| 00000a90 74 6c 65 6e 0d 06 0e 0d 43 4d 50 20 52 31 2c 52 |tlen....CMP R1,R| 00000aa0 32 0d 06 18 0f 4d 4f 56 47 45 20 52 31 2c 23 30 |2....MOVGE R1,#0| 00000ab0 0d 06 22 12 53 54 52 20 52 30 2c 74 65 78 74 6f |..".STR R0,texto| 00000ac0 66 66 0d 06 2c 12 53 54 52 20 52 31 2c 74 65 78 |ff..,.STR R1,tex| 00000ad0 74 70 6f 73 0d 06 36 11 2e 6e 6f 74 65 78 74 73 |tpos..6..notexts| 00000ae0 63 72 6f 6c 6c 0d 06 40 0f 4d 4f 56 20 52 30 2c |croll..@.MOV R0,| 00000af0 23 31 32 39 0d 06 4a 0e 4d 56 4e 20 52 31 2c 23 |#129..J.MVN R1,#| 00000b00 33 33 0d 06 54 0f 4d 4f 56 20 52 32 2c 23 26 46 |33..T.MOV R2,#&F| 00000b10 46 0d 06 5e 11 53 57 49 20 22 4f 53 5f 42 79 74 |F..^.SWI "OS_Byt| 00000b20 65 22 0d 06 68 0f 43 4d 50 20 52 31 2c 23 26 46 |e"..h.CMP R1,#&F| 00000b30 46 0d 06 72 14 42 45 51 20 6e 6f 77 61 76 65 6d |F..r.BEQ nowavem| 00000b40 6f 74 69 6f 6e 0d 06 7c 13 4c 44 52 20 52 30 2c |otion..|.LDR R0,| 00000b50 77 61 76 65 31 70 6f 73 0d 06 86 18 41 44 44 20 |wave1pos....ADD | 00000b60 52 30 2c 52 30 2c 23 77 61 76 65 31 69 6e 63 25 |R0,R0,#wave1inc%| 00000b70 0d 06 90 17 43 4d 50 20 52 30 2c 23 77 61 76 65 |....CMP R0,#wave| 00000b80 6c 65 6e 67 74 68 25 0d 06 9a 1c 53 55 42 47 45 |length%....SUBGE| 00000b90 20 52 30 2c 52 30 2c 23 77 61 76 65 6c 65 6e 67 | R0,R0,#waveleng| 00000ba0 74 68 25 0d 06 a4 13 53 54 52 20 52 30 2c 77 61 |th%....STR R0,wa| 00000bb0 76 65 31 70 6f 73 0d 06 ae 13 4c 44 52 20 52 30 |ve1pos....LDR R0| 00000bc0 2c 77 61 76 65 32 70 6f 73 0d 06 b8 18 41 44 44 |,wave2pos....ADD| 00000bd0 20 52 30 2c 52 30 2c 23 77 61 76 65 32 69 6e 63 | R0,R0,#wave2inc| 00000be0 25 0d 06 c2 17 43 4d 50 20 52 30 2c 23 77 61 76 |%....CMP R0,#wav| 00000bf0 65 6c 65 6e 67 74 68 25 0d 06 cc 1c 53 55 42 47 |elength%....SUBG| 00000c00 45 20 52 30 2c 52 30 2c 23 77 61 76 65 6c 65 6e |E R0,R0,#wavelen| 00000c10 67 74 68 25 0d 06 d6 13 53 54 52 20 52 30 2c 77 |gth%....STR R0,w| 00000c20 61 76 65 32 70 6f 73 0d 06 e0 11 2e 6e 6f 77 61 |ave2pos.....nowa| 00000c30 76 65 6d 6f 74 69 6f 6e 0d 06 ea 0e 4d 4f 56 20 |vemotion....MOV | 00000c40 50 43 2c 52 31 34 0d 06 f4 05 3a 0d 06 fe 13 2e |PC,R14....:.....| 00000c50 70 6c 6f 74 73 63 72 6f 6c 6c 74 65 78 74 0d 07 |plotscrolltext..| 00000c60 08 13 4c 44 52 20 52 30 2c 74 65 78 74 61 64 64 |..LDR R0,textadd| 00000c70 72 0d 07 12 12 4c 44 52 20 52 31 2c 74 65 78 74 |r....LDR R1,text| 00000c80 70 6f 73 0d 07 1c 10 41 44 44 20 52 30 2c 52 30 |pos....ADD R0,R0| 00000c90 2c 52 31 0d 07 26 14 4c 44 52 20 52 31 2c 70 6c |,R1..&.LDR R1,pl| 00000ca0 6f 74 74 61 62 6c 65 0d 07 30 15 4c 44 52 20 52 |ottable..0.LDR R| 00000cb0 32 2c 61 73 63 69 69 74 61 62 6c 65 0d 07 3a 15 |2,asciitable..:.| 00000cc0 4c 44 52 20 52 33 2c 73 70 72 69 74 65 61 64 64 |LDR R3,spriteadd| 00000cd0 72 0d 07 44 0e 4d 4f 56 20 52 34 2c 23 31 31 0d |r..D.MOV R4,#11.| 00000ce0 07 4e 0d 2e 63 68 61 72 6c 6f 6f 70 0d 07 58 13 |.N..charloop..X.| 00000cf0 4c 44 52 42 20 52 35 2c 5b 52 30 5d 2c 23 31 0d |LDRB R5,[R0],#1.| 00000d00 07 62 13 4c 44 52 42 20 52 35 2c 5b 52 32 2c 52 |.b.LDRB R5,[R2,R| 00000d10 35 5d 0d 07 6c 0d 43 4d 50 20 52 35 2c 23 30 0d |5]..l.CMP R5,#0.| 00000d20 07 76 16 4c 44 52 45 51 42 20 52 35 2c 5b 52 32 |.v.LDREQB R5,[R2| 00000d30 2c 23 33 32 5d 0d 07 80 10 53 55 42 20 52 35 2c |,#32]....SUB R5,| 00000d40 52 35 2c 23 31 0d 07 8a 13 4d 4f 56 20 52 36 2c |R5,#1....MOV R6,| 00000d50 23 28 33 32 2a 34 30 29 0d 07 94 10 4d 55 4c 20 |#(32*40)....MUL | 00000d60 52 35 2c 52 36 2c 52 35 0d 07 9e 10 41 44 44 20 |R5,R6,R5....ADD | 00000d70 52 35 2c 52 35 2c 52 33 0d 07 a8 10 5d 3a e3 20 |R5,R5,R3....]:. | 00000d80 69 25 3d 31 20 b8 20 38 0d 07 b2 0e 5b 4f 50 54 |i%=1 . 8....[OPT| 00000d90 20 70 61 73 73 25 0d 07 bc 12 53 54 52 20 52 35 | pass%....STR R5| 00000da0 2c 5b 52 31 5d 2c 23 34 0d 07 c6 13 41 44 44 20 |,[R1],#4....ADD | 00000db0 52 35 2c 52 35 2c 23 34 2a 34 30 0d 07 d0 0a 5d |R5,R5,#4*40....]| 00000dc0 3a ed 20 69 25 0d 07 da 0e 5b 4f 50 54 20 70 61 |:. i%....[OPT pa| 00000dd0 73 73 25 0d 07 e4 11 53 55 42 53 20 52 34 2c 52 |ss%....SUBS R4,R| 00000de0 34 2c 23 31 0d 07 ee 10 42 47 54 20 63 68 61 72 |4,#1....BGT char| 00000df0 6c 6f 6f 70 0d 07 f8 05 3a 0d 08 02 0d 4d 4f 56 |loop....:....MOV| 00000e00 20 52 30 2c 23 30 0d 08 0c 14 4c 44 52 20 52 31 | R0,#0....LDR R1| 00000e10 2c 70 6c 6f 74 74 61 62 6c 65 0d 08 16 12 4c 44 |,plottable....LD| 00000e20 52 20 52 32 2c 74 65 78 74 6f 66 66 0d 08 20 10 |R R2,textoff.. .| 00000e30 41 44 44 20 52 31 2c 52 31 2c 52 32 0d 08 2a 14 |ADD R1,R1,R2..*.| 00000e40 4c 44 52 20 52 32 2c 73 69 6e 65 74 61 62 6c 65 |LDR R2,sinetable| 00000e50 0d 08 34 13 4c 44 52 20 52 33 2c 77 61 76 65 31 |..4.LDR R3,wave1| 00000e60 70 6f 73 0d 08 3e 13 4c 44 52 20 52 34 2c 77 61 |pos..>.LDR R4,wa| 00000e70 76 65 32 70 6f 73 0d 08 48 15 4c 44 52 20 52 35 |ve2pos..H.LDR R5| 00000e80 2c 73 63 61 6c 65 74 61 62 6c 65 0d 08 52 10 4c |,scaletable..R.L| 00000e90 44 52 20 52 31 32 2c 63 73 63 72 0d 08 5c 11 2e |DR R12,cscr..\..| 00000ea0 70 6c 6f 74 74 65 78 74 6c 6f 6f 70 0d 08 66 13 |plottextloop..f.| 00000eb0 4c 44 52 42 20 52 36 2c 5b 52 32 2c 52 33 5d 0d |LDRB R6,[R2,R3].| 00000ec0 08 70 12 53 55 42 20 52 36 2c 52 36 2c 23 31 32 |.p.SUB R6,R6,#12| 00000ed0 38 0d 08 7a 17 4d 4f 56 20 52 36 2c 52 36 2c 41 |8..z.MOV R6,R6,A| 00000ee0 53 52 23 61 6d 70 31 25 0d 08 84 19 41 44 44 20 |SR#amp1%....ADD | 00000ef0 52 36 2c 52 36 2c 23 77 61 76 65 31 79 70 6f 73 |R6,R6,#wave1ypos| 00000f00 25 0d 08 8e 13 4c 44 52 42 20 52 37 2c 5b 52 32 |%....LDRB R7,[R2| 00000f10 2c 52 34 5d 0d 08 98 12 53 55 42 20 52 37 2c 52 |,R4]....SUB R7,R| 00000f20 37 2c 23 31 32 38 0d 08 a2 17 4d 4f 56 20 52 37 |7,#128....MOV R7| 00000f30 2c 52 37 2c 41 53 52 23 61 6d 70 32 25 0d 08 ac |,R7,ASR#amp2%...| 00000f40 19 41 44 44 20 52 37 2c 52 37 2c 23 77 61 76 65 |.ADD R7,R7,#wave| 00000f50 32 79 70 6f 73 25 0d 08 b6 10 53 55 42 20 52 37 |2ypos%....SUB R7| 00000f60 2c 52 37 2c 52 36 0d 08 c0 10 53 55 42 20 52 38 |,R7,R6....SUB R8| 00000f70 2c 52 37 2c 23 31 0d 08 ca 0f 43 4d 50 20 52 38 |,R7,#1....CMP R8| 00000f80 2c 23 31 32 37 0d 08 d4 11 4d 4f 56 47 54 20 52 |,#127....MOVGT R| 00000f90 38 2c 23 31 32 37 0d 08 de 11 4d 4f 56 47 54 20 |8,#127....MOVGT | 00000fa0 52 37 2c 23 31 32 37 0d 08 e8 16 41 44 44 20 52 |R7,#127....ADD R| 00000fb0 38 2c 52 35 2c 52 38 2c 4c 53 4c 23 37 0d 08 f2 |8,R5,R8,LSL#7...| 00000fc0 17 41 44 44 20 52 39 2c 52 31 32 2c 52 36 2c 4c |.ADD R9,R12,R6,L| 00000fd0 53 4c 23 36 0d 08 fc 16 41 44 44 20 52 39 2c 52 |SL#6....ADD R9,R| 00000fe0 39 2c 52 36 2c 4c 53 4c 23 38 0d 09 06 10 41 44 |9,R6,LSL#8....AD| 00000ff0 44 20 52 39 2c 52 39 2c 52 30 0d 09 10 13 4c 44 |D R9,R9,R0....LD| 00001000 52 20 52 31 30 2c 5b 52 31 5d 2c 23 34 0d 09 1a |R R10,[R1],#4...| 00001010 0f 2e 63 6f 6c 75 6d 6e 6c 6f 6f 70 0d 09 24 14 |..columnloop..$.| 00001020 4c 44 52 42 20 52 31 31 2c 5b 52 38 5d 2c 23 31 |LDRB R11,[R8],#1| 00001030 0d 09 2e 1b 4c 44 52 20 52 31 31 2c 5b 52 31 30 |....LDR R11,[R10| 00001040 2c 52 31 31 2c 4c 53 4c 23 32 5d 0d 09 38 15 53 |,R11,LSL#2]..8.S| 00001050 54 52 20 52 31 31 2c 5b 52 39 5d 2c 23 33 32 30 |TR R11,[R9],#320| 00001060 0d 09 42 11 53 55 42 53 20 52 37 2c 52 37 2c 23 |..B.SUBS R7,R7,#| 00001070 31 0d 09 4c 12 42 47 54 20 63 6f 6c 75 6d 6e 6c |1..L.BGT columnl| 00001080 6f 6f 70 0d 09 56 05 3a 0d 09 60 10 41 44 44 20 |oop..V.:..`.ADD | 00001090 52 33 2c 52 33 2c 23 34 0d 09 6a 17 43 4d 50 20 |R3,R3,#4..j.CMP | 000010a0 52 33 2c 23 77 61 76 65 6c 65 6e 67 74 68 25 0d |R3,#wavelength%.| 000010b0 09 74 1c 53 55 42 47 45 20 52 33 2c 52 33 2c 23 |.t.SUBGE R3,R3,#| 000010c0 77 61 76 65 6c 65 6e 67 74 68 25 0d 09 7e 10 41 |wavelength%..~.A| 000010d0 44 44 20 52 34 2c 52 34 2c 23 34 0d 09 88 17 43 |DD R4,R4,#4....C| 000010e0 4d 50 20 52 34 2c 23 77 61 76 65 6c 65 6e 67 74 |MP R4,#wavelengt| 000010f0 68 25 0d 09 92 1c 53 55 42 47 45 20 52 34 2c 52 |h%....SUBGE R4,R| 00001100 34 2c 23 77 61 76 65 6c 65 6e 67 74 68 25 0d 09 |4,#wavelength%..| 00001110 9c 10 41 44 44 20 52 30 2c 52 30 2c 23 34 0d 09 |..ADD R0,R0,#4..| 00001120 a6 0f 43 4d 50 20 52 30 2c 23 33 32 30 0d 09 b0 |..CMP R0,#320...| 00001130 14 42 4c 54 20 70 6c 6f 74 74 65 78 74 6c 6f 6f |.BLT plottextloo| 00001140 70 0d 09 ba 0e 4d 4f 56 20 50 43 2c 52 31 34 0d |p....MOV PC,R14.| 00001150 09 c4 05 5d 0d 09 ce 0b ed 20 70 61 73 73 25 0d |...]..... pass%.| 00001160 09 d8 29 c8 99 20 22 4f 53 5f 52 65 61 64 56 64 |..).. "OS_ReadVd| 00001170 75 56 61 72 69 61 62 6c 65 73 22 2c 76 62 75 66 |uVariables",vbuf| 00001180 66 65 72 2c 73 63 72 31 0d 09 e2 17 21 73 63 72 |fer,scr1....!scr| 00001190 32 3d 33 32 30 2a 32 35 36 2b 21 73 63 72 31 0d |2=320*256+!scr1.| 000011a0 09 ec 0f 21 63 73 63 72 3d 21 73 63 72 31 0d 09 |...!cscr=!scr1..| 000011b0 f6 05 e1 0d ff |.....| 000011b5