Home » Archimedes archive » Acorn User » AU 1994-03.adf » !GraphDemo_GraphDemo » !Revolutif/!RunImage
!Revolutif/!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 » Archimedes archive » Acorn User » AU 1994-03.adf » !GraphDemo_GraphDemo |
Filename: | !Revolutif/!RunImage |
Read OK: | ✔ |
File size: | 14FC bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM > REVOLUTIF 20REM 30REM (C) 1994 ArmOric for Arm'S Tech 40REM Contact me: elisei@dingo.imag.fr 50REM 60REM THIS PROGRAM SHADES ANY REVOLUTION OBJECT 70REM 80REM * WITH COLORS FOR : 90REM - THE OBJECT 100REM - A VERY FAR LIGHT ( RAYS ARE // ) 110REM - AN AMBIENT LIGHTING 120REM (automatic gain for maximum contrast) 130REM * WITHOUT ANY SHADOWS 140REM * USING 150REM - PATTERNING IN A 16 COLORS MODE 160REM - ORDERED DITHERING 170REM ( less colour-accurate than error diffusing ones, 180REM but nicer for low-res. 190REM Complexity is same as simple dithering ) 200REM - A PROCEDURAL MODEL FOR THE OBJECT 210REM (see at end to create your one...) 220 230 240REM *************** LIST OF PARAMETERS ***************** 250 260DITHR=TRUE : REM FOR ORDERED DITHERING / NONE 270MD =12 : REM 640 LARGE, 16 COLORS ONE 280MD2 =15 : REM ANY THAT CHECKS DOUBLE MEMORY 290 300REM **************** END OF PARAMETERS ***************** 310 320MODE MD2 330IF MODE<>MD2 ERROR EXT 1,"Sorry, I need Mode "+STR$MD2:END 340MODE MD:OFF:ORIGIN 640,512 360 370R=64:PROCass 380 390READ NOBJ 400FOR NO=1 TO NOBJ 410 READ A$:PROCobj(A$) 430 MOUSE ON 129 440 X=2:Y=2:E=1 450 REPEAT 460 MOUSE DX,DY,T 470 X+=(DX/100-X)/10:Y+=(DY/512*PI/2-Y)/10 480 Z=256*COS(Y) 490 A%=Z*SIN(X):B%=-256*SIN(Y):C%=Z*COS(X) 500 POINT TO A%+A%,-B%-B% 510 VDU 19,2,25,(C%>0),(C%>0),(C%>0) 520 CALL AFF:WAIT 530 SYS "OS_Byte",&71,E:E=3-E 540 UNTIL T<>0 550NEXT NO 560 570MODE MD 580SYS "OS_Exit" 590 600END 610: 620DEF PROCass 630 640DIM COD% 60*1024 650 660XECR=0 670FOR I=0 TO 2 STEP 2 680P%=COD% 690[ OPT I 700.FCLS LDR R0,ECR 710 SUB 11,R0,#(R+15) AND (1023-15) 720 MOV R3,#0:MOV R4,#0:MOV R5,#0:MOV R6,#0 730 MOV R7,#0:MOV R8,#0:MOV R9,#0:MOV 10,#0 740 MOV R1,#2*R 750.YCLS MOV R2,#2*((R+15)AND(1023-15)) 760 MOV R0,R11 770.XCLS STMIA R0!,{R3-10} 780 SUBS R2,R2,#32:BNE XCLS 790 ADD 11,11,#XECR 800 SUBS R1,R1,#1:BNE YCLS 810 820 MOV PC,R14 830 840.ECR DCD 149:DCD 149:DCD 6:DCD 7:DCD 149:DCD -1 850.aBAL DCD BAL 860.aCSTBL DCD CSTBL 870.aCOLTBL DCD COLTBL 880.RET14 DCD 0 890 900.AROND DCD &0E4A2C68 ; NIBBLE PATTERN 910 ; FOR ORDERED DITHERING 920 930.AFF STR R14,RET14 940 950 LDR R14,AROND 960 970 MOV R8,R0 980 MOV R9,R1 990 MOV 10,R2 ; 8,9,10 = LIGHT SOURCE 1000 LDR R6,aCOLTBL 1010 LDR R12,ECR ; R12 = ECR 1020 LDR R11,aBAL ; R11 = DATA PTR 1030 LDR R7,aCSTBL ; R7 = pCos^q 1040 MOV R0,#R*2 ; R0 = Y LOOP 1050.YLOP LDMIA R11!,{R1,R3} ; R1 = X LOOP 1060 MUL R3,R9,R3 1070 STMFD R13!,{R12} 1080 MOV R2,R1,LSL#1 1090 MOV R14,R14,ROR#4 1100 MOV R5,R14,ROR R2 1110 SUB R12,R12,R1,LSR#1 1120.XLOP 1130 LDMIA R11!,{R2} 1140 MOV R4,R2,ASR#16 1150 MOV R2,R2,LSL#16:MOV R2,R2,ASR#16 1160 MLA R2,R8,R2,R3 1170 MLA R2,10,R4,R2 ; OUTER PROD. -> COS 1180 LDRB R2,[R7,R2,ASR#8] 1190 ADD R4,R2,R5,LSR#28:MOV R5,R5,ROR#28 1200 LDRB R2,[R6,R4,LSR#3] 1210 STRB R2,[R12],#1 1220 SUBS R1,R1,#1:BNE XLOP 1230 1240 LDMFD R13!,{R12} 1250 ADD R12,R12,#XECR 1260 EOR R6,R6,#64 1270 SUBS R0,R0,#1:BNE YLOP 1280 1290 LDR R0,ECR:LDR R1,ECR+4 1300 STR R1,ECR:STR R0,ECR+4 1310 LDR PC,RET14 1320 1330.aREF DCD REF 1340 1350.CERC ; R0 = @ STO 1360 ; R1 = Radius*2 1370 ; R2 = Facteur*256 1380 ; R3 = Step*256 1390 1400 STR R1,[R0],#8 1410 1420 MOV R4,#R<<256 1430 RSB R4,R4,#128 ; R4 = POSITION 1440 LDR R5,aREF ; R5 = REF MIDDLE 1450 1460.CERCL ADD R4,R4,R3 1470 MOV R9,R4,ASR#8 1480 LDR R9,[R5,R9,LSL#2] 1490 MOV R8,R9,LSL#16:MOV R8,R8,ASR#16 1500 MOV R9,R9,ASR#16 1510 MUL R6,R8,R2:MOV R6,R6,LSR#16 1520 MUL R7,R9,R2:MOV R7,R7,LSR#16 1530 ADD R6,R6,R7,LSL#16 1540 STR R6,[R0],#4 1550 SUBS R1,R1,#1:BNE CERCL 1560 1570 MOV PC,R14 1580] 1590 SYS "OS_ReadVduVariables",ECR,ECR 1600 !ECR+=ECR!8*(.5-R)+ECR!12/2 1610 XECR=ECR!8:ECR!4=!ECR+ECR!12 1620 REF=P%:P%+=4*R*2 1630 P%=(P%+127)AND (-128) 1640 COLTBL=P%:P%+=128+48 1650 CSTBL=P%+256:P%+=256+257+3 1660 BAL=P% 1670NEXT I 1680 1690C=COLTBL:A=1 1700FOR I=0 TO 15 1710 N=A-(A<>15) 1720 C?(2*I)=A*17 1730 C?(2*I+1)=A*16+N 1740 C?(64+2*I)=A*17 1750 C?(64+2*I+1)=N*16+A 1760 A=N 1770NEXT I 1780C!30=-1:C!(64+30)=-1 1790 1800IF DITHR=FALSE THEN !AROND=&88888888 1810 1820R2=R*R:RF=REF 1830FOR I=-R+.5 TO R-.5 1840 RF!0=255*I/R 1850 RF!4=255*SQR(1-I*I/R2) 1860 RF?2=RF?4:RF?3=RF?5 1870 RF+=4 1880NEXT I 1890 1900ENDPROC 1910: 1920DEF PROCobj(A$) 1921 MOUSE OFF 1930 A=COLTBL+128 1940 A%=OPENIN("<Revolutif$Dir>."+A$):L=EXT#A%:CLOSE#A% 1950 OSCLI "LOAD <Revolutif$Dir>."+A$+" "+STR$~A 1960 IF ?A<>0 THEN 1970 A%=BAL:?A=0 : REM EXPAND PURE REVOLUTION OBJECT 1980 FOR I=1 TO 128 1990 B%=!A%:C%=A%!8:D%=A%!12:A%=USR(CERC) 2020 NEXT I 2030 ENDIF 2040 COLOUR 15,0 2050 FOR I=2 TO 1 STEP -1 2060 SYS "OS_Byte",&70,I:CLS 2070 PRINT TAB(40-LEN(A$)/2,2)A$ 2080 PRINTTAB(25,30)"(C) 94 ArmOric for Arm'S Tech" 2090 NEXT I 2100 IF !ECR>ECR!4 THEN SWAP ECR!4,!ECR 2110 FOR I=0 TO 15 2120 COLOUR I,?A,A?1,A?2:A+=3 2130 NEXT I 2140ENDPROC 2150 2160DATA 6,VASE,JOYSTICK,BELL,TUBE,CHOCOLATE,SCREW
� > REVOLUTIF � &� (C) 1994 ArmOric for Arm'S Tech ((� Contact me: elisei@dingo.imag.fr 2� </� THIS PROGRAM SHADES ANY REVOLUTION OBJECT F� P� * WITH COLORS FOR : Z� - THE OBJECT d,� - A VERY FAR LIGHT ( RAYS ARE // ) n� - AN AMBIENT LIGHTING x0� (automatic gain for maximum contrast) �� * WITHOUT ANY SHADOWS �� * USING �*� - PATTERNING IN A 16 COLORS MODE �� - ORDERED DITHERING �?� ( less colour-accurate than error diffusing ones, �'� but nicer for low-res. �9� Complexity is same as simple dithering ) �-� - A PROCEDURAL MODEL FOR THE OBJECT �0� (see at end to create your one...) � � �:� *************** LIST OF PARAMETERS ***************** � 6DITHR=� : � FOR ORDERED DITHERING / NONE 5MD =12 : � 640 LARGE, 16 COLORS ONE 9MD2 =15 : � ANY THAT CHECKS DOUBLE MEMORY " ,:� **************** END OF PARAMETERS ***************** 6 @ � MD2 J/� �<>MD2 � � 1,"Sorry, I need Mode "+�MD2:� T� MD:�:ȑ 640,512 h r R=64:�ass | � � NOBJ �� NO=1 � NOBJ � � A$:�obj(A$) � ȗ � 129 � X=2:Y=2:E=1 � � � ȗ DX,DY,T �+ X+=(DX/100-X)/10:Y+=(DY/512*�/2-Y)/10 � Z=256*�(Y) �& A%=Z*�(X):B%=-256*�(Y):C%=Z*�(X) � Ȓ � A%+A%,-B%-B% �$ � 19,2,25,(C%>0),(C%>0),(C%>0) � AFF:Ȗ ș "OS_Byte",&71,E:E=3-E � T<>0 &� NO 0 :� MD Dș "OS_Exit" N X� b: l � �ass v �� COD% 60*1024 � � XECR=0 �� I=0 � 2 � 2 �P%=COD% �[ OPT I �.FCLS LDR R0,ECR �+ SUB 11,R0,#(R+15) � (1023-15) �5 MOV R3,#0:MOV R4,#0:MOV R5,#0:MOV R6,#0 �5 MOV R7,#0:MOV R8,#0:MOV R9,#0:MOV 10,#0 � MOV R1,#2*R �*.YCLS MOV R2,#2*((R+15)�(1023-15)) � MOV R0,R11 .XCLS STMIA R0!,{R3-10} $ SUBS R2,R2,#32:BNE XCLS ADD 11,11,#XECR # SUBS R1,R1,#1:BNE YCLS * 4 MOV PC,R14 > H8.ECR DCD 149:DCD 149:DCD 6:DCD 7:DCD 149:DCD -1 R.aBAL DCD BAL \.aCSTBL DCD CSTBL f.aCOLTBL DCD COLTBL p.RET14 DCD 0 z �2.AROND DCD &0E4A2C68 ; NIBBLE PATTERN �6 ; � �DERED DITHERING � �.AFF STR R14,RET14 � � LDR R14,AROND � � MOV R8,R0 � MOV R9,R1 �9 MOV 10,R2 ; 8,9,10 = LIGHT SOURCE � LDR R6,aCOLTBL �0 LDR R12,ECR ; R12 = ECR �2 LDR R11,aBAL ; R11 = � PTR 3 LDR R7,aCSTBL ; R7 = pCos^q 3 MOV R0,#R*2 ; R0 = Y LOOP 3.YLOP LDMIA R11!,{R1,R3} ; R1 = X LOOP $ MUL R3,R9,R3 . STMFD R13!,{R12} 8 MOV R2,R1,LSL#1 B MOV R14,R14,ROR#4 L MOV R5,R14,ROR R2 V" SUB R12,R12,R1,LSR#1 ` .XLOP j LDMIA R11!,{R2} t MOV R4,R2,ASR#16 ~/ MOV R2,R2,LSL#16:MOV R2,R2,ASR#16 � MLA R2,R8,R2,R3 �4 MLA R2,10,R4,R2 ; OUTER PROD. -> � �# LDRB R2,[R7,R2,ASR#8] �2 ADD R4,R2,R5,LSR#28:MOV R5,R5,ROR#28 �# LDRB R2,[R6,R4,LSR#3] � STRB R2,[R12],#1 �# SUBS R1,R1,#1:BNE XLOP � � LDMFD R13!,{R12} � ADD R12,R12,#XECR � � R6,R6,#64 �# SUBS R0,R0,#1:BNE YLOP % LDR R0,ECR:LDR R1,ECR+4 % STR R1,ECR:STR R0,ECR+4 LDR PC,RET14 ( 2.aREF DCD REF < F.CERC ; R0 = @ STO P ; R1 = Radius*2 Z ; R2 = Facteur*256 d ; R3 = Step*256 n x STR R1,[R0],#8 � � MOV R4,#R<<256 �1 RSB R4,R4,#128 ; R4 = POSITION �3 LDR R5,aREF ; R5 = REF MIDDLE � �.CERCL ADD R4,R4,R3 � MOV R9,R4,ASR#8 �" LDR R9,[R5,R9,LSL#2] �/ MOV R8,R9,LSL#16:MOV R8,R8,ASR#16 � MOV R9,R9,ASR#16 �+ MUL R6,R8,R2:MOV R6,R6,LSR#16 �+ MUL R7,R9,R2:MOV R7,R7,LSR#16 �! ADD R6,R6,R7,LSL#16 STR R6,[R0],#4 $ SUBS R1,R1,#1:BNE CERCL " MOV PC,R14 ,] 6% ș "OS_ReadVduVariables",ECR,ECR @! !ECR+=ECR!8*(.5-R)+ECR!12/2 J" XECR=ECR!8:ECR!4=!ECR+ECR!12 T REF=P%:P%+=4*R*2 ^ P%=(P%+127)� (-128) h COLTBL=P%:P%+=128+48 r CSTBL=P%+256:P%+=256+257+3 | BAL=P% �� I � �C=COLTBL:A=1 �� I=0 � 15 � N=A-(A<>15) � C?(2*I)=A*17 � C?(2*I+1)=A*16+N � C?(64+2*I)=A*17 � C?(64+2*I+1)=N*16+A � A=N �� I �C!30=-1:C!(64+30)=-1 � � DITHR=� � !AROND=&88888888 R2=R*R:RF=REF &� I=-R+.5 � R-.5 0 RF!0=255*I/R : RF!4=255*�(1-I*I/R2) D RF?2=RF?4:RF?3=RF?5 N RF+=4 X� I b l� v: �� �obj(A$) � ȗ � � A=COLTBL+128 �, A%=�("<Revolutif$Dir>."+A$):L=�#A%:�#A% �) � "LOAD <Revolutif$Dir>."+A$+" "+�~A � � ?A<>0 � �7 A%=BAL:?A=0 : � EXPAND PURE REVOLUTION OBJECT � � I=1 � 128 �) B%=!A%:C%=A%!8:D%=A%!12:A%=�(CERC) � � I � � � � 15,0 � I=2 � 1 � -1 ș "OS_Byte",&70,I:� � �40-�(A$)/2,2)A$ - �25,30)"(C) 94 ArmOric for Arm'S Tech" * � I 4! � !ECR>ECR!4 � Ȕ ECR!4,!ECR > � I=0 � 15 H � I,?A,A?1,A?2:A+=3 R � I \� f p/� 6,VASE,JOYSTICK,BELL,TUBE,CHOCOLATE,SCREW �
00000000 0d 00 0a 11 f4 20 3e 20 52 45 56 4f 4c 55 54 49 |..... > REVOLUTI| 00000010 46 0d 00 14 05 f4 0d 00 1e 26 f4 20 20 28 43 29 |F........&. (C)| 00000020 20 31 39 39 34 20 41 72 6d 4f 72 69 63 20 66 6f | 1994 ArmOric fo| 00000030 72 20 41 72 6d 27 53 20 54 65 63 68 0d 00 28 28 |r Arm'S Tech..((| 00000040 f4 20 20 20 43 6f 6e 74 61 63 74 20 6d 65 3a 20 |. Contact me: | 00000050 65 6c 69 73 65 69 40 64 69 6e 67 6f 2e 69 6d 61 |elisei@dingo.ima| 00000060 67 2e 66 72 0d 00 32 05 f4 0d 00 3c 2f f4 20 54 |g.fr..2....</. T| 00000070 48 49 53 20 50 52 4f 47 52 41 4d 20 53 48 41 44 |HIS PROGRAM SHAD| 00000080 45 53 20 41 4e 59 20 52 45 56 4f 4c 55 54 49 4f |ES ANY REVOLUTIO| 00000090 4e 20 4f 42 4a 45 43 54 0d 00 46 05 f4 0d 00 50 |N OBJECT..F....P| 000000a0 1a f4 20 20 2a 20 57 49 54 48 20 43 4f 4c 4f 52 |.. * WITH COLOR| 000000b0 53 20 46 4f 52 20 3a 0d 00 5a 16 f4 20 20 20 20 |S FOR :..Z.. | 000000c0 20 2d 20 54 48 45 20 4f 42 4a 45 43 54 0d 00 64 | - THE OBJECT..d| 000000d0 2c f4 20 20 20 20 20 2d 20 41 20 56 45 52 59 20 |,. - A VERY | 000000e0 46 41 52 20 4c 49 47 48 54 20 28 20 52 41 59 53 |FAR LIGHT ( RAYS| 000000f0 20 41 52 45 20 2f 2f 20 29 0d 00 6e 1f f4 20 20 | ARE // )..n.. | 00000100 20 20 20 2d 20 41 4e 20 41 4d 42 49 45 4e 54 20 | - AN AMBIENT | 00000110 4c 49 47 48 54 49 4e 47 0d 00 78 30 f4 20 20 20 |LIGHTING..x0. | 00000120 20 20 20 28 61 75 74 6f 6d 61 74 69 63 20 67 61 | (automatic ga| 00000130 69 6e 20 66 6f 72 20 6d 61 78 69 6d 75 6d 20 63 |in for maximum c| 00000140 6f 6e 74 72 61 73 74 29 0d 00 82 1c f4 20 20 2a |ontrast)..... *| 00000150 20 57 49 54 48 4f 55 54 20 41 4e 59 20 53 48 41 | WITHOUT ANY SHA| 00000160 44 4f 57 53 0d 00 8c 0e f4 20 20 2a 20 55 53 49 |DOWS..... * USI| 00000170 4e 47 0d 00 96 2a f4 20 20 20 20 20 2d 20 50 41 |NG...*. - PA| 00000180 54 54 45 52 4e 49 4e 47 20 49 4e 20 41 20 31 36 |TTERNING IN A 16| 00000190 20 43 4f 4c 4f 52 53 20 4d 4f 44 45 0d 00 a0 1d | COLORS MODE....| 000001a0 f4 20 20 20 20 20 2d 20 4f 52 44 45 52 45 44 20 |. - ORDERED | 000001b0 44 49 54 48 45 52 49 4e 47 0d 00 aa 3f f4 20 20 |DITHERING...?. | 000001c0 20 20 20 20 20 20 20 28 20 6c 65 73 73 20 63 6f | ( less co| 000001d0 6c 6f 75 72 2d 61 63 63 75 72 61 74 65 20 74 68 |lour-accurate th| 000001e0 61 6e 20 65 72 72 6f 72 20 64 69 66 66 75 73 69 |an error diffusi| 000001f0 6e 67 20 6f 6e 65 73 2c 0d 00 b4 27 f4 20 20 20 |ng ones,...'. | 00000200 20 20 20 20 20 20 20 20 20 62 75 74 20 6e 69 63 | but nic| 00000210 65 72 20 66 6f 72 20 6c 6f 77 2d 72 65 73 2e 0d |er for low-res..| 00000220 00 be 39 f4 20 20 20 20 20 20 20 20 20 20 20 20 |..9. | 00000230 43 6f 6d 70 6c 65 78 69 74 79 20 69 73 20 73 61 |Complexity is sa| 00000240 6d 65 20 61 73 20 73 69 6d 70 6c 65 20 64 69 74 |me as simple dit| 00000250 68 65 72 69 6e 67 20 29 0d 00 c8 2d f4 20 20 20 |hering )...-. | 00000260 20 20 2d 20 41 20 50 52 4f 43 45 44 55 52 41 4c | - A PROCEDURAL| 00000270 20 4d 4f 44 45 4c 20 46 4f 52 20 54 48 45 20 4f | MODEL FOR THE O| 00000280 42 4a 45 43 54 0d 00 d2 30 f4 20 20 20 20 20 20 |BJECT...0. | 00000290 20 20 20 28 73 65 65 20 61 74 20 65 6e 64 20 74 | (see at end t| 000002a0 6f 20 63 72 65 61 74 65 20 79 6f 75 72 20 6f 6e |o create your on| 000002b0 65 2e 2e 2e 29 0d 00 dc 04 0d 00 e6 04 0d 00 f0 |e...)...........| 000002c0 3a f4 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |:. *************| 000002d0 2a 2a 20 4c 49 53 54 20 4f 46 20 50 41 52 41 4d |** LIST OF PARAM| 000002e0 45 54 45 52 53 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |ETERS **********| 000002f0 2a 2a 2a 2a 2a 2a 2a 0d 00 fa 04 0d 01 04 36 44 |*******.......6D| 00000300 49 54 48 52 3d b9 20 20 20 20 20 20 20 20 20 20 |ITHR=. | 00000310 3a 20 f4 20 20 46 4f 52 20 4f 52 44 45 52 45 44 |: . FOR ORDERED| 00000320 20 44 49 54 48 45 52 49 4e 47 20 2f 20 4e 4f 4e | DITHERING / NON| 00000330 45 0d 01 0e 35 4d 44 20 20 20 3d 31 32 20 20 20 |E...5MD =12 | 00000340 20 20 20 20 20 20 20 20 20 3a 20 f4 20 20 36 34 | : . 64| 00000350 30 20 4c 41 52 47 45 2c 20 31 36 20 43 4f 4c 4f |0 LARGE, 16 COLO| 00000360 52 53 20 4f 4e 45 0d 01 18 39 4d 44 32 20 20 3d |RS ONE...9MD2 =| 00000370 31 35 20 20 20 20 20 20 20 20 20 20 20 20 3a 20 |15 : | 00000380 f4 20 41 4e 59 20 54 48 41 54 20 43 48 45 43 4b |. ANY THAT CHECK| 00000390 53 20 44 4f 55 42 4c 45 20 4d 45 4d 4f 52 59 0d |S DOUBLE MEMORY.| 000003a0 01 22 04 0d 01 2c 3a f4 20 2a 2a 2a 2a 2a 2a 2a |."...,:. *******| 000003b0 2a 2a 2a 2a 2a 2a 2a 2a 2a 20 45 4e 44 20 4f 46 |********* END OF| 000003c0 20 50 41 52 41 4d 45 54 45 52 53 20 2a 2a 2a 2a | PARAMETERS ****| 000003d0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 01 36 |*************..6| 000003e0 04 0d 01 40 09 eb 20 4d 44 32 0d 01 4a 2f e7 20 |...@.. MD2..J/. | 000003f0 eb 3c 3e 4d 44 32 20 85 20 a2 20 31 2c 22 53 6f |.<>MD2 . . 1,"So| 00000400 72 72 79 2c 20 49 20 6e 65 65 64 20 4d 6f 64 65 |rry, I need Mode| 00000410 20 22 2b c3 4d 44 32 3a e0 0d 01 54 15 eb 20 4d | "+.MD2:...T.. M| 00000420 44 3a 87 3a c8 91 20 36 34 30 2c 35 31 32 0d 01 |D:.:.. 640,512..| 00000430 68 04 0d 01 72 0d 52 3d 36 34 3a f2 61 73 73 0d |h...r.R=64:.ass.| 00000440 01 7c 04 0d 01 86 0a f3 20 4e 4f 42 4a 0d 01 90 |.|...... NOBJ...| 00000450 11 e3 20 4e 4f 3d 31 20 b8 20 4e 4f 42 4a 0d 01 |.. NO=1 . NOBJ..| 00000460 9a 12 20 f3 20 41 24 3a f2 6f 62 6a 28 41 24 29 |.. . A$:.obj(A$)| 00000470 0d 01 ae 0d 20 c8 97 20 ee 20 31 32 39 0d 01 b8 |.... .. . 129...| 00000480 10 20 58 3d 32 3a 59 3d 32 3a 45 3d 31 0d 01 c2 |. X=2:Y=2:E=1...| 00000490 06 20 f5 0d 01 cc 10 20 20 c8 97 20 44 58 2c 44 |. ..... .. DX,D| 000004a0 59 2c 54 0d 01 d6 2b 20 20 58 2b 3d 28 44 58 2f |Y,T...+ X+=(DX/| 000004b0 31 30 30 2d 58 29 2f 31 30 3a 59 2b 3d 28 44 59 |100-X)/10:Y+=(DY| 000004c0 2f 35 31 32 2a af 2f 32 2d 59 29 2f 31 30 0d 01 |/512*./2-Y)/10..| 000004d0 e0 10 20 20 5a 3d 32 35 36 2a 9b 28 59 29 0d 01 |.. Z=256*.(Y)..| 000004e0 ea 26 20 20 41 25 3d 5a 2a b5 28 58 29 3a 42 25 |.& A%=Z*.(X):B%| 000004f0 3d 2d 32 35 36 2a b5 28 59 29 3a 43 25 3d 5a 2a |=-256*.(Y):C%=Z*| 00000500 9b 28 58 29 0d 01 f4 17 20 20 c8 92 20 b8 20 41 |.(X).... .. . A| 00000510 25 2b 41 25 2c 2d 42 25 2d 42 25 0d 01 fe 24 20 |%+A%,-B%-B%...$ | 00000520 20 ef 20 31 39 2c 32 2c 32 35 2c 28 43 25 3e 30 | . 19,2,25,(C%>0| 00000530 29 2c 28 43 25 3e 30 29 2c 28 43 25 3e 30 29 0d |),(C%>0),(C%>0).| 00000540 02 08 0e 20 20 d6 20 41 46 46 3a c8 96 0d 02 12 |... . AFF:.....| 00000550 1e 20 20 c8 99 20 22 4f 53 5f 42 79 74 65 22 2c |. .. "OS_Byte",| 00000560 26 37 31 2c 45 3a 45 3d 33 2d 45 0d 02 1c 0b 20 |&71,E:E=3-E.... | 00000570 fd 20 54 3c 3e 30 0d 02 26 08 ed 20 4e 4f 0d 02 |. T<>0..&.. NO..| 00000580 30 04 0d 02 3a 08 eb 20 4d 44 0d 02 44 10 c8 99 |0...:.. MD..D...| 00000590 20 22 4f 53 5f 45 78 69 74 22 0d 02 4e 04 0d 02 | "OS_Exit"..N...| 000005a0 58 05 e0 0d 02 62 05 3a 0d 02 6c 0a dd 20 f2 61 |X....b.:..l.. .a| 000005b0 73 73 0d 02 76 04 0d 02 80 12 de 20 43 4f 44 25 |ss..v...... COD%| 000005c0 20 36 30 2a 31 30 32 34 0d 02 8a 04 0d 02 94 0a | 60*1024........| 000005d0 58 45 43 52 3d 30 0d 02 9e 11 e3 20 49 3d 30 20 |XECR=0..... I=0 | 000005e0 b8 20 32 20 88 20 32 0d 02 a8 0b 50 25 3d 43 4f |. 2 . 2....P%=CO| 000005f0 44 25 0d 02 b2 13 5b 20 20 20 20 20 20 20 20 4f |D%....[ O| 00000600 50 54 20 20 49 0d 02 bc 18 2e 46 43 4c 53 20 20 |PT I.....FCLS | 00000610 20 20 20 4c 44 52 20 52 30 2c 45 43 52 0d 02 c6 | LDR R0,ECR...| 00000620 2b 20 20 20 20 20 20 20 20 20 20 53 55 42 20 31 |+ SUB 1| 00000630 31 2c 52 30 2c 23 28 52 2b 31 35 29 20 80 20 28 |1,R0,#(R+15) . (| 00000640 31 30 32 33 2d 31 35 29 0d 02 d0 35 20 20 20 20 |1023-15)...5 | 00000650 20 20 20 20 20 20 4d 4f 56 20 52 33 2c 23 30 3a | MOV R3,#0:| 00000660 4d 4f 56 20 52 34 2c 23 30 3a 4d 4f 56 20 52 35 |MOV R4,#0:MOV R5| 00000670 2c 23 30 3a 4d 4f 56 20 52 36 2c 23 30 0d 02 da |,#0:MOV R6,#0...| 00000680 35 20 20 20 20 20 20 20 20 20 20 4d 4f 56 20 52 |5 MOV R| 00000690 37 2c 23 30 3a 4d 4f 56 20 52 38 2c 23 30 3a 4d |7,#0:MOV R8,#0:M| 000006a0 4f 56 20 52 39 2c 23 30 3a 4d 4f 56 20 31 30 2c |OV R9,#0:MOV 10,| 000006b0 23 30 0d 02 e4 19 20 20 20 20 20 20 20 20 20 20 |#0.... | 000006c0 4d 4f 56 20 52 31 2c 23 32 2a 52 0d 02 ee 2a 2e |MOV R1,#2*R...*.| 000006d0 59 43 4c 53 20 20 20 20 20 4d 4f 56 20 52 32 2c |YCLS MOV R2,| 000006e0 23 32 2a 28 28 52 2b 31 35 29 80 28 31 30 32 33 |#2*((R+15).(1023| 000006f0 2d 31 35 29 29 0d 02 f8 18 20 20 20 20 20 20 20 |-15)).... | 00000700 20 20 20 4d 4f 56 20 52 30 2c 52 31 31 0d 03 02 | MOV R0,R11...| 00000710 1f 2e 58 43 4c 53 20 20 20 20 20 53 54 4d 49 41 |..XCLS STMIA| 00000720 20 52 30 21 2c 7b 52 33 2d 31 30 7d 0d 03 0c 24 | R0!,{R3-10}...$| 00000730 20 20 20 20 20 20 20 20 20 53 55 42 53 20 52 32 | SUBS R2| 00000740 2c 52 32 2c 23 33 32 3a 42 4e 45 20 58 43 4c 53 |,R2,#32:BNE XCLS| 00000750 0d 03 16 1d 20 20 20 20 20 20 20 20 20 20 41 44 |.... AD| 00000760 44 20 31 31 2c 31 31 2c 23 58 45 43 52 0d 03 20 |D 11,11,#XECR.. | 00000770 23 20 20 20 20 20 20 20 20 20 53 55 42 53 20 52 |# SUBS R| 00000780 31 2c 52 31 2c 23 31 3a 42 4e 45 20 59 43 4c 53 |1,R1,#1:BNE YCLS| 00000790 0d 03 2a 0d 20 20 20 20 20 20 20 20 20 0d 03 34 |..*. ..4| 000007a0 17 20 20 20 20 20 20 20 20 20 4d 4f 56 20 50 43 |. MOV PC| 000007b0 2c 52 31 34 0d 03 3e 04 0d 03 48 38 2e 45 43 52 |,R14..>...H8.ECR| 000007c0 20 20 20 20 20 20 44 43 44 20 31 34 39 3a 44 43 | DCD 149:DC| 000007d0 44 20 31 34 39 3a 44 43 44 20 36 3a 44 43 44 20 |D 149:DCD 6:DCD | 000007e0 37 3a 44 43 44 20 31 34 39 3a 44 43 44 20 2d 31 |7:DCD 149:DCD -1| 000007f0 0d 03 52 15 2e 61 42 41 4c 20 20 20 20 20 44 43 |..R..aBAL DC| 00000800 44 20 42 41 4c 0d 03 5c 17 2e 61 43 53 54 42 4c |D BAL..\..aCSTBL| 00000810 20 20 20 44 43 44 20 43 53 54 42 4c 0d 03 66 18 | DCD CSTBL..f.| 00000820 2e 61 43 4f 4c 54 42 4c 20 20 44 43 44 20 43 4f |.aCOLTBL DCD CO| 00000830 4c 54 42 4c 0d 03 70 13 2e 52 45 54 31 34 20 20 |LTBL..p..RET14 | 00000840 20 20 44 43 44 20 30 0d 03 7a 04 0d 03 84 32 2e | DCD 0..z....2.| 00000850 41 52 4f 4e 44 20 20 20 20 44 43 44 20 26 30 45 |AROND DCD &0E| 00000860 34 41 32 43 36 38 20 20 20 20 20 20 20 3b 20 4e |4A2C68 ; N| 00000870 49 42 42 4c 45 20 50 41 54 54 45 52 4e 0d 03 8e |IBBLE PATTERN...| 00000880 36 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |6 | 00000890 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b | ;| 000008a0 20 e3 20 84 44 45 52 45 44 20 44 49 54 48 45 52 | . .DERED DITHER| 000008b0 49 4e 47 0d 03 98 04 0d 03 a2 1b 2e 41 46 46 20 |ING.........AFF | 000008c0 20 20 20 20 20 53 54 52 20 52 31 34 2c 52 45 54 | STR R14,RET| 000008d0 31 34 0d 03 ac 04 0d 03 b6 1b 20 20 20 20 20 20 |14........ | 000008e0 20 20 20 20 4c 44 52 20 52 31 34 2c 41 52 4f 4e | LDR R14,ARON| 000008f0 44 0d 03 c0 04 0d 03 ca 17 20 20 20 20 20 20 20 |D........ | 00000900 20 20 20 4d 4f 56 20 52 38 2c 52 30 0d 03 d4 17 | MOV R8,R0....| 00000910 20 20 20 20 20 20 20 20 20 20 4d 4f 56 20 52 39 | MOV R9| 00000920 2c 52 31 0d 03 de 39 20 20 20 20 20 20 20 20 20 |,R1...9 | 00000930 20 4d 4f 56 20 31 30 2c 52 32 20 20 20 20 20 20 | MOV 10,R2 | 00000940 20 20 20 20 20 3b 20 38 2c 39 2c 31 30 20 3d 20 | ; 8,9,10 = | 00000950 4c 49 47 48 54 20 53 4f 55 52 43 45 0d 03 e8 1c |LIGHT SOURCE....| 00000960 20 20 20 20 20 20 20 20 20 20 4c 44 52 20 52 36 | LDR R6| 00000970 2c 61 43 4f 4c 54 42 4c 0d 03 f2 30 20 20 20 20 |,aCOLTBL...0 | 00000980 20 20 20 20 20 20 4c 44 52 20 52 31 32 2c 45 43 | LDR R12,EC| 00000990 52 20 20 20 20 20 20 20 20 20 3b 20 52 31 32 20 |R ; R12 | 000009a0 20 20 20 3d 20 45 43 52 0d 03 fc 32 20 20 20 20 | = ECR...2 | 000009b0 20 20 20 20 20 20 4c 44 52 20 52 31 31 2c 61 42 | LDR R11,aB| 000009c0 41 4c 20 20 20 20 20 20 20 20 3b 20 52 31 31 20 |AL ; R11 | 000009d0 20 20 20 3d 20 dc 20 50 54 52 0d 04 06 33 20 20 | = . PTR...3 | 000009e0 20 20 20 20 20 20 20 20 4c 44 52 20 52 37 2c 61 | LDR R7,a| 000009f0 43 53 54 42 4c 20 20 20 20 20 20 20 3b 20 52 37 |CSTBL ; R7| 00000a00 20 20 20 20 20 3d 20 70 43 6f 73 5e 71 0d 04 10 | = pCos^q...| 00000a10 33 20 20 20 20 20 20 20 20 20 20 4d 4f 56 20 52 |3 MOV R| 00000a20 30 2c 23 52 2a 32 20 20 20 20 20 20 20 20 20 3b |0,#R*2 ;| 00000a30 20 52 30 20 20 20 20 20 3d 20 59 20 4c 4f 4f 50 | R0 = Y LOOP| 00000a40 0d 04 1a 33 2e 59 4c 4f 50 20 20 20 20 20 4c 44 |...3.YLOP LD| 00000a50 4d 49 41 20 52 31 31 21 2c 7b 52 31 2c 52 33 7d |MIA R11!,{R1,R3}| 00000a60 20 20 3b 20 52 31 20 20 20 20 20 3d 20 58 20 4c | ; R1 = X L| 00000a70 4f 4f 50 0d 04 24 1a 20 20 20 20 20 20 20 20 20 |OOP..$. | 00000a80 20 4d 55 4c 20 52 33 2c 52 39 2c 52 33 0d 04 2e | MUL R3,R9,R3...| 00000a90 1e 20 20 20 20 20 20 20 20 20 20 53 54 4d 46 44 |. STMFD| 00000aa0 20 52 31 33 21 2c 7b 52 31 32 7d 0d 04 38 1d 20 | R13!,{R12}..8. | 00000ab0 20 20 20 20 20 20 20 20 20 4d 4f 56 20 52 32 2c | MOV R2,| 00000ac0 52 31 2c 4c 53 4c 23 31 0d 04 42 1f 20 20 20 20 |R1,LSL#1..B. | 00000ad0 20 20 20 20 20 20 4d 4f 56 20 52 31 34 2c 52 31 | MOV R14,R1| 00000ae0 34 2c 52 4f 52 23 34 0d 04 4c 1f 20 20 20 20 20 |4,ROR#4..L. | 00000af0 20 20 20 20 20 4d 4f 56 20 52 35 2c 52 31 34 2c | MOV R5,R14,| 00000b00 52 4f 52 20 52 32 0d 04 56 22 20 20 20 20 20 20 |ROR R2..V" | 00000b10 20 20 20 20 53 55 42 20 52 31 32 2c 52 31 32 2c | SUB R12,R12,| 00000b20 52 31 2c 4c 53 52 23 31 0d 04 60 09 2e 58 4c 4f |R1,LSR#1..`..XLO| 00000b30 50 0d 04 6a 1d 20 20 20 20 20 20 20 20 20 20 4c |P..j. L| 00000b40 44 4d 49 41 20 52 31 31 21 2c 7b 52 32 7d 0d 04 |DMIA R11!,{R2}..| 00000b50 74 1e 20 20 20 20 20 20 20 20 20 20 4d 4f 56 20 |t. MOV | 00000b60 52 34 2c 52 32 2c 41 53 52 23 31 36 0d 04 7e 2f |R4,R2,ASR#16..~/| 00000b70 20 20 20 20 20 20 20 20 20 20 4d 4f 56 20 52 32 | MOV R2| 00000b80 2c 52 32 2c 4c 53 4c 23 31 36 3a 4d 4f 56 20 52 |,R2,LSL#16:MOV R| 00000b90 32 2c 52 32 2c 41 53 52 23 31 36 0d 04 88 1d 20 |2,R2,ASR#16.... | 00000ba0 20 20 20 20 20 20 20 20 20 4d 4c 41 20 52 32 2c | MLA R2,| 00000bb0 52 38 2c 52 32 2c 52 33 0d 04 92 34 20 20 20 20 |R8,R2,R3...4 | 00000bc0 20 20 20 20 20 20 4d 4c 41 20 52 32 2c 31 30 2c | MLA R2,10,| 00000bd0 52 34 2c 52 32 20 20 20 20 20 3b 20 4f 55 54 45 |R4,R2 ; OUTE| 00000be0 52 20 50 52 4f 44 2e 20 2d 3e 20 9b 0d 04 9c 23 |R PROD. -> ....#| 00000bf0 20 20 20 20 20 20 20 20 20 20 4c 44 52 42 20 52 | LDRB R| 00000c00 32 2c 5b 52 37 2c 52 32 2c 41 53 52 23 38 5d 0d |2,[R7,R2,ASR#8].| 00000c10 04 a6 32 20 20 20 20 20 20 20 20 20 20 41 44 44 |..2 ADD| 00000c20 20 52 34 2c 52 32 2c 52 35 2c 4c 53 52 23 32 38 | R4,R2,R5,LSR#28| 00000c30 3a 4d 4f 56 20 52 35 2c 52 35 2c 52 4f 52 23 32 |:MOV R5,R5,ROR#2| 00000c40 38 0d 04 b0 23 20 20 20 20 20 20 20 20 20 20 4c |8...# L| 00000c50 44 52 42 20 52 32 2c 5b 52 36 2c 52 34 2c 4c 53 |DRB R2,[R6,R4,LS| 00000c60 52 23 33 5d 0d 04 ba 1e 20 20 20 20 20 20 20 20 |R#3].... | 00000c70 20 20 53 54 52 42 20 52 32 2c 5b 52 31 32 5d 2c | STRB R2,[R12],| 00000c80 23 31 0d 04 c4 23 20 20 20 20 20 20 20 20 20 53 |#1...# S| 00000c90 55 42 53 20 52 31 2c 52 31 2c 23 31 3a 42 4e 45 |UBS R1,R1,#1:BNE| 00000ca0 20 58 4c 4f 50 0d 04 ce 0d 20 20 20 20 20 20 20 | XLOP.... | 00000cb0 20 20 0d 04 d8 1e 20 20 20 20 20 20 20 20 20 20 | .... | 00000cc0 4c 44 4d 46 44 20 52 31 33 21 2c 7b 52 31 32 7d |LDMFD R13!,{R12}| 00000cd0 0d 04 e2 1f 20 20 20 20 20 20 20 20 20 20 41 44 |.... AD| 00000ce0 44 20 52 31 32 2c 52 31 32 2c 23 58 45 43 52 0d |D R12,R12,#XECR.| 00000cf0 04 ec 19 20 20 20 20 20 20 20 20 20 20 82 20 52 |... . R| 00000d00 36 2c 52 36 2c 23 36 34 0d 04 f6 23 20 20 20 20 |6,R6,#64...# | 00000d10 20 20 20 20 20 53 55 42 53 20 52 30 2c 52 30 2c | SUBS R0,R0,| 00000d20 23 31 3a 42 4e 45 20 59 4c 4f 50 0d 05 00 0d 20 |#1:BNE YLOP.... | 00000d30 20 20 20 20 20 20 20 20 0d 05 0a 25 20 20 20 20 | ...% | 00000d40 20 20 20 20 20 20 4c 44 52 20 52 30 2c 45 43 52 | LDR R0,ECR| 00000d50 3a 4c 44 52 20 52 31 2c 45 43 52 2b 34 0d 05 14 |:LDR R1,ECR+4...| 00000d60 25 20 20 20 20 20 20 20 20 20 20 53 54 52 20 52 |% STR R| 00000d70 31 2c 45 43 52 3a 53 54 52 20 52 30 2c 45 43 52 |1,ECR:STR R0,ECR| 00000d80 2b 34 0d 05 1e 19 20 20 20 20 20 20 20 20 20 4c |+4.... L| 00000d90 44 52 20 50 43 2c 52 45 54 31 34 0d 05 28 0d 20 |DR PC,RET14..(. | 00000da0 20 20 20 20 20 20 20 20 0d 05 32 15 2e 61 52 45 | ..2..aRE| 00000db0 46 20 20 20 20 20 44 43 44 20 52 45 46 0d 05 3c |F DCD REF..<| 00000dc0 0d 20 20 20 20 20 20 20 20 20 0d 05 46 1a 2e 43 |. ..F..C| 00000dd0 45 52 43 20 20 20 20 20 3b 20 52 30 20 3d 20 40 |ERC ; R0 = @| 00000de0 20 53 54 4f 0d 05 50 1d 20 20 20 20 20 20 20 20 | STO..P. | 00000df0 20 20 3b 20 52 31 20 3d 20 52 61 64 69 75 73 2a | ; R1 = Radius*| 00000e00 32 0d 05 5a 20 20 20 20 20 20 20 20 20 20 20 3b |2..Z ;| 00000e10 20 52 32 20 3d 20 46 61 63 74 65 75 72 2a 32 35 | R2 = Facteur*25| 00000e20 36 0d 05 64 1d 20 20 20 20 20 20 20 20 20 20 3b |6..d. ;| 00000e30 20 52 33 20 3d 20 53 74 65 70 2a 32 35 36 0d 05 | R3 = Step*256..| 00000e40 6e 0e 20 20 20 20 20 20 20 20 20 20 0d 05 78 1c |n. ..x.| 00000e50 20 20 20 20 20 20 20 20 20 20 53 54 52 20 52 31 | STR R1| 00000e60 2c 5b 52 30 5d 2c 23 38 0d 05 82 0e 20 20 20 20 |,[R0],#8.... | 00000e70 20 20 20 20 20 20 0d 05 8c 1c 20 20 20 20 20 20 | .... | 00000e80 20 20 20 20 4d 4f 56 20 52 34 2c 23 52 3c 3c 32 | MOV R4,#R<<2| 00000e90 35 36 0d 05 96 31 20 20 20 20 20 20 20 20 20 20 |56...1 | 00000ea0 52 53 42 20 52 34 2c 52 34 2c 23 31 32 38 20 20 |RSB R4,R4,#128 | 00000eb0 20 20 20 20 3b 20 52 34 20 3d 20 50 4f 53 49 54 | ; R4 = POSIT| 00000ec0 49 4f 4e 0d 05 a0 33 20 20 20 20 20 20 20 20 20 |ION...3 | 00000ed0 20 4c 44 52 20 52 35 2c 61 52 45 46 20 20 20 20 | LDR R5,aREF | 00000ee0 20 20 20 20 20 3b 20 52 35 20 3d 20 52 45 46 20 | ; R5 = REF | 00000ef0 4d 49 44 44 4c 45 0d 05 aa 0e 20 20 20 20 20 20 |MIDDLE.... | 00000f00 20 20 20 20 0d 05 b4 1a 2e 43 45 52 43 4c 20 20 | .....CERCL | 00000f10 20 20 41 44 44 20 52 34 2c 52 34 2c 52 33 0d 05 | ADD R4,R4,R3..| 00000f20 be 1d 20 20 20 20 20 20 20 20 20 20 4d 4f 56 20 |.. MOV | 00000f30 52 39 2c 52 34 2c 41 53 52 23 38 0d 05 c8 22 20 |R9,R4,ASR#8..." | 00000f40 20 20 20 20 20 20 20 20 20 4c 44 52 20 52 39 2c | LDR R9,| 00000f50 5b 52 35 2c 52 39 2c 4c 53 4c 23 32 5d 0d 05 d2 |[R5,R9,LSL#2]...| 00000f60 2f 20 20 20 20 20 20 20 20 20 20 4d 4f 56 20 52 |/ MOV R| 00000f70 38 2c 52 39 2c 4c 53 4c 23 31 36 3a 4d 4f 56 20 |8,R9,LSL#16:MOV | 00000f80 52 38 2c 52 38 2c 41 53 52 23 31 36 0d 05 dc 1e |R8,R8,ASR#16....| 00000f90 20 20 20 20 20 20 20 20 20 20 4d 4f 56 20 52 39 | MOV R9| 00000fa0 2c 52 39 2c 41 53 52 23 31 36 0d 05 e6 2b 20 20 |,R9,ASR#16...+ | 00000fb0 20 20 20 20 20 20 20 20 4d 55 4c 20 52 36 2c 52 | MUL R6,R| 00000fc0 38 2c 52 32 3a 4d 4f 56 20 52 36 2c 52 36 2c 4c |8,R2:MOV R6,R6,L| 00000fd0 53 52 23 31 36 0d 05 f0 2b 20 20 20 20 20 20 20 |SR#16...+ | 00000fe0 20 20 20 4d 55 4c 20 52 37 2c 52 39 2c 52 32 3a | MUL R7,R9,R2:| 00000ff0 4d 4f 56 20 52 37 2c 52 37 2c 4c 53 52 23 31 36 |MOV R7,R7,LSR#16| 00001000 0d 05 fa 21 20 20 20 20 20 20 20 20 20 20 41 44 |...! AD| 00001010 44 20 52 36 2c 52 36 2c 52 37 2c 4c 53 4c 23 31 |D R6,R6,R7,LSL#1| 00001020 36 0d 06 04 1c 20 20 20 20 20 20 20 20 20 20 53 |6.... S| 00001030 54 52 20 52 36 2c 5b 52 30 5d 2c 23 34 0d 06 0e |TR R6,[R0],#4...| 00001040 24 20 20 20 20 20 20 20 20 20 53 55 42 53 20 52 |$ SUBS R| 00001050 31 2c 52 31 2c 23 31 3a 42 4e 45 20 43 45 52 43 |1,R1,#1:BNE CERC| 00001060 4c 0d 06 18 0e 20 20 20 20 20 20 20 20 20 20 0d |L.... .| 00001070 06 22 17 20 20 20 20 20 20 20 20 20 4d 4f 56 20 |.". MOV | 00001080 50 43 2c 52 31 34 0d 06 2c 05 5d 0d 06 36 25 20 |PC,R14..,.]..6% | 00001090 c8 99 20 22 4f 53 5f 52 65 61 64 56 64 75 56 61 |.. "OS_ReadVduVa| 000010a0 72 69 61 62 6c 65 73 22 2c 45 43 52 2c 45 43 52 |riables",ECR,ECR| 000010b0 0d 06 40 21 20 20 21 45 43 52 2b 3d 45 43 52 21 |..@! !ECR+=ECR!| 000010c0 38 2a 28 2e 35 2d 52 29 2b 45 43 52 21 31 32 2f |8*(.5-R)+ECR!12/| 000010d0 32 0d 06 4a 22 20 20 58 45 43 52 3d 45 43 52 21 |2..J" XECR=ECR!| 000010e0 38 3a 45 43 52 21 34 3d 21 45 43 52 2b 45 43 52 |8:ECR!4=!ECR+ECR| 000010f0 21 31 32 0d 06 54 15 20 52 45 46 3d 50 25 3a 50 |!12..T. REF=P%:P| 00001100 25 2b 3d 34 2a 52 2a 32 0d 06 5e 18 20 50 25 3d |%+=4*R*2..^. P%=| 00001110 28 50 25 2b 31 32 37 29 80 20 28 2d 31 32 38 29 |(P%+127). (-128)| 00001120 0d 06 68 19 20 43 4f 4c 54 42 4c 3d 50 25 3a 50 |..h. COLTBL=P%:P| 00001130 25 2b 3d 31 32 38 2b 34 38 0d 06 72 1f 20 43 53 |%+=128+48..r. CS| 00001140 54 42 4c 3d 50 25 2b 32 35 36 3a 50 25 2b 3d 32 |TBL=P%+256:P%+=2| 00001150 35 36 2b 32 35 37 2b 33 0d 06 7c 0b 20 42 41 4c |56+257+3..|. BAL| 00001160 3d 50 25 0d 06 86 07 ed 20 49 0d 06 90 04 0d 06 |=P%..... I......| 00001170 9a 10 43 3d 43 4f 4c 54 42 4c 3a 41 3d 31 0d 06 |..C=COLTBL:A=1..| 00001180 a4 0e e3 20 49 3d 30 20 b8 20 31 35 0d 06 ae 10 |... I=0 . 15....| 00001190 20 4e 3d 41 2d 28 41 3c 3e 31 35 29 0d 06 b8 11 | N=A-(A<>15)....| 000011a0 20 43 3f 28 32 2a 49 29 3d 41 2a 31 37 0d 06 c2 | C?(2*I)=A*17...| 000011b0 15 20 43 3f 28 32 2a 49 2b 31 29 3d 41 2a 31 36 |. C?(2*I+1)=A*16| 000011c0 2b 4e 0d 06 cc 14 20 43 3f 28 36 34 2b 32 2a 49 |+N.... C?(64+2*I| 000011d0 29 3d 41 2a 31 37 0d 06 d6 18 20 43 3f 28 36 34 |)=A*17.... C?(64| 000011e0 2b 32 2a 49 2b 31 29 3d 4e 2a 31 36 2b 41 0d 06 |+2*I+1)=N*16+A..| 000011f0 e0 08 20 41 3d 4e 0d 06 ea 07 ed 20 49 0d 06 f4 |.. A=N..... I...| 00001200 18 43 21 33 30 3d 2d 31 3a 43 21 28 36 34 2b 33 |.C!30=-1:C!(64+3| 00001210 30 29 3d 2d 31 0d 06 fe 0e 20 20 20 20 20 20 20 |0)=-1.... | 00001220 20 20 20 0d 07 08 20 e7 20 44 49 54 48 52 3d a3 | ... . DITHR=.| 00001230 20 8c 20 21 41 52 4f 4e 44 3d 26 38 38 38 38 38 | . !AROND=&88888| 00001240 38 38 38 0d 07 12 0e 20 20 20 20 20 20 20 20 20 |888.... | 00001250 20 0d 07 1c 11 52 32 3d 52 2a 52 3a 52 46 3d 52 | ....R2=R*R:RF=R| 00001260 45 46 0d 07 26 14 e3 20 49 3d 2d 52 2b 2e 35 20 |EF..&.. I=-R+.5 | 00001270 b8 20 52 2d 2e 35 0d 07 30 11 20 52 46 21 30 3d |. R-.5..0. RF!0=| 00001280 32 35 35 2a 49 2f 52 0d 07 3a 19 20 52 46 21 34 |255*I/R..:. RF!4| 00001290 3d 32 35 35 2a b6 28 31 2d 49 2a 49 2f 52 32 29 |=255*.(1-I*I/R2)| 000012a0 0d 07 44 18 20 52 46 3f 32 3d 52 46 3f 34 3a 52 |..D. RF?2=RF?4:R| 000012b0 46 3f 33 3d 52 46 3f 35 0d 07 4e 0a 20 52 46 2b |F?3=RF?5..N. RF+| 000012c0 3d 34 0d 07 58 07 ed 20 49 0d 07 62 0e 20 20 20 |=4..X.. I..b. | 000012d0 20 20 20 20 20 20 20 0d 07 6c 05 e1 0d 07 76 05 | ..l....v.| 000012e0 3a 0d 07 80 0e dd 20 f2 6f 62 6a 28 41 24 29 0d |:..... .obj(A$).| 000012f0 07 81 09 20 c8 97 20 87 0d 07 8a 11 20 41 3d 43 |... .. ..... A=C| 00001300 4f 4c 54 42 4c 2b 31 32 38 0d 07 94 2c 20 41 25 |OLTBL+128..., A%| 00001310 3d 8e 28 22 3c 52 65 76 6f 6c 75 74 69 66 24 44 |=.("<Revolutif$D| 00001320 69 72 3e 2e 22 2b 41 24 29 3a 4c 3d a2 23 41 25 |ir>."+A$):L=.#A%| 00001330 3a d9 23 41 25 0d 07 9e 29 20 ff 20 22 4c 4f 41 |:.#A%...) . "LOA| 00001340 44 20 3c 52 65 76 6f 6c 75 74 69 66 24 44 69 72 |D <Revolutif$Dir| 00001350 3e 2e 22 2b 41 24 2b 22 20 22 2b c3 7e 41 0d 07 |>."+A$+" "+.~A..| 00001360 a8 0e 20 e7 20 3f 41 3c 3e 30 20 8c 0d 07 b2 37 |.. . ?A<>0 ....7| 00001370 20 20 41 25 3d 42 41 4c 3a 3f 41 3d 30 20 20 20 | A%=BAL:?A=0 | 00001380 20 20 3a 20 f4 20 45 58 50 41 4e 44 20 50 55 52 | : . EXPAND PUR| 00001390 45 20 52 45 56 4f 4c 55 54 49 4f 4e 20 4f 42 4a |E REVOLUTION OBJ| 000013a0 45 43 54 0d 07 bc 11 20 20 e3 20 49 3d 31 20 b8 |ECT.... . I=1 .| 000013b0 20 31 32 38 0d 07 c6 29 20 20 20 42 25 3d 21 41 | 128...) B%=!A| 000013c0 25 3a 43 25 3d 41 25 21 38 3a 44 25 3d 41 25 21 |%:C%=A%!8:D%=A%!| 000013d0 31 32 3a 41 25 3d ba 28 43 45 52 43 29 0d 07 e4 |12:A%=.(CERC)...| 000013e0 09 20 20 ed 20 49 0d 07 ee 06 20 cd 0d 07 f8 0b |. . I.... .....| 000013f0 20 fb 20 31 35 2c 30 0d 08 02 13 20 e3 20 49 3d | . 15,0.... . I=| 00001400 32 20 b8 20 31 20 88 20 2d 31 0d 08 0c 1a 20 20 |2 . 1 . -1.... | 00001410 c8 99 20 22 4f 53 5f 42 79 74 65 22 2c 26 37 30 |.. "OS_Byte",&70| 00001420 2c 49 3a db 0d 08 16 18 20 20 f1 20 8a 34 30 2d |,I:..... . .40-| 00001430 a9 28 41 24 29 2f 32 2c 32 29 41 24 0d 08 20 2d |.(A$)/2,2)A$.. -| 00001440 20 20 f1 8a 32 35 2c 33 30 29 22 28 43 29 20 39 | ..25,30)"(C) 9| 00001450 34 20 41 72 6d 4f 72 69 63 20 66 6f 72 20 41 72 |4 ArmOric for Ar| 00001460 6d 27 53 20 54 65 63 68 22 0d 08 2a 08 20 ed 20 |m'S Tech"..*. . | 00001470 49 0d 08 34 21 20 e7 20 21 45 43 52 3e 45 43 52 |I..4! . !ECR>ECR| 00001480 21 34 20 8c 20 c8 94 20 45 43 52 21 34 2c 21 45 |!4 . .. ECR!4,!E| 00001490 43 52 0d 08 3e 0f 20 e3 20 49 3d 30 20 b8 20 31 |CR..>. . I=0 . 1| 000014a0 35 0d 08 48 19 20 20 fb 20 49 2c 3f 41 2c 41 3f |5..H. . I,?A,A?| 000014b0 31 2c 41 3f 32 3a 41 2b 3d 33 0d 08 52 08 20 ed |1,A?2:A+=3..R. .| 000014c0 20 49 0d 08 5c 05 e1 0d 08 66 04 0d 08 70 2f dc | I..\....f...p/.| 000014d0 20 36 2c 56 41 53 45 2c 4a 4f 59 53 54 49 43 4b | 6,VASE,JOYSTICK| 000014e0 2c 42 45 4c 4c 2c 54 55 42 45 2c 43 48 4f 43 4f |,BELL,TUBE,CHOCO| 000014f0 4c 41 54 45 2c 53 43 52 45 57 0d ff |LATE,SCREW..| 000014fc