Home » Archimedes archive » Acorn User » AU 1996-12 B.adf » Regulars_2 » StarInfo/Stoner/!ItCouldBe/SpaceBalls
StarInfo/Stoner/!ItCouldBe/SpaceBalls
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 » Acorn User » AU 1996-12 B.adf » Regulars_2 |
Filename: | StarInfo/Stoner/!ItCouldBe/SpaceBalls |
Read OK: | ✔ |
File size: | 124E bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10ON ERROR MODE12:REPORT:PRINT"d from Spaceballs":END 20REM Rotate 2D points in MC program 30REM Using .... Dots 40REM by Nigel Stoner. 50 60PROCinit 70PROCassemble 80PROCmain 90END 100 110DEF PROCinit 120MODE 13+128:OFF:GCOL 0,2 130s%=1 140file$="<Space$Dir>.Ball" 150SYS 8,5,file$ TO ,,,,slen% 160DIM code 2000, sin% 2900 , cos% 2900, point% 800*12,table% 4096*4,store% 800*12 170 180REM sprite bits. 190DIM sp% slen%+1024 200!sp%=slen%+1024 210SYS 8,255,file$,sp%+4 220SYS 46,280,sp%,"yellow" TO ,,ball% 230 240REM sine and cosine plots shifted 4 places 250p%=0 260FOR a%=0 TO 719 270sin%!p%=SIN RAD(a%/2)*(1<<16):cos%!p%=COS RAD(a%/2)*(1<<16) 280p%+=4 290NEXT a% 300sin%!p%=SIN RAD(a%/2)*(1<<16):cos%!p%=COS RAD(a%/2)*(1<<16) 310 320p%=0 330FOR x%=0 TO 800*12 STEP 4 340point%!p%=0 350p%+=4 360NEXT x% 370 380p%=0 390FOR a%=0 TO 98 400 point%!p%=RND(1280)-640 410 point%!(p%+4)=RND(1280)-640 420 point%!(p%+8)=RND(1280)-640 430p%+=12 440NEXT a% 450 460p%=0 470FOR c%=1 TO 4096 480!(table%+p%)=(480/c%)*4096 490p%+=4 500NEXT c% 510 520ENDPROC 530 540 550DEF PROCmain 560TIME =0 570A%=360:B%=360:C%=360 580REPEAT 590A%=INT(360*SIN RAD(TIME/6)+360) 600B%=INT(360*SIN RAD(TIME/4)+360) 610C%=INT(360*COS RAD(TIME/5)+360) 620SYS 6,112,s%:s%=s%EOR3:SYS6,113,s%:WAIT:CLS:CALL code:UNTIL FALSE 630ENDPROC 640 650DEF PROCassemble 660vdu= 0 :x= 1 :y= 2 :z= 3 670rsin= 4 :rcos= 5 :dots= 6 680xold= 7 :yold= 8 :zold = 9 690temp = 10 :upto= 11 :shift= 12 700scode=0 710sarea=1 720sname=2 730sx=3 :sy=4 :sz=5 740mode=5 750size=6 760size_store=7 770scount=8 780stable=9 790ptable=10 800scale=11 810 820plot = &45 : REM Vdu code for point 830 840FOR pass = 0 TO 2 STEP 2 850P%=code:PRINT P% 860[OPT pass 870 STMFD R13!,{R14} 880 STR R0,xangle 890 STR R1,yangle 900 STR R2,zangle 910 BL move 920 BL turn 930 BL plot_sprites 940 LDMFD R13!,{PC} 950 960.move 970 STMFD R13!,{R14} 980 LDR R0,dotty 990 MOV R1,#98 1000.move_it 1010 LDMIA R0,{R2-R4} 1020 ADD R3,R3,#12 1030 CMP R3,#640 1040 MVNGE R3,#640 1050 STMIA R0!,{R2-R4} 1060 SUB R1,R1,#1 1070 CMP R1,#0 1080 BNE move_it 1090 LDMFD R13!,{PC} 1100 1110.turn 1120 STMFD R13!,{R14} 1130 LDR shift,store 1140 MOV upto,#98 1150 SUB upto,upto,#1 1160 LDR R6,dotty 1170.loop 1180 LDMIA R6!,{xold-zold} 1190 LDR R0,xangle 1200 LDR rsin,sintab 1210 LDR rcos,costab 1220 LDR rsin,[rsin,R0,ASL#2] 1230 LDR rcos,[rcos,R0,ASL#2] 1240 BL rotate_x 1250 LDR R0,yangle 1260 LDR rsin,sintab 1270 LDR rcos,costab 1280 LDR rsin,[rsin,R0,ASL#2] 1290 LDR rcos,[rcos,R0,ASL#2] 1300 BL rotate_y 1310 LDR R0,zangle 1320 LDR rsin,sintab 1330 LDR rcos,costab 1340 LDR rsin,[rsin,R0,ASL#2] 1350 LDR rcos,[rcos,R0,ASL#2] 1360 BL rotate_z 1370 MOV x,xold 1380 MOV y,yold 1390 MOV z,zold 1400 STMIA R12!,{xold-zold} 1410 SUBS upto,upto,#1 1420 BCS loop 1430 LDMFD R13!,{PC} 1440 1450.rotate_z 1460 STMFD R13!,{R14} 1470 MUL x,xold,rcos 1480 MUL temp,yold,rsin 1490 SUB x,x,temp 1500 MUL y,xold,rsin 1510 MUL temp,yold,rcos 1520 ADD y,y,temp 1530 MOV xold,x,ASR#16 1540 MOV yold,y,ASR#16 1550 LDMFD R13!,{PC} 1560 1570.rotate_x 1580 STMFD R13!,{R14} 1590 MUL y,yold,rcos 1600 MUL temp,zold,rsin 1610 SUB y,y,temp 1620 MUL z,yold,rsin 1630 MUL temp,zold,rcos 1640 ADD z,z,temp 1650 MOV yold,y,ASR#16 1660 MOV zold,z,ASR#16 1670 LDMFD R13!,{PC} 1680 1690.rotate_y 1700 STMFD R13!,{R14} 1710 MUL x,xold,rcos 1720 MUL temp,zold,rsin 1730 SUB x,x,temp 1740 MUL z,xold,rsin 1750 MUL temp,zold,rcos 1760 ADD z,z,temp 1770 MOV xold,x,ASR#16 1780 MOV zold,z,ASR#16 1790 LDMFD R13!,{PC} 1800 1810.plot_sprites 1820 STMFD R13!,{R14} 1830 LDR scode,sprite_plot 1840 LDR sarea,sprite_area 1850 LDR sname,sprite_name 1860 MOV scount,#98 1870 LDR stable,store 1880 LDR ptable,table 1890.plot_loop 1900 ADR size_store,mult 1910 LDMIA R9!,{sx,sy,sz} 1920 ADD sz,sz,#640 1930 CMP sz,#1 1940 BLE dot_range 1950 CMP sz,#4096 1960 BGE dot_range 1970 MOV size,sz 1980 LDR scale,[ptable,sz,ASL#2] 1990 MUL sx,scale,sx 2000 MUL sy,scale,sy 2010 MOV sx,sx,ASR#12 2020 MVN sy,sy,ASR#12 2030 ADD sx,sx,#640 2040 ADD sy,sy,#512 2050 MOV size,scale,ASR#1 2060 STR R6,[R7] 2070 STR R6,[R7,#4] 2080 MOV R6,R7 2090 MOV R5,#8 2100 MOV R7,#0 2110 SWI 46 2120.dot_range 2130 SUB scount,scount,#1 2140 CMP scount,#0 2150 BNE plot_loop 2160 LDMFD R13!,{PC} 2170 2180.dotty 2190EQUD point% 2200.sintab 2210EQUD sin% 2220.costab 2230EQUD cos% 2240.table 2250EQUD table% 2260.store 2270EQUD store% 2280.xangle 2290EQUD 0 2300.yangle 2310EQUD 0 2320.zangle 2330EQUD 0 2340.sprite_plot 2350EQUD 564 ; scaled plot 2360;EQUD 546 ; ordinary plot 2370.sprite_area 2380EQUD sp% 2390.sprite_name 2400EQUD ball% 2410.mult 2420EQUD 200 2430EQUD 200 2440EQUD 2048 2450EQUD 2048 2460] 2470NEXT pass 2480ENDPROC 2490 2500DEF PROCdatalist 2510DATA 1,0,0,1,0,1,1,1,0,0,1,1,1,0,0,1,1,1,1,0,1,0,0,0 2520DATA 1,1,0,1,0,0,1,0,0,1,0,0,0,1,0,1,0,0,0,0,1,0,0,0 2530DATA 1,1,1,1,0,0,1,0,0,1,0,0,0,0,0,1,1,1,0,0,1,0,0,0 2540DATA 1,0,1,1,0,0,1,0,0,1,0,0,1,1,0,1,0,0,0,0,1,0,0,0 2550DATA 1,0,0,1,0,1,1,1,0,0,1,1,1,1,0,1,1,1,1,0,1,1,1,1 2560ENDPROC
$� � �12:�:�"d from Spaceballs":� $� Rotate 2D points in MC program � Using .... Dots (� by Nigel Stoner. 2 < �init F �assemble P �main Z� d n� �init x� 13+128:�:� 0,2 �s%=1 �file$="<Space$Dir>.Ball" �ș 8,5,file$ � ,,,,slen% �Q� code 2000, sin% 2900 , cos% 2900, point% 800*12,table% 4096*4,store% 800*12 � �� sprite bits. �� sp% slen%+1024 �!sp%=slen%+1024 �ș 8,255,file$,sp%+4 �$ș 46,280,sp%,"yellow" � ,,ball% � �,� sine and cosine plots shifted 4 places �p%=0 � a%=0 � 719 7sin%!p%=� �(a%/2)*(1<<16):cos%!p%=� �(a%/2)*(1<<16) p%+=4 "� a% ,7sin%!p%=� �(a%/2)*(1<<16):cos%!p%=� �(a%/2)*(1<<16) 6 @p%=0 J� x%=0 � 800*12 � 4 Tpoint%!p%=0 ^ p%+=4 h� x% r |p%=0 �� a%=0 � 98 � point%!p%=�(1280)-640 � point%!(p%+4)=�(1280)-640 � point%!(p%+8)=�(1280)-640 � p%+=12 �� a% � �p%=0 �� c%=1 � 4096 �!(table%+p%)=(480/c%)*4096 � p%+=4 �� c% � � &� �main 0� =0 :A%=360:B%=360:C%=360 D� NA%=�(360*� �(�/6)+360) XB%=�(360*� �(�/4)+360) bC%=�(360*� �(�/5)+360) l2ș 6,112,s%:s%=s%�3:ș6,113,s%:Ȗ:�:� code:� � v� � �� �assemble �vdu= 0 :x= 1 :y= 2 :z= 3 �rsin= 4 :rcos= 5 :dots= 6 �xold= 7 :yold= 8 :zold = 9 �"temp = 10 :upto= 11 :shift= 12 �scode=0 �sarea=1 �sname=2 �sx=3 :sy=4 :sz=5 � mode=5 � size=6 �size_store=7 scount=8 stable=9 ptable=10 scale=11 * 4%plot = &45 : � Vdu code for point > H� pass = 0 � 2 � 2 RP%=code:� P% \ [OPT pass f STMFD R13!,{R14} p STR R0,xangle z STR R1,yangle � STR R2,zangle � BL move � BL turn � BL plot_sprites � LDMFD R13!,{PC} � � .move � STMFD R13!,{R14} � LDR R0,dotty � MOV R1,#98 �.move_it � LDMIA R0,{R2-R4} � ADD R3,R3,#12 CMP R3,#640 MVNGE R3,#640 STMIA R0!,{R2-R4} $ SUB R1,R1,#1 . CMP R1,#0 8 BNE move_it B LDMFD R13!,{PC} L V .turn ` STMFD R13!,{R14} j LDR shift,store t MOV upto,#98 ~ SUB upto,upto,#1 � LDR R6,dotty � .loop � LDMIA R6!,{xold-zold} � LDR R0,xangle � LDR rsin,sintab � LDR rcos,costab � LDR rsin,[rsin,R0,ASL#2] � LDR rcos,[rcos,R0,ASL#2] � BL rotate_x � LDR R0,yangle � LDR rsin,sintab � LDR rcos,costab LDR rsin,[rsin,R0,ASL#2] LDR rcos,[rcos,R0,ASL#2] BL rotate_y LDR R0,zangle ( LDR rsin,sintab 2 LDR rcos,costab < LDR rsin,[rsin,R0,ASL#2] F LDR rcos,[rcos,R0,ASL#2] P BL rotate_z Z MOV x,xold d MOV y,yold n MOV z,zold x STMIA R12!,{xold-zold} � SUBS upto,upto,#1 � BCS loop � LDMFD R13!,{PC} � � .rotate_z � STMFD R13!,{R14} � MUL x,xold,rcos � MUL temp,yold,rsin � SUB x,x,temp � MUL y,xold,rsin � MUL temp,yold,rcos � ADD y,y,temp � MOV xold,x,ASR#16 MOV yold,y,ASR#16 LDMFD R13!,{PC} " .rotate_x , STMFD R13!,{R14} 6 MUL y,yold,rcos @ MUL temp,zold,rsin J SUB y,y,temp T MUL z,yold,rsin ^ MUL temp,zold,rcos h ADD z,z,temp r MOV yold,y,ASR#16 | MOV zold,z,ASR#16 � LDMFD R13!,{PC} � � .rotate_y � STMFD R13!,{R14} � MUL x,xold,rcos � MUL temp,zold,rsin � SUB x,x,temp � MUL z,xold,rsin � MUL temp,zold,rcos � ADD z,z,temp � MOV xold,x,ASR#16 � MOV zold,z,ASR#16 � LDMFD R13!,{PC} .plot_sprites STMFD R13!,{R14} & LDR scode,sprite_plot 0 LDR sarea,sprite_area : LDR sname,sprite_name D MOV scount,#98 N LDR stable,store X LDR ptable,table b.plot_loop l ADR size_store,mult v LDMIA R9!,{sx,sy,sz} � ADD sz,sz,#640 � CMP sz,#1 � BLE dot_range � CMP sz,#4096 � BGE dot_range � MOV size,sz � LDR scale,[ptable,sz,ASL#2] � MUL sx,scale,sx � MUL sy,scale,sy � MOV sx,sx,ASR#12 � MVN sy,sy,ASR#12 � ADD sx,sx,#640 � ADD sy,sy,#512 MOV size,scale,ASR#1 STR R6,[R7] STR R6,[R7,#4] MOV R6,R7 * MOV R5,#8 4 MOV R7,#0 > SWI 46 H.dot_range R SUB scount,scount,#1 \ CMP scount,#0 f BNE plot_loop p LDMFD R13!,{PC} z � .dotty �EQUD point% �.sintab � EQUD sin% �.costab � EQUD cos% � .table �EQUD table% � .store �EQUD store% �.xangle � EQUD 0 �.yangle EQUD 0 .zangle EQUD 0 $.sprite_plot .EQUD 564 ; scaled plot 8!;EQUD 546 ; ordinary plot B.sprite_area LEQUD sp% V.sprite_name `EQUD ball% j .mult tEQUD 200 ~EQUD 200 � EQUD 2048 � EQUD 2048 �] � � pass �� � �� �datalist �5� 1,0,0,1,0,1,1,1,0,0,1,1,1,0,0,1,1,1,1,0,1,0,0,0 �5� 1,1,0,1,0,0,1,0,0,1,0,0,0,1,0,1,0,0,0,0,1,0,0,0 �5� 1,1,1,1,0,0,1,0,0,1,0,0,0,0,0,1,1,1,0,0,1,0,0,0 �5� 1,0,1,1,0,0,1,0,0,1,0,0,1,1,0,1,0,0,0,0,1,0,0,0 �5� 1,0,0,1,0,1,1,1,0,0,1,1,1,1,0,1,1,1,1,0,1,1,1,1 � �
00000000 0d 00 0a 24 ee 20 85 20 eb 31 32 3a f6 3a f1 22 |...$. . .12:.:."| 00000010 64 20 66 72 6f 6d 20 53 70 61 63 65 62 61 6c 6c |d from Spaceball| 00000020 73 22 3a e0 0d 00 14 24 f4 20 52 6f 74 61 74 65 |s":....$. Rotate| 00000030 20 32 44 20 70 6f 69 6e 74 73 20 69 6e 20 4d 43 | 2D points in MC| 00000040 20 70 72 6f 67 72 61 6d 0d 00 1e 15 f4 20 55 73 | program..... Us| 00000050 69 6e 67 20 2e 2e 2e 2e 20 44 6f 74 73 0d 00 28 |ing .... Dots..(| 00000060 16 f4 20 62 79 20 4e 69 67 65 6c 20 53 74 6f 6e |.. by Nigel Ston| 00000070 65 72 2e 0d 00 32 04 0d 00 3c 09 f2 69 6e 69 74 |er...2...<..init| 00000080 0d 00 46 0d f2 61 73 73 65 6d 62 6c 65 0d 00 50 |..F..assemble..P| 00000090 09 f2 6d 61 69 6e 0d 00 5a 05 e0 0d 00 64 04 0d |..main..Z....d..| 000000a0 00 6e 0b dd 20 f2 69 6e 69 74 0d 00 78 14 eb 20 |.n.. .init..x.. | 000000b0 31 33 2b 31 32 38 3a 87 3a e6 20 30 2c 32 0d 00 |13+128:.:. 0,2..| 000000c0 82 08 73 25 3d 31 0d 00 8c 1c 66 69 6c 65 24 3d |..s%=1....file$=| 000000d0 22 3c 53 70 61 63 65 24 44 69 72 3e 2e 42 61 6c |"<Space$Dir>.Bal| 000000e0 6c 22 0d 00 96 1c c8 99 20 38 2c 35 2c 66 69 6c |l"...... 8,5,fil| 000000f0 65 24 20 b8 20 2c 2c 2c 2c 73 6c 65 6e 25 0d 00 |e$ . ,,,,slen%..| 00000100 a0 51 de 20 63 6f 64 65 20 32 30 30 30 2c 20 73 |.Q. code 2000, s| 00000110 69 6e 25 20 32 39 30 30 20 2c 20 63 6f 73 25 20 |in% 2900 , cos% | 00000120 32 39 30 30 2c 20 70 6f 69 6e 74 25 20 38 30 30 |2900, point% 800| 00000130 2a 31 32 2c 74 61 62 6c 65 25 20 34 30 39 36 2a |*12,table% 4096*| 00000140 34 2c 73 74 6f 72 65 25 20 38 30 30 2a 31 32 0d |4,store% 800*12.| 00000150 00 aa 04 0d 00 b4 12 f4 20 73 70 72 69 74 65 20 |........ sprite | 00000160 62 69 74 73 2e 0d 00 be 14 de 20 73 70 25 20 73 |bits...... sp% s| 00000170 6c 65 6e 25 2b 31 30 32 34 0d 00 c8 13 21 73 70 |len%+1024....!sp| 00000180 25 3d 73 6c 65 6e 25 2b 31 30 32 34 0d 00 d2 18 |%=slen%+1024....| 00000190 c8 99 20 38 2c 32 35 35 2c 66 69 6c 65 24 2c 73 |.. 8,255,file$,s| 000001a0 70 25 2b 34 0d 00 dc 24 c8 99 20 34 36 2c 32 38 |p%+4...$.. 46,28| 000001b0 30 2c 73 70 25 2c 22 79 65 6c 6c 6f 77 22 20 b8 |0,sp%,"yellow" .| 000001c0 20 2c 2c 62 61 6c 6c 25 0d 00 e6 04 0d 00 f0 2c | ,,ball%.......,| 000001d0 f4 20 73 69 6e 65 20 61 6e 64 20 63 6f 73 69 6e |. sine and cosin| 000001e0 65 20 70 6c 6f 74 73 20 73 68 69 66 74 65 64 20 |e plots shifted | 000001f0 34 20 70 6c 61 63 65 73 0d 00 fa 08 70 25 3d 30 |4 places....p%=0| 00000200 0d 01 04 10 e3 20 61 25 3d 30 20 b8 20 37 31 39 |..... a%=0 . 719| 00000210 0d 01 0e 37 73 69 6e 25 21 70 25 3d b5 20 b2 28 |...7sin%!p%=. .(| 00000220 61 25 2f 32 29 2a 28 31 3c 3c 31 36 29 3a 63 6f |a%/2)*(1<<16):co| 00000230 73 25 21 70 25 3d 9b 20 b2 28 61 25 2f 32 29 2a |s%!p%=. .(a%/2)*| 00000240 28 31 3c 3c 31 36 29 0d 01 18 09 70 25 2b 3d 34 |(1<<16)....p%+=4| 00000250 0d 01 22 08 ed 20 61 25 0d 01 2c 37 73 69 6e 25 |..".. a%..,7sin%| 00000260 21 70 25 3d b5 20 b2 28 61 25 2f 32 29 2a 28 31 |!p%=. .(a%/2)*(1| 00000270 3c 3c 31 36 29 3a 63 6f 73 25 21 70 25 3d 9b 20 |<<16):cos%!p%=. | 00000280 b2 28 61 25 2f 32 29 2a 28 31 3c 3c 31 36 29 0d |.(a%/2)*(1<<16).| 00000290 01 36 04 0d 01 40 08 70 25 3d 30 0d 01 4a 17 e3 |.6...@.p%=0..J..| 000002a0 20 78 25 3d 30 20 b8 20 38 30 30 2a 31 32 20 88 | x%=0 . 800*12 .| 000002b0 20 34 0d 01 54 0f 70 6f 69 6e 74 25 21 70 25 3d | 4..T.point%!p%=| 000002c0 30 0d 01 5e 09 70 25 2b 3d 34 0d 01 68 08 ed 20 |0..^.p%+=4..h.. | 000002d0 78 25 0d 01 72 04 0d 01 7c 08 70 25 3d 30 0d 01 |x%..r...|.p%=0..| 000002e0 86 0f e3 20 61 25 3d 30 20 b8 20 39 38 0d 01 90 |... a%=0 . 98...| 000002f0 1a 20 70 6f 69 6e 74 25 21 70 25 3d b3 28 31 32 |. point%!p%=.(12| 00000300 38 30 29 2d 36 34 30 0d 01 9a 1e 20 70 6f 69 6e |80)-640.... poin| 00000310 74 25 21 28 70 25 2b 34 29 3d b3 28 31 32 38 30 |t%!(p%+4)=.(1280| 00000320 29 2d 36 34 30 0d 01 a4 1e 20 70 6f 69 6e 74 25 |)-640.... point%| 00000330 21 28 70 25 2b 38 29 3d b3 28 31 32 38 30 29 2d |!(p%+8)=.(1280)-| 00000340 36 34 30 0d 01 ae 0a 70 25 2b 3d 31 32 0d 01 b8 |640....p%+=12...| 00000350 08 ed 20 61 25 0d 01 c2 04 0d 01 cc 08 70 25 3d |.. a%........p%=| 00000360 30 0d 01 d6 11 e3 20 63 25 3d 31 20 b8 20 34 30 |0..... c%=1 . 40| 00000370 39 36 0d 01 e0 1e 21 28 74 61 62 6c 65 25 2b 70 |96....!(table%+p| 00000380 25 29 3d 28 34 38 30 2f 63 25 29 2a 34 30 39 36 |%)=(480/c%)*4096| 00000390 0d 01 ea 09 70 25 2b 3d 34 0d 01 f4 08 ed 20 63 |....p%+=4..... c| 000003a0 25 0d 01 fe 04 0d 02 08 05 e1 0d 02 12 04 0d 02 |%...............| 000003b0 1c 04 0d 02 26 0b dd 20 f2 6d 61 69 6e 0d 02 30 |....&.. .main..0| 000003c0 08 d1 20 3d 30 0d 02 3a 18 41 25 3d 33 36 30 3a |.. =0..:.A%=360:| 000003d0 42 25 3d 33 36 30 3a 43 25 3d 33 36 30 0d 02 44 |B%=360:C%=360..D| 000003e0 05 f5 0d 02 4e 1a 41 25 3d a8 28 33 36 30 2a b5 |....N.A%=.(360*.| 000003f0 20 b2 28 91 2f 36 29 2b 33 36 30 29 0d 02 58 1a | .(./6)+360)..X.| 00000400 42 25 3d a8 28 33 36 30 2a b5 20 b2 28 91 2f 34 |B%=.(360*. .(./4| 00000410 29 2b 33 36 30 29 0d 02 62 1a 43 25 3d a8 28 33 |)+360)..b.C%=.(3| 00000420 36 30 2a 9b 20 b2 28 91 2f 35 29 2b 33 36 30 29 |60*. .(./5)+360)| 00000430 0d 02 6c 32 c8 99 20 36 2c 31 31 32 2c 73 25 3a |..l2.. 6,112,s%:| 00000440 73 25 3d 73 25 82 33 3a c8 99 36 2c 31 31 33 2c |s%=s%.3:..6,113,| 00000450 73 25 3a c8 96 3a db 3a d6 20 63 6f 64 65 3a fd |s%:..:.:. code:.| 00000460 20 a3 0d 02 76 05 e1 0d 02 80 04 0d 02 8a 0f dd | ...v...........| 00000470 20 f2 61 73 73 65 6d 62 6c 65 0d 02 94 1c 76 64 | .assemble....vd| 00000480 75 3d 20 30 20 3a 78 3d 20 31 20 3a 79 3d 20 32 |u= 0 :x= 1 :y= 2| 00000490 20 3a 7a 3d 20 33 0d 02 9e 1d 72 73 69 6e 3d 20 | :z= 3....rsin= | 000004a0 34 20 3a 72 63 6f 73 3d 20 35 20 3a 64 6f 74 73 |4 :rcos= 5 :dots| 000004b0 3d 20 36 0d 02 a8 1e 78 6f 6c 64 3d 20 37 20 3a |= 6....xold= 7 :| 000004c0 79 6f 6c 64 3d 20 38 20 3a 7a 6f 6c 64 20 3d 20 |yold= 8 :zold = | 000004d0 39 0d 02 b2 22 74 65 6d 70 20 3d 20 31 30 20 3a |9..."temp = 10 :| 000004e0 75 70 74 6f 3d 20 31 31 20 3a 73 68 69 66 74 3d |upto= 11 :shift=| 000004f0 20 31 32 0d 02 bc 0b 73 63 6f 64 65 3d 30 0d 02 | 12....scode=0..| 00000500 c6 0b 73 61 72 65 61 3d 31 0d 02 d0 0b 73 6e 61 |..sarea=1....sna| 00000510 6d 65 3d 32 0d 02 da 14 73 78 3d 33 20 3a 73 79 |me=2....sx=3 :sy| 00000520 3d 34 20 3a 73 7a 3d 35 0d 02 e4 0a 6d 6f 64 65 |=4 :sz=5....mode| 00000530 3d 35 0d 02 ee 0a 73 69 7a 65 3d 36 0d 02 f8 10 |=5....size=6....| 00000540 73 69 7a 65 5f 73 74 6f 72 65 3d 37 0d 03 02 0c |size_store=7....| 00000550 73 63 6f 75 6e 74 3d 38 0d 03 0c 0c 73 74 61 62 |scount=8....stab| 00000560 6c 65 3d 39 0d 03 16 0d 70 74 61 62 6c 65 3d 31 |le=9....ptable=1| 00000570 30 0d 03 20 0c 73 63 61 6c 65 3d 31 31 0d 03 2a |0.. .scale=11..*| 00000580 04 0d 03 34 25 70 6c 6f 74 20 3d 20 26 34 35 20 |...4%plot = &45 | 00000590 3a 20 f4 20 56 64 75 20 63 6f 64 65 20 66 6f 72 |: . Vdu code for| 000005a0 20 70 6f 69 6e 74 0d 03 3e 04 0d 03 48 16 e3 20 | point..>...H.. | 000005b0 70 61 73 73 20 3d 20 30 20 b8 20 32 20 88 20 32 |pass = 0 . 2 . 2| 000005c0 0d 03 52 10 50 25 3d 63 6f 64 65 3a f1 20 50 25 |..R.P%=code:. P%| 000005d0 0d 03 5c 0d 5b 4f 50 54 20 70 61 73 73 0d 03 66 |..\.[OPT pass..f| 000005e0 15 20 53 54 4d 46 44 20 52 31 33 21 2c 7b 52 31 |. STMFD R13!,{R1| 000005f0 34 7d 0d 03 70 13 20 53 54 52 20 20 52 30 2c 78 |4}..p. STR R0,x| 00000600 61 6e 67 6c 65 0d 03 7a 13 20 53 54 52 20 20 52 |angle..z. STR R| 00000610 31 2c 79 61 6e 67 6c 65 0d 03 84 13 20 53 54 52 |1,yangle.... STR| 00000620 20 20 52 32 2c 7a 61 6e 67 6c 65 0d 03 8e 0e 20 | R2,zangle.... | 00000630 42 4c 20 20 20 6d 6f 76 65 0d 03 98 0e 20 42 4c |BL move.... BL| 00000640 20 20 20 74 75 72 6e 0d 03 a2 16 20 42 4c 20 20 | turn.... BL | 00000650 20 70 6c 6f 74 5f 73 70 72 69 74 65 73 0d 03 ac | plot_sprites...| 00000660 14 20 4c 44 4d 46 44 20 52 31 33 21 2c 7b 50 43 |. LDMFD R13!,{PC| 00000670 7d 0d 03 b6 04 0d 03 c0 09 2e 6d 6f 76 65 0d 03 |}.........move..| 00000680 ca 15 20 53 54 4d 46 44 20 52 31 33 21 2c 7b 52 |.. STMFD R13!,{R| 00000690 31 34 7d 0d 03 d4 11 20 4c 44 52 20 52 30 2c 64 |14}.... LDR R0,d| 000006a0 6f 74 74 79 0d 03 de 0f 20 4d 4f 56 20 52 31 2c |otty.... MOV R1,| 000006b0 23 39 38 0d 03 e8 0c 2e 6d 6f 76 65 5f 69 74 0d |#98.....move_it.| 000006c0 03 f2 15 20 4c 44 4d 49 41 20 52 30 2c 7b 52 32 |... LDMIA R0,{R2| 000006d0 2d 52 34 7d 0d 03 fc 12 20 41 44 44 20 52 33 2c |-R4}.... ADD R3,| 000006e0 52 33 2c 23 31 32 0d 04 06 10 20 43 4d 50 20 52 |R3,#12.... CMP R| 000006f0 33 2c 23 36 34 30 0d 04 10 12 20 4d 56 4e 47 45 |3,#640.... MVNGE| 00000700 20 52 33 2c 23 36 34 30 0d 04 1a 16 20 53 54 4d | R3,#640.... STM| 00000710 49 41 20 52 30 21 2c 7b 52 32 2d 52 34 7d 0d 04 |IA R0!,{R2-R4}..| 00000720 24 13 20 53 55 42 20 20 20 52 31 2c 52 31 2c 23 |$. SUB R1,R1,#| 00000730 31 0d 04 2e 10 20 43 4d 50 20 20 20 52 31 2c 23 |1.... CMP R1,#| 00000740 30 0d 04 38 12 20 42 4e 45 20 20 20 6d 6f 76 65 |0..8. BNE move| 00000750 5f 69 74 0d 04 42 14 20 4c 44 4d 46 44 20 52 31 |_it..B. LDMFD R1| 00000760 33 21 2c 7b 50 43 7d 0d 04 4c 04 0d 04 56 09 2e |3!,{PC}..L...V..| 00000770 74 75 72 6e 0d 04 60 15 20 53 54 4d 46 44 20 52 |turn..`. STMFD R| 00000780 31 33 21 2c 7b 52 31 34 7d 0d 04 6a 15 20 4c 44 |13!,{R14}..j. LD| 00000790 52 20 20 73 68 69 66 74 2c 73 74 6f 72 65 0d 04 |R shift,store..| 000007a0 74 12 20 4d 4f 56 20 20 75 70 74 6f 2c 23 39 38 |t. MOV upto,#98| 000007b0 0d 04 7e 16 20 53 55 42 20 20 75 70 74 6f 2c 75 |..~. SUB upto,u| 000007c0 70 74 6f 2c 23 31 0d 04 88 12 20 4c 44 52 20 20 |pto,#1.... LDR | 000007d0 52 36 2c 64 6f 74 74 79 0d 04 92 09 2e 6c 6f 6f |R6,dotty.....loo| 000007e0 70 0d 04 9c 1a 20 4c 44 4d 49 41 20 52 36 21 2c |p.... LDMIA R6!,| 000007f0 7b 78 6f 6c 64 2d 7a 6f 6c 64 7d 0d 04 a6 13 20 |{xold-zold}.... | 00000800 4c 44 52 20 20 52 30 2c 78 61 6e 67 6c 65 0d 04 |LDR R0,xangle..| 00000810 b0 15 20 4c 44 52 20 20 72 73 69 6e 2c 73 69 6e |.. LDR rsin,sin| 00000820 74 61 62 0d 04 ba 15 20 4c 44 52 20 20 72 63 6f |tab.... LDR rco| 00000830 73 2c 63 6f 73 74 61 62 0d 04 c4 1e 20 4c 44 52 |s,costab.... LDR| 00000840 20 20 72 73 69 6e 2c 5b 72 73 69 6e 2c 52 30 2c | rsin,[rsin,R0,| 00000850 41 53 4c 23 32 5d 0d 04 ce 1e 20 4c 44 52 20 20 |ASL#2].... LDR | 00000860 72 63 6f 73 2c 5b 72 63 6f 73 2c 52 30 2c 41 53 |rcos,[rcos,R0,AS| 00000870 4c 23 32 5d 0d 04 d8 12 20 42 4c 20 20 20 72 6f |L#2].... BL ro| 00000880 74 61 74 65 5f 78 0d 04 e2 13 20 4c 44 52 20 20 |tate_x.... LDR | 00000890 52 30 2c 79 61 6e 67 6c 65 0d 04 ec 15 20 4c 44 |R0,yangle.... LD| 000008a0 52 20 20 72 73 69 6e 2c 73 69 6e 74 61 62 0d 04 |R rsin,sintab..| 000008b0 f6 15 20 4c 44 52 20 20 72 63 6f 73 2c 63 6f 73 |.. LDR rcos,cos| 000008c0 74 61 62 0d 05 00 1e 20 4c 44 52 20 20 72 73 69 |tab.... LDR rsi| 000008d0 6e 2c 5b 72 73 69 6e 2c 52 30 2c 41 53 4c 23 32 |n,[rsin,R0,ASL#2| 000008e0 5d 0d 05 0a 1e 20 4c 44 52 20 20 72 63 6f 73 2c |].... LDR rcos,| 000008f0 5b 72 63 6f 73 2c 52 30 2c 41 53 4c 23 32 5d 0d |[rcos,R0,ASL#2].| 00000900 05 14 12 20 42 4c 20 20 20 72 6f 74 61 74 65 5f |... BL rotate_| 00000910 79 0d 05 1e 13 20 4c 44 52 20 20 52 30 2c 7a 61 |y.... LDR R0,za| 00000920 6e 67 6c 65 0d 05 28 15 20 4c 44 52 20 20 72 73 |ngle..(. LDR rs| 00000930 69 6e 2c 73 69 6e 74 61 62 0d 05 32 15 20 4c 44 |in,sintab..2. LD| 00000940 52 20 20 72 63 6f 73 2c 63 6f 73 74 61 62 0d 05 |R rcos,costab..| 00000950 3c 1e 20 4c 44 52 20 20 72 73 69 6e 2c 5b 72 73 |<. LDR rsin,[rs| 00000960 69 6e 2c 52 30 2c 41 53 4c 23 32 5d 0d 05 46 1e |in,R0,ASL#2]..F.| 00000970 20 4c 44 52 20 20 72 63 6f 73 2c 5b 72 63 6f 73 | LDR rcos,[rcos| 00000980 2c 52 30 2c 41 53 4c 23 32 5d 0d 05 50 12 20 42 |,R0,ASL#2]..P. B| 00000990 4c 20 20 20 72 6f 74 61 74 65 5f 7a 0d 05 5a 10 |L rotate_z..Z.| 000009a0 20 4d 4f 56 20 20 78 2c 78 6f 6c 64 0d 05 64 10 | MOV x,xold..d.| 000009b0 20 4d 4f 56 20 20 79 2c 79 6f 6c 64 0d 05 6e 10 | MOV y,yold..n.| 000009c0 20 4d 4f 56 20 20 7a 2c 7a 6f 6c 64 0d 05 78 1b | MOV z,zold..x.| 000009d0 20 53 54 4d 49 41 20 52 31 32 21 2c 7b 78 6f 6c | STMIA R12!,{xol| 000009e0 64 2d 7a 6f 6c 64 7d 0d 05 82 17 20 53 55 42 53 |d-zold}.... SUBS| 000009f0 20 20 75 70 74 6f 2c 75 70 74 6f 2c 23 31 0d 05 | upto,upto,#1..| 00000a00 8c 0e 20 42 43 53 20 20 6c 6f 6f 70 0d 05 96 14 |.. BCS loop....| 00000a10 20 4c 44 4d 46 44 20 52 31 33 21 2c 7b 50 43 7d | LDMFD R13!,{PC}| 00000a20 0d 05 a0 04 0d 05 aa 0d 2e 72 6f 74 61 74 65 5f |.........rotate_| 00000a30 7a 0d 05 b4 15 20 53 54 4d 46 44 20 52 31 33 21 |z.... STMFD R13!| 00000a40 2c 7b 52 31 34 7d 0d 05 be 15 20 4d 55 4c 20 20 |,{R14}.... MUL | 00000a50 78 2c 78 6f 6c 64 2c 72 63 6f 73 0d 05 c8 18 20 |x,xold,rcos.... | 00000a60 4d 55 4c 20 20 74 65 6d 70 2c 79 6f 6c 64 2c 72 |MUL temp,yold,r| 00000a70 73 69 6e 0d 05 d2 12 20 53 55 42 20 20 78 2c 78 |sin.... SUB x,x| 00000a80 2c 74 65 6d 70 0d 05 dc 15 20 4d 55 4c 20 20 79 |,temp.... MUL y| 00000a90 2c 78 6f 6c 64 2c 72 73 69 6e 0d 05 e6 18 20 4d |,xold,rsin.... M| 00000aa0 55 4c 20 20 74 65 6d 70 2c 79 6f 6c 64 2c 72 63 |UL temp,yold,rc| 00000ab0 6f 73 0d 05 f0 12 20 41 44 44 20 20 79 2c 79 2c |os.... ADD y,y,| 00000ac0 74 65 6d 70 0d 05 fa 17 20 4d 4f 56 20 20 78 6f |temp.... MOV xo| 00000ad0 6c 64 2c 78 2c 41 53 52 23 31 36 0d 06 04 17 20 |ld,x,ASR#16.... | 00000ae0 4d 4f 56 20 20 79 6f 6c 64 2c 79 2c 41 53 52 23 |MOV yold,y,ASR#| 00000af0 31 36 0d 06 0e 14 20 4c 44 4d 46 44 20 52 31 33 |16.... LDMFD R13| 00000b00 21 2c 7b 50 43 7d 0d 06 18 04 0d 06 22 0d 2e 72 |!,{PC}......"..r| 00000b10 6f 74 61 74 65 5f 78 0d 06 2c 15 20 53 54 4d 46 |otate_x..,. STMF| 00000b20 44 20 52 31 33 21 2c 7b 52 31 34 7d 0d 06 36 15 |D R13!,{R14}..6.| 00000b30 20 4d 55 4c 20 20 79 2c 79 6f 6c 64 2c 72 63 6f | MUL y,yold,rco| 00000b40 73 0d 06 40 18 20 4d 55 4c 20 20 74 65 6d 70 2c |s..@. MUL temp,| 00000b50 7a 6f 6c 64 2c 72 73 69 6e 0d 06 4a 12 20 53 55 |zold,rsin..J. SU| 00000b60 42 20 20 79 2c 79 2c 74 65 6d 70 0d 06 54 15 20 |B y,y,temp..T. | 00000b70 4d 55 4c 20 20 7a 2c 79 6f 6c 64 2c 72 73 69 6e |MUL z,yold,rsin| 00000b80 0d 06 5e 18 20 4d 55 4c 20 20 74 65 6d 70 2c 7a |..^. MUL temp,z| 00000b90 6f 6c 64 2c 72 63 6f 73 0d 06 68 12 20 41 44 44 |old,rcos..h. ADD| 00000ba0 20 20 7a 2c 7a 2c 74 65 6d 70 0d 06 72 17 20 4d | z,z,temp..r. M| 00000bb0 4f 56 20 20 79 6f 6c 64 2c 79 2c 41 53 52 23 31 |OV yold,y,ASR#1| 00000bc0 36 0d 06 7c 17 20 4d 4f 56 20 20 7a 6f 6c 64 2c |6..|. MOV zold,| 00000bd0 7a 2c 41 53 52 23 31 36 0d 06 86 14 20 4c 44 4d |z,ASR#16.... LDM| 00000be0 46 44 20 52 31 33 21 2c 7b 50 43 7d 0d 06 90 04 |FD R13!,{PC}....| 00000bf0 0d 06 9a 0d 2e 72 6f 74 61 74 65 5f 79 0d 06 a4 |.....rotate_y...| 00000c00 15 20 53 54 4d 46 44 20 52 31 33 21 2c 7b 52 31 |. STMFD R13!,{R1| 00000c10 34 7d 0d 06 ae 15 20 4d 55 4c 20 20 78 2c 78 6f |4}.... MUL x,xo| 00000c20 6c 64 2c 72 63 6f 73 0d 06 b8 18 20 4d 55 4c 20 |ld,rcos.... MUL | 00000c30 20 74 65 6d 70 2c 7a 6f 6c 64 2c 72 73 69 6e 0d | temp,zold,rsin.| 00000c40 06 c2 12 20 53 55 42 20 20 78 2c 78 2c 74 65 6d |... SUB x,x,tem| 00000c50 70 0d 06 cc 15 20 4d 55 4c 20 20 7a 2c 78 6f 6c |p.... MUL z,xol| 00000c60 64 2c 72 73 69 6e 0d 06 d6 18 20 4d 55 4c 20 20 |d,rsin.... MUL | 00000c70 74 65 6d 70 2c 7a 6f 6c 64 2c 72 63 6f 73 0d 06 |temp,zold,rcos..| 00000c80 e0 12 20 41 44 44 20 20 7a 2c 7a 2c 74 65 6d 70 |.. ADD z,z,temp| 00000c90 0d 06 ea 17 20 4d 4f 56 20 20 78 6f 6c 64 2c 78 |.... MOV xold,x| 00000ca0 2c 41 53 52 23 31 36 0d 06 f4 17 20 4d 4f 56 20 |,ASR#16.... MOV | 00000cb0 20 7a 6f 6c 64 2c 7a 2c 41 53 52 23 31 36 0d 06 | zold,z,ASR#16..| 00000cc0 fe 14 20 4c 44 4d 46 44 20 52 31 33 21 2c 7b 50 |.. LDMFD R13!,{P| 00000cd0 43 7d 0d 07 08 04 0d 07 12 11 2e 70 6c 6f 74 5f |C}.........plot_| 00000ce0 73 70 72 69 74 65 73 0d 07 1c 15 20 53 54 4d 46 |sprites.... STMF| 00000cf0 44 20 52 31 33 21 2c 7b 52 31 34 7d 0d 07 26 1a |D R13!,{R14}..&.| 00000d00 20 4c 44 52 20 73 63 6f 64 65 2c 73 70 72 69 74 | LDR scode,sprit| 00000d10 65 5f 70 6c 6f 74 0d 07 30 1a 20 4c 44 52 20 73 |e_plot..0. LDR s| 00000d20 61 72 65 61 2c 73 70 72 69 74 65 5f 61 72 65 61 |area,sprite_area| 00000d30 0d 07 3a 1a 20 4c 44 52 20 73 6e 61 6d 65 2c 73 |..:. LDR sname,s| 00000d40 70 72 69 74 65 5f 6e 61 6d 65 0d 07 44 13 20 4d |prite_name..D. M| 00000d50 4f 56 20 73 63 6f 75 6e 74 2c 23 39 38 0d 07 4e |OV scount,#98..N| 00000d60 15 20 4c 44 52 20 73 74 61 62 6c 65 2c 73 74 6f |. LDR stable,sto| 00000d70 72 65 0d 07 58 15 20 4c 44 52 20 70 74 61 62 6c |re..X. LDR ptabl| 00000d80 65 2c 74 61 62 6c 65 0d 07 62 0e 2e 70 6c 6f 74 |e,table..b..plot| 00000d90 5f 6c 6f 6f 70 0d 07 6c 18 20 41 44 52 20 73 69 |_loop..l. ADR si| 00000da0 7a 65 5f 73 74 6f 72 65 2c 6d 75 6c 74 0d 07 76 |ze_store,mult..v| 00000db0 19 20 4c 44 4d 49 41 20 52 39 21 2c 7b 73 78 2c |. LDMIA R9!,{sx,| 00000dc0 73 79 2c 73 7a 7d 0d 07 80 13 20 41 44 44 20 73 |sy,sz}.... ADD s| 00000dd0 7a 2c 73 7a 2c 23 36 34 30 0d 07 8a 0e 20 43 4d |z,sz,#640.... CM| 00000de0 50 20 73 7a 2c 23 31 0d 07 94 12 20 42 4c 45 20 |P sz,#1.... BLE | 00000df0 64 6f 74 5f 72 61 6e 67 65 0d 07 9e 11 20 43 4d |dot_range.... CM| 00000e00 50 20 73 7a 2c 23 34 30 39 36 0d 07 a8 12 20 42 |P sz,#4096.... B| 00000e10 47 45 20 64 6f 74 5f 72 61 6e 67 65 0d 07 b2 10 |GE dot_range....| 00000e20 20 4d 4f 56 20 73 69 7a 65 2c 73 7a 0d 07 bc 20 | MOV size,sz... | 00000e30 20 4c 44 52 20 73 63 61 6c 65 2c 5b 70 74 61 62 | LDR scale,[ptab| 00000e40 6c 65 2c 73 7a 2c 41 53 4c 23 32 5d 0d 07 c6 14 |le,sz,ASL#2]....| 00000e50 20 4d 55 4c 20 73 78 2c 73 63 61 6c 65 2c 73 78 | MUL sx,scale,sx| 00000e60 0d 07 d0 14 20 4d 55 4c 20 73 79 2c 73 63 61 6c |.... MUL sy,scal| 00000e70 65 2c 73 79 0d 07 da 15 20 4d 4f 56 20 73 78 2c |e,sy.... MOV sx,| 00000e80 73 78 2c 41 53 52 23 31 32 0d 07 e4 15 20 4d 56 |sx,ASR#12.... MV| 00000e90 4e 20 73 79 2c 73 79 2c 41 53 52 23 31 32 0d 07 |N sy,sy,ASR#12..| 00000ea0 ee 13 20 41 44 44 20 73 78 2c 73 78 2c 23 36 34 |.. ADD sx,sx,#64| 00000eb0 30 0d 07 f8 13 20 41 44 44 20 73 79 2c 73 79 2c |0.... ADD sy,sy,| 00000ec0 23 35 31 32 0d 08 02 19 20 4d 4f 56 20 73 69 7a |#512.... MOV siz| 00000ed0 65 2c 73 63 61 6c 65 2c 41 53 52 23 31 0d 08 0c |e,scale,ASR#1...| 00000ee0 10 20 53 54 52 20 52 36 2c 5b 52 37 5d 0d 08 16 |. STR R6,[R7]...| 00000ef0 13 20 53 54 52 20 52 36 2c 5b 52 37 2c 23 34 5d |. STR R6,[R7,#4]| 00000f00 0d 08 20 0e 20 4d 4f 56 20 52 36 2c 52 37 0d 08 |.. . MOV R6,R7..| 00000f10 2a 0e 20 4d 4f 56 20 52 35 2c 23 38 0d 08 34 0e |*. MOV R5,#8..4.| 00000f20 20 4d 4f 56 20 52 37 2c 23 30 0d 08 3e 0b 20 53 | MOV R7,#0..>. S| 00000f30 57 49 20 34 36 0d 08 48 0e 2e 64 6f 74 5f 72 61 |WI 46..H..dot_ra| 00000f40 6e 67 65 0d 08 52 19 20 53 55 42 20 73 63 6f 75 |nge..R. SUB scou| 00000f50 6e 74 2c 73 63 6f 75 6e 74 2c 23 31 0d 08 5c 12 |nt,scount,#1..\.| 00000f60 20 43 4d 50 20 73 63 6f 75 6e 74 2c 23 30 0d 08 | CMP scount,#0..| 00000f70 66 12 20 42 4e 45 20 70 6c 6f 74 5f 6c 6f 6f 70 |f. BNE plot_loop| 00000f80 0d 08 70 14 20 4c 44 4d 46 44 20 52 31 33 21 2c |..p. LDMFD R13!,| 00000f90 7b 50 43 7d 0d 08 7a 04 0d 08 84 0a 2e 64 6f 74 |{PC}..z......dot| 00000fa0 74 79 0d 08 8e 0f 45 51 55 44 20 70 6f 69 6e 74 |ty....EQUD point| 00000fb0 25 0d 08 98 0b 2e 73 69 6e 74 61 62 0d 08 a2 0d |%.....sintab....| 00000fc0 45 51 55 44 20 73 69 6e 25 0d 08 ac 0b 2e 63 6f |EQUD sin%.....co| 00000fd0 73 74 61 62 0d 08 b6 0d 45 51 55 44 20 63 6f 73 |stab....EQUD cos| 00000fe0 25 0d 08 c0 0a 2e 74 61 62 6c 65 0d 08 ca 0f 45 |%.....table....E| 00000ff0 51 55 44 20 74 61 62 6c 65 25 0d 08 d4 0a 2e 73 |QUD table%.....s| 00001000 74 6f 72 65 0d 08 de 0f 45 51 55 44 20 73 74 6f |tore....EQUD sto| 00001010 72 65 25 0d 08 e8 0b 2e 78 61 6e 67 6c 65 0d 08 |re%.....xangle..| 00001020 f2 0a 45 51 55 44 20 30 0d 08 fc 0b 2e 79 61 6e |..EQUD 0.....yan| 00001030 67 6c 65 0d 09 06 0a 45 51 55 44 20 30 0d 09 10 |gle....EQUD 0...| 00001040 0b 2e 7a 61 6e 67 6c 65 0d 09 1a 0a 45 51 55 44 |..zangle....EQUD| 00001050 20 30 0d 09 24 10 2e 73 70 72 69 74 65 5f 70 6c | 0..$..sprite_pl| 00001060 6f 74 0d 09 2e 1f 45 51 55 44 20 35 36 34 20 20 |ot....EQUD 564 | 00001070 20 20 20 20 3b 20 73 63 61 6c 65 64 20 70 6c 6f | ; scaled plo| 00001080 74 0d 09 38 21 3b 45 51 55 44 20 35 34 36 20 20 |t..8!;EQUD 546 | 00001090 20 20 20 3b 20 6f 72 64 69 6e 61 72 79 20 70 6c | ; ordinary pl| 000010a0 6f 74 0d 09 42 10 2e 73 70 72 69 74 65 5f 61 72 |ot..B..sprite_ar| 000010b0 65 61 0d 09 4c 0c 45 51 55 44 20 73 70 25 0d 09 |ea..L.EQUD sp%..| 000010c0 56 10 2e 73 70 72 69 74 65 5f 6e 61 6d 65 0d 09 |V..sprite_name..| 000010d0 60 0e 45 51 55 44 20 62 61 6c 6c 25 0d 09 6a 09 |`.EQUD ball%..j.| 000010e0 2e 6d 75 6c 74 0d 09 74 0c 45 51 55 44 20 32 30 |.mult..t.EQUD 20| 000010f0 30 0d 09 7e 0c 45 51 55 44 20 32 30 30 0d 09 88 |0..~.EQUD 200...| 00001100 0d 45 51 55 44 20 32 30 34 38 0d 09 92 0d 45 51 |.EQUD 2048....EQ| 00001110 55 44 20 32 30 34 38 0d 09 9c 05 5d 0d 09 a6 0a |UD 2048....]....| 00001120 ed 20 70 61 73 73 0d 09 b0 05 e1 0d 09 ba 04 0d |. pass..........| 00001130 09 c4 0f dd 20 f2 64 61 74 61 6c 69 73 74 0d 09 |.... .datalist..| 00001140 ce 35 dc 20 31 2c 30 2c 30 2c 31 2c 30 2c 31 2c |.5. 1,0,0,1,0,1,| 00001150 31 2c 31 2c 30 2c 30 2c 31 2c 31 2c 31 2c 30 2c |1,1,0,0,1,1,1,0,| 00001160 30 2c 31 2c 31 2c 31 2c 31 2c 30 2c 31 2c 30 2c |0,1,1,1,1,0,1,0,| 00001170 30 2c 30 0d 09 d8 35 dc 20 31 2c 31 2c 30 2c 31 |0,0...5. 1,1,0,1| 00001180 2c 30 2c 30 2c 31 2c 30 2c 30 2c 31 2c 30 2c 30 |,0,0,1,0,0,1,0,0| 00001190 2c 30 2c 31 2c 30 2c 31 2c 30 2c 30 2c 30 2c 30 |,0,1,0,1,0,0,0,0| 000011a0 2c 31 2c 30 2c 30 2c 30 0d 09 e2 35 dc 20 31 2c |,1,0,0,0...5. 1,| 000011b0 31 2c 31 2c 31 2c 30 2c 30 2c 31 2c 30 2c 30 2c |1,1,1,0,0,1,0,0,| 000011c0 31 2c 30 2c 30 2c 30 2c 30 2c 30 2c 31 2c 31 2c |1,0,0,0,0,0,1,1,| 000011d0 31 2c 30 2c 30 2c 31 2c 30 2c 30 2c 30 0d 09 ec |1,0,0,1,0,0,0...| 000011e0 35 dc 20 31 2c 30 2c 31 2c 31 2c 30 2c 30 2c 31 |5. 1,0,1,1,0,0,1| 000011f0 2c 30 2c 30 2c 31 2c 30 2c 30 2c 31 2c 31 2c 30 |,0,0,1,0,0,1,1,0| 00001200 2c 31 2c 30 2c 30 2c 30 2c 30 2c 31 2c 30 2c 30 |,1,0,0,0,0,1,0,0| 00001210 2c 30 0d 09 f6 35 dc 20 31 2c 30 2c 30 2c 31 2c |,0...5. 1,0,0,1,| 00001220 30 2c 31 2c 31 2c 31 2c 30 2c 30 2c 31 2c 31 2c |0,1,1,1,0,0,1,1,| 00001230 31 2c 31 2c 30 2c 31 2c 31 2c 31 2c 31 2c 30 2c |1,1,0,1,1,1,1,0,| 00001240 31 2c 31 2c 31 2c 31 0d 0a 00 05 e1 0d ff |1,1,1,1.......| 0000124e