Home » Archimedes archive » Acorn User » AU 1997-04 A.adf » Features1 » StarInfo/Wood/!Texture
StarInfo/Wood/!Texture
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 1997-04 A.adf » Features1 |
Filename: | StarInfo/Wood/!Texture |
Read OK: | ✔ |
File size: | 0E64 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM !Texture, (c) Keith T Wood, 1996 20 30ON ERROR: REPORT: PRINT " at line " ERL/10: END 40 50MODE9 60 70nib%=&400 80 90PROCinit 100PROCkick_code 110 120J%=0 130 140COLOUR 15 150 160REPEAT 170 TIME=0 180 FOR I%=1 TO 50 190 J%+=1 200 PROCktex( -J%/100, 800/(ABS(1300*SIN(J%/50+PI/4))-1350) ) 210 NEXT 220 PRINTTAB(34,0)STR$INT(5000/TIME)" FPS" 230UNTIL FALSE 240END 250 260DEFPROCkick_code 270DIM code% 10000 280FOR pass=0 TO 2 STEP 2 290 P%=code% 300 PROCmain_code 310NEXT 320ENDPROC 330 340DEFPROCinit 350DIM mem% 8 360!mem%=148: mem%!4=-1 370SYS "OS_ReadVduVariables", mem%, mem% 380SYS "OS_ReadModeVariable", -1, 6 TO ,, swid% 390scrn%=!mem% 400SYS "OS_RemoveCursors" 410FOR J%=0 TO 15 420 COLOUR J%, 17*J%, 17*J%, 17*J% 430NEXT 440ENDPROC 450 460DEFPROCktex( angle, scale ) 470LOCAL c, s 480c=COS(angle) 490s=SIN(angle) 500!startx=scale*7096*s 510!starty=scale*7096*c 520!hstepx=scale*200*c 530!hstepy=scale*200*s 540!vstepx=scale*100*s 550!vstepy=-scale*100*c 560!startx=!startx AND&7FFF 570!starty=!starty AND&7FFF 580!hstepx=!hstepx AND&7FFF 590!hstepy=!hstepy AND&7FFF 600!vstepx=!vstepx AND&7FFF 610!vstepy=!vstepy AND&7FFF 620!startx=!startx OR((!startx+(!hstepx>>1))<<17) 630!starty=!starty OR((!starty+(!hstepy>>1))<<17) 640!hstepx=!hstepx OR(!hstepx<<17) 650!hstepy=!hstepy OR(!hstepy<<17) 660!vstepx=!vstepx OR(!vstepx<<17) 670!vstepy=!vstepy OR(!vstepy<<17) 680WAIT: CALL ktex 690ENDPROC 700 710DEFPROCmain_code 720 731Cnt = 0: MskF = 1 740MagicX = 3: StpY = 4: StpX = 5 750RunY = 6: RunX = 7: Pix1 = 8 760VstpY = 8: Pix2 = 9: VstpX = 9 770Tmp1 =12: Tmp2 =13: Scrn =14 790 791[OPT pass 800 810 .tstack EQUD 0: EQUD 0 820 .counts EQUD (15*16-1) 830 .masksF EQUD &F 840 .magicx EQUD nib%OR(nib%<<17) 850 .hstepy EQUD 0 860 .hstepx EQUD 0 870 .starty EQUD 0 880 .startx EQUD 0 890 .vstepy EQUD 0 900 .vstepx EQUD 0 910 .screen EQUD scrn% 920 930 .ktex 940 ADR Tmp1, tstack 950 STMIA (Tmp1)!, {r13, r14} 960 LDMIA Tmp1, {Cnt, MskF, MagicX, StpY, StpX, RunX, RunY} 970 LDR Scrn, screen 980 BIC RunX, RunX, #&18000 990 BIC RunY, RunY, #&18000 1000 1010 .loopy 1020 ORR Cnt, Cnt, #(14)<<16 1030 1040 .loopx 1050 FNword_macro( Pix1 ) 1060 FNword_macro( Pix2 ) 1070 STMIA (Scrn)!, {Pix1, Pix2} 1080 SUBS Cnt, Cnt, #&10000 1090 BGT loopx 1100 SUB Scrn, Scrn, #15*8 1110 ADD Scrn, Scrn, #swid% 1120 ADR Tmp1, starty 1130 LDMIA Tmp1, {RunY, RunX, VstpY, VstpX} 1140 ADD RunY, RunY, VstpY 1150 ADD RunX, RunX, VstpX 1160 BIC RunX, RunX, #&18000 1170 BIC RunY, RunY, #&18000 1180 STMIA Tmp1, {RunY, RunX} 1190 ADD Cnt, Cnt, #&10000 1200 SUBS Cnt, Cnt, #1 1210 BGT loopy 1220 ADR Tmp1, tstack 1230 LDMIA Tmp1, {r13, PC} 1240] 1250ENDPROC 1260 1270DEFFNword_macro( Word ) 1280[OPT pass 1290 FNtexture_macro 1300 AND Word, MskF, Tmp2, LSR #11 1310 AND Tmp1, MskF, Tmp2, LSR #11+17 1320 ORR Word, Word, Tmp1, LSL #4 1330 FNtexture_macro 1340 AND Tmp1, MskF, Tmp2, LSR #11 1350 ORR Word, Word, Tmp1, LSL #8 1360 AND Tmp1, MskF, Tmp2, LSR #11+17 1370 ORR Word, Word, Tmp1, LSL #12 1380 BIC RunX, RunX, #&18000 1390 BIC RunY, RunY, #&18000 1400 FNtexture_macro 1410 AND Tmp1, MskF, Tmp2, LSR #11 1420 ORR Word, Word, Tmp1, LSL #16 1430 AND Tmp1, MskF, Tmp2, LSR #11+17 1440 ORR Word, Word, Tmp1, LSL #20 1450 FNtexture_macro 1460 AND Tmp1, MskF, Tmp2, LSR #11 1470 ORR Word, Word, Tmp1, LSL #24 1480 AND Tmp1, MskF, Tmp2, LSR #11+17 1490 ORR Word, Word, Tmp1, LSL #28 1500 BIC RunX, RunX, #&18000 1510 BIC RunY, RunY, #&18000 1520] 1530="" 1540 1550DEFFNtexture_macro 1560[OPT pass 1570 ADD RunX, RunX, StpX 1580 ADD RunY, RunY, StpY 1590 EOR Tmp2, MagicX, RunY 1600 SUB Tmp2, Tmp2, RunX 1610 EOR Tmp1, MagicX, RunX 1620 ADD Tmp1, Tmp1, RunY 1630 EOR Tmp2, Tmp2, Tmp1 1640] 1650=""
&� !Texture, (c) Keith T Wood, 1996 !� �: �: � " at line " �/10: � ( 2�9 < F nib%=&400 P Z �init d�kick_code n xJ%=0 � �� 15 � �� � �=0 � � I%=1 � 50 � J%+=1 �7 �ktex( -J%/100, 800/(�(1300*�(J%/50+�/4))-1350) ) � � � �34,0)è(5000/�)" FPS" �� � �� � ��kick_code � code% 10000 � pass=0 � 2 � 2 " P%=code% , �main_code 6� @� J T ��init ^� mem% 8 h!mem%=148: mem%!4=-1 r(ș "OS_ReadVduVariables", mem%, mem% |.ș "OS_ReadModeVariable", -1, 6 � ,, swid% �scrn%=!mem% �ș "OS_RemoveCursors" �� J%=0 � 15 � � J%, 17*J%, 17*J%, 17*J% �� �� � ���ktex( angle, scale ) � � c, s �c=�(angle) �s=�(angle) �!startx=scale*7096*s �!starty=scale*7096*c !hstepx=scale*200*c !hstepy=scale*200*s !vstepx=scale*100*s &!vstepy=-scale*100*c 0!startx=!startx �&7FFF :!starty=!starty �&7FFF D!hstepx=!hstepx �&7FFF N!hstepy=!hstepy �&7FFF X!vstepx=!vstepx �&7FFF b!vstepy=!vstepy �&7FFF l1!startx=!startx �((!startx+(!hstepx>>1))<<17) v1!starty=!starty �((!starty+(!hstepy>>1))<<17) �"!hstepx=!hstepx �(!hstepx<<17) �"!hstepy=!hstepy �(!hstepy<<17) �"!vstepx=!vstepx �(!vstepx<<17) �"!vstepy=!vstepy �(!vstepy<<17) �Ȗ: � ktex �� � ���main_code � �Cnt = 0: MskF = 1 �&MagicX = 3: StpY = 4: StpX = 5 �&RunY = 6: RunX = 7: Pix1 = 8 �&VstpY = 8: Pix2 = 9: VstpX = 9 &Tmp1 =12: Tmp2 =13: Scrn =14 [OPT pass * .tstack EQUD 0: EQUD 0 4 .counts EQUD (15*16-1) > .masksF EQUD &F H" .magicx EQUD nib%�(nib%<<17) R .hstepy EQUD 0 \ .hstepx EQUD 0 f .starty EQUD 0 p .startx EQUD 0 z .vstepy EQUD 0 � .vstepx EQUD 0 � .screen EQUD scrn% � � .ktex � ADR Tmp1, tstack �! STMIA (Tmp1)!, {r13, r14} �? LDMIA Tmp1, {Cnt, MskF, MagicX, StpY, StpX, RunX, RunY} � LDR Scrn, screen �! BIC RunX, RunX, #&18000 �! BIC RunY, RunY, #&18000 � � .loopy � �R Cnt, Cnt, #(14)<<16 .loopx �word_macro( Pix1 ) $ �word_macro( Pix2 ) .# STMIA (Scrn)!, {Pix1, Pix2} 8 SUBS Cnt, Cnt, #&10000 B BGT loopx L SUB Scrn, Scrn, #15*8 V ADD Scrn, Scrn, #swid% ` ADR Tmp1, starty j. LDMIA Tmp1, {RunY, RunX, VstpY, VstpX} t ADD RunY, RunY, VstpY ~ ADD RunX, RunX, VstpX �! BIC RunX, RunX, #&18000 �! BIC RunY, RunY, #&18000 � STMIA Tmp1, {RunY, RunX} � ADD Cnt, Cnt, #&10000 � SUBS Cnt, Cnt, #1 � BGT loopy � ADR Tmp1, tstack � LDMIA Tmp1, {r13, PC} �] �� � �ݤword_macro( Word ) [OPT pass �texture_macro % � Word, MskF, Tmp2, LSR #11 ( � Tmp1, MskF, Tmp2, LSR #11+17 (% �R Word, Word, Tmp1, LSL #4 2 �texture_macro <% � Tmp1, MskF, Tmp2, LSR #11 F% �R Word, Word, Tmp1, LSL #8 P( � Tmp1, MskF, Tmp2, LSR #11+17 Z& �R Word, Word, Tmp1, LSL #12 d! BIC RunX, RunX, #&18000 n! BIC RunY, RunY, #&18000 x �texture_macro �% � Tmp1, MskF, Tmp2, LSR #11 �& �R Word, Word, Tmp1, LSL #16 �( � Tmp1, MskF, Tmp2, LSR #11+17 �& �R Word, Word, Tmp1, LSL #20 � �texture_macro �% � Tmp1, MskF, Tmp2, LSR #11 �& �R Word, Word, Tmp1, LSL #24 �( � Tmp1, MskF, Tmp2, LSR #11+17 �& �R Word, Word, Tmp1, LSL #28 �! BIC RunX, RunX, #&18000 �! BIC RunY, RunY, #&18000 �] �="" ݤtexture_macro [OPT pass " ADD RunX, RunX, StpX , ADD RunY, RunY, StpY 6 � Tmp2, MagicX, RunY @ SUB Tmp2, Tmp2, RunX J � Tmp1, MagicX, RunX T ADD Tmp1, Tmp1, RunY ^ � Tmp2, Tmp2, Tmp1 h] r="" �
00000000 0d 00 0a 26 f4 20 21 54 65 78 74 75 72 65 2c 20 |...&. !Texture, | 00000010 28 63 29 20 4b 65 69 74 68 20 54 20 57 6f 6f 64 |(c) Keith T Wood| 00000020 2c 20 31 39 39 36 0d 00 14 04 0d 00 1e 21 ee 20 |, 1996.......!. | 00000030 85 3a 20 f6 3a 20 f1 20 22 20 61 74 20 6c 69 6e |.: .: . " at lin| 00000040 65 20 22 20 9e 2f 31 30 3a 20 e0 0d 00 28 04 0d |e " ./10: ...(..| 00000050 00 32 06 eb 39 0d 00 3c 04 0d 00 46 0d 6e 69 62 |.2..9..<...F.nib| 00000060 25 3d 26 34 30 30 0d 00 50 04 0d 00 5a 09 f2 69 |%=&400..P...Z..i| 00000070 6e 69 74 0d 00 64 0e f2 6b 69 63 6b 5f 63 6f 64 |nit..d..kick_cod| 00000080 65 0d 00 6e 04 0d 00 78 08 4a 25 3d 30 0d 00 82 |e..n...x.J%=0...| 00000090 04 0d 00 8c 08 fb 20 31 35 0d 00 96 04 0d 00 a0 |...... 15.......| 000000a0 05 f5 0d 00 aa 08 20 d1 3d 30 0d 00 b4 10 20 e3 |...... .=0.... .| 000000b0 20 49 25 3d 31 20 b8 20 35 30 0d 00 be 0b 20 20 | I%=1 . 50.... | 000000c0 4a 25 2b 3d 31 0d 00 c8 37 20 20 f2 6b 74 65 78 |J%+=1...7 .ktex| 000000d0 28 20 2d 4a 25 2f 31 30 30 2c 20 38 30 30 2f 28 |( -J%/100, 800/(| 000000e0 94 28 31 33 30 30 2a b5 28 4a 25 2f 35 30 2b af |.(1300*.(J%/50+.| 000000f0 2f 34 29 29 2d 31 33 35 30 29 20 29 0d 00 d2 06 |/4))-1350) )....| 00000100 20 ed 0d 00 dc 1c 20 f1 8a 33 34 2c 30 29 c3 a8 | ..... ..34,0)..| 00000110 28 35 30 30 30 2f 91 29 22 20 46 50 53 22 0d 00 |(5000/.)" FPS"..| 00000120 e6 07 fd 20 a3 0d 00 f0 05 e0 0d 00 fa 04 0d 01 |... ............| 00000130 04 0f dd f2 6b 69 63 6b 5f 63 6f 64 65 0d 01 0e |....kick_code...| 00000140 11 de 20 63 6f 64 65 25 20 31 30 30 30 30 0d 01 |.. code% 10000..| 00000150 18 14 e3 20 70 61 73 73 3d 30 20 b8 20 32 20 88 |... pass=0 . 2 .| 00000160 20 32 0d 01 22 0d 20 50 25 3d 63 6f 64 65 25 0d | 2..". P%=code%.| 00000170 01 2c 0f 20 f2 6d 61 69 6e 5f 63 6f 64 65 0d 01 |.,. .main_code..| 00000180 36 05 ed 0d 01 40 05 e1 0d 01 4a 04 0d 01 54 0a |6....@....J...T.| 00000190 dd f2 69 6e 69 74 0d 01 5e 0c de 20 6d 65 6d 25 |..init..^.. mem%| 000001a0 20 38 0d 01 68 18 21 6d 65 6d 25 3d 31 34 38 3a | 8..h.!mem%=148:| 000001b0 20 6d 65 6d 25 21 34 3d 2d 31 0d 01 72 28 c8 99 | mem%!4=-1..r(..| 000001c0 20 22 4f 53 5f 52 65 61 64 56 64 75 56 61 72 69 | "OS_ReadVduVari| 000001d0 61 62 6c 65 73 22 2c 20 6d 65 6d 25 2c 20 6d 65 |ables", mem%, me| 000001e0 6d 25 0d 01 7c 2e c8 99 20 22 4f 53 5f 52 65 61 |m%..|... "OS_Rea| 000001f0 64 4d 6f 64 65 56 61 72 69 61 62 6c 65 22 2c 20 |dModeVariable", | 00000200 2d 31 2c 20 36 20 b8 20 2c 2c 20 73 77 69 64 25 |-1, 6 . ,, swid%| 00000210 0d 01 86 0f 73 63 72 6e 25 3d 21 6d 65 6d 25 0d |....scrn%=!mem%.| 00000220 01 90 19 c8 99 20 22 4f 53 5f 52 65 6d 6f 76 65 |..... "OS_Remove| 00000230 43 75 72 73 6f 72 73 22 0d 01 9a 0f e3 20 4a 25 |Cursors"..... J%| 00000240 3d 30 20 b8 20 31 35 0d 01 a4 1e 20 fb 20 4a 25 |=0 . 15.... . J%| 00000250 2c 20 31 37 2a 4a 25 2c 20 31 37 2a 4a 25 2c 20 |, 17*J%, 17*J%, | 00000260 31 37 2a 4a 25 0d 01 ae 05 ed 0d 01 b8 05 e1 0d |17*J%...........| 00000270 01 c2 04 0d 01 cc 1a dd f2 6b 74 65 78 28 20 61 |.........ktex( a| 00000280 6e 67 6c 65 2c 20 73 63 61 6c 65 20 29 0d 01 d6 |ngle, scale )...| 00000290 0a ea 20 63 2c 20 73 0d 01 e0 0e 63 3d 9b 28 61 |.. c, s....c=.(a| 000002a0 6e 67 6c 65 29 0d 01 ea 0e 73 3d b5 28 61 6e 67 |ngle)....s=.(ang| 000002b0 6c 65 29 0d 01 f4 18 21 73 74 61 72 74 78 3d 73 |le)....!startx=s| 000002c0 63 61 6c 65 2a 37 30 39 36 2a 73 0d 01 fe 18 21 |cale*7096*s....!| 000002d0 73 74 61 72 74 79 3d 73 63 61 6c 65 2a 37 30 39 |starty=scale*709| 000002e0 36 2a 63 0d 02 08 17 21 68 73 74 65 70 78 3d 73 |6*c....!hstepx=s| 000002f0 63 61 6c 65 2a 32 30 30 2a 63 0d 02 12 17 21 68 |cale*200*c....!h| 00000300 73 74 65 70 79 3d 73 63 61 6c 65 2a 32 30 30 2a |stepy=scale*200*| 00000310 73 0d 02 1c 17 21 76 73 74 65 70 78 3d 73 63 61 |s....!vstepx=sca| 00000320 6c 65 2a 31 30 30 2a 73 0d 02 26 18 21 76 73 74 |le*100*s..&.!vst| 00000330 65 70 79 3d 2d 73 63 61 6c 65 2a 31 30 30 2a 63 |epy=-scale*100*c| 00000340 0d 02 30 1a 21 73 74 61 72 74 78 3d 21 73 74 61 |..0.!startx=!sta| 00000350 72 74 78 20 80 26 37 46 46 46 0d 02 3a 1a 21 73 |rtx .&7FFF..:.!s| 00000360 74 61 72 74 79 3d 21 73 74 61 72 74 79 20 80 26 |tarty=!starty .&| 00000370 37 46 46 46 0d 02 44 1a 21 68 73 74 65 70 78 3d |7FFF..D.!hstepx=| 00000380 21 68 73 74 65 70 78 20 80 26 37 46 46 46 0d 02 |!hstepx .&7FFF..| 00000390 4e 1a 21 68 73 74 65 70 79 3d 21 68 73 74 65 70 |N.!hstepy=!hstep| 000003a0 79 20 80 26 37 46 46 46 0d 02 58 1a 21 76 73 74 |y .&7FFF..X.!vst| 000003b0 65 70 78 3d 21 76 73 74 65 70 78 20 80 26 37 46 |epx=!vstepx .&7F| 000003c0 46 46 0d 02 62 1a 21 76 73 74 65 70 79 3d 21 76 |FF..b.!vstepy=!v| 000003d0 73 74 65 70 79 20 80 26 37 46 46 46 0d 02 6c 31 |stepy .&7FFF..l1| 000003e0 21 73 74 61 72 74 78 3d 21 73 74 61 72 74 78 20 |!startx=!startx | 000003f0 84 28 28 21 73 74 61 72 74 78 2b 28 21 68 73 74 |.((!startx+(!hst| 00000400 65 70 78 3e 3e 31 29 29 3c 3c 31 37 29 0d 02 76 |epx>>1))<<17)..v| 00000410 31 21 73 74 61 72 74 79 3d 21 73 74 61 72 74 79 |1!starty=!starty| 00000420 20 84 28 28 21 73 74 61 72 74 79 2b 28 21 68 73 | .((!starty+(!hs| 00000430 74 65 70 79 3e 3e 31 29 29 3c 3c 31 37 29 0d 02 |tepy>>1))<<17)..| 00000440 80 22 21 68 73 74 65 70 78 3d 21 68 73 74 65 70 |."!hstepx=!hstep| 00000450 78 20 84 28 21 68 73 74 65 70 78 3c 3c 31 37 29 |x .(!hstepx<<17)| 00000460 0d 02 8a 22 21 68 73 74 65 70 79 3d 21 68 73 74 |..."!hstepy=!hst| 00000470 65 70 79 20 84 28 21 68 73 74 65 70 79 3c 3c 31 |epy .(!hstepy<<1| 00000480 37 29 0d 02 94 22 21 76 73 74 65 70 78 3d 21 76 |7)..."!vstepx=!v| 00000490 73 74 65 70 78 20 84 28 21 76 73 74 65 70 78 3c |stepx .(!vstepx<| 000004a0 3c 31 37 29 0d 02 9e 22 21 76 73 74 65 70 79 3d |<17)..."!vstepy=| 000004b0 21 76 73 74 65 70 79 20 84 28 21 76 73 74 65 70 |!vstepy .(!vstep| 000004c0 79 3c 3c 31 37 29 0d 02 a8 0e c8 96 3a 20 d6 20 |y<<17)......: . | 000004d0 6b 74 65 78 0d 02 b2 05 e1 0d 02 bc 04 0d 02 c6 |ktex............| 000004e0 0f dd f2 6d 61 69 6e 5f 63 6f 64 65 0d 02 d0 04 |...main_code....| 000004f0 0d 02 db 18 43 6e 74 20 20 20 20 3d 20 30 3a 20 |....Cnt = 0: | 00000500 4d 73 6b 46 20 3d 20 31 0d 02 e4 26 4d 61 67 69 |MskF = 1...&Magi| 00000510 63 58 20 3d 20 33 3a 20 53 74 70 59 20 20 20 3d |cX = 3: StpY =| 00000520 20 34 3a 20 53 74 70 58 20 20 20 3d 20 35 0d 02 | 4: StpX = 5..| 00000530 ee 26 52 75 6e 59 20 20 20 3d 20 36 3a 20 52 75 |.&RunY = 6: Ru| 00000540 6e 58 20 20 20 3d 20 37 3a 20 50 69 78 31 20 20 |nX = 7: Pix1 | 00000550 20 3d 20 38 0d 02 f8 26 56 73 74 70 59 20 20 3d | = 8...&VstpY =| 00000560 20 38 3a 20 50 69 78 32 20 20 20 3d 20 39 3a 20 | 8: Pix2 = 9: | 00000570 56 73 74 70 58 20 20 3d 20 39 0d 03 02 26 54 6d |VstpX = 9...&Tm| 00000580 70 31 20 20 20 3d 31 32 3a 20 54 6d 70 32 20 20 |p1 =12: Tmp2 | 00000590 20 3d 31 33 3a 20 53 63 72 6e 20 20 20 3d 31 34 | =13: Scrn =14| 000005a0 0d 03 16 04 0d 03 17 12 5b 4f 50 54 20 20 20 20 |........[OPT | 000005b0 20 20 70 61 73 73 0d 03 20 05 20 0d 03 2a 1c 20 | pass.. . ..*. | 000005c0 2e 74 73 74 61 63 6b 20 20 45 51 55 44 20 30 3a |.tstack EQUD 0:| 000005d0 20 45 51 55 44 20 30 0d 03 34 1c 20 2e 63 6f 75 | EQUD 0..4. .cou| 000005e0 6e 74 73 20 20 45 51 55 44 20 28 31 35 2a 31 36 |nts EQUD (15*16| 000005f0 2d 31 29 0d 03 3e 15 20 2e 6d 61 73 6b 73 46 20 |-1)..>. .masksF | 00000600 20 45 51 55 44 20 26 46 0d 03 48 22 20 2e 6d 61 | EQUD &F..H" .ma| 00000610 67 69 63 78 20 20 45 51 55 44 20 6e 69 62 25 84 |gicx EQUD nib%.| 00000620 28 6e 69 62 25 3c 3c 31 37 29 0d 03 52 14 20 2e |(nib%<<17)..R. .| 00000630 68 73 74 65 70 79 20 20 45 51 55 44 20 30 0d 03 |hstepy EQUD 0..| 00000640 5c 14 20 2e 68 73 74 65 70 78 20 20 45 51 55 44 |\. .hstepx EQUD| 00000650 20 30 0d 03 66 14 20 2e 73 74 61 72 74 79 20 20 | 0..f. .starty | 00000660 45 51 55 44 20 30 0d 03 70 14 20 2e 73 74 61 72 |EQUD 0..p. .star| 00000670 74 78 20 20 45 51 55 44 20 30 0d 03 7a 14 20 2e |tx EQUD 0..z. .| 00000680 76 73 74 65 70 79 20 20 45 51 55 44 20 30 0d 03 |vstepy EQUD 0..| 00000690 84 14 20 2e 76 73 74 65 70 78 20 20 45 51 55 44 |.. .vstepx EQUD| 000006a0 20 30 0d 03 8e 18 20 2e 73 63 72 65 65 6e 20 20 | 0.... .screen | 000006b0 45 51 55 44 20 73 63 72 6e 25 0d 03 98 05 20 0d |EQUD scrn%.... .| 000006c0 03 a2 0a 20 2e 6b 74 65 78 0d 03 ac 1a 20 41 44 |... .ktex.... AD| 000006d0 52 20 20 20 20 20 20 54 6d 70 31 2c 20 74 73 74 |R Tmp1, tst| 000006e0 61 63 6b 0d 03 b6 21 20 53 54 4d 49 41 20 20 20 |ack...! STMIA | 000006f0 20 28 54 6d 70 31 29 21 2c 20 7b 72 31 33 2c 20 | (Tmp1)!, {r13, | 00000700 72 31 34 7d 0d 03 c0 3f 20 4c 44 4d 49 41 20 20 |r14}...? LDMIA | 00000710 20 20 54 6d 70 31 2c 20 7b 43 6e 74 2c 20 4d 73 | Tmp1, {Cnt, Ms| 00000720 6b 46 2c 20 4d 61 67 69 63 58 2c 20 53 74 70 59 |kF, MagicX, StpY| 00000730 2c 20 53 74 70 58 2c 20 52 75 6e 58 2c 20 52 75 |, StpX, RunX, Ru| 00000740 6e 59 7d 0d 03 ca 1a 20 4c 44 52 20 20 20 20 20 |nY}.... LDR | 00000750 20 53 63 72 6e 2c 20 73 63 72 65 65 6e 0d 03 d4 | Scrn, screen...| 00000760 21 20 42 49 43 20 20 20 20 20 20 52 75 6e 58 2c |! BIC RunX,| 00000770 20 52 75 6e 58 2c 20 23 26 31 38 30 30 30 0d 03 | RunX, #&18000..| 00000780 de 21 20 42 49 43 20 20 20 20 20 20 52 75 6e 59 |.! BIC RunY| 00000790 2c 20 52 75 6e 59 2c 20 23 26 31 38 30 30 30 0d |, RunY, #&18000.| 000007a0 03 e8 04 0d 03 f2 0b 20 2e 6c 6f 6f 70 79 0d 03 |....... .loopy..| 000007b0 fc 20 20 84 52 20 20 20 20 20 20 43 6e 74 2c 20 |. .R Cnt, | 000007c0 43 6e 74 2c 20 23 28 31 34 29 3c 3c 31 36 0d 04 |Cnt, #(14)<<16..| 000007d0 06 05 20 0d 04 10 0b 20 2e 6c 6f 6f 70 78 0d 04 |.. .... .loopx..| 000007e0 1a 18 20 a4 77 6f 72 64 5f 6d 61 63 72 6f 28 20 |.. .word_macro( | 000007f0 50 69 78 31 20 29 0d 04 24 18 20 a4 77 6f 72 64 |Pix1 )..$. .word| 00000800 5f 6d 61 63 72 6f 28 20 50 69 78 32 20 29 0d 04 |_macro( Pix2 )..| 00000810 2e 23 20 53 54 4d 49 41 20 20 20 20 28 53 63 72 |.# STMIA (Scr| 00000820 6e 29 21 2c 20 7b 50 69 78 31 2c 20 50 69 78 32 |n)!, {Pix1, Pix2| 00000830 7d 0d 04 38 1f 20 53 55 42 53 20 20 20 20 20 43 |}..8. SUBS C| 00000840 6e 74 2c 20 43 6e 74 2c 20 23 26 31 30 30 30 30 |nt, Cnt, #&10000| 00000850 0d 04 42 13 20 42 47 54 20 20 20 20 20 20 6c 6f |..B. BGT lo| 00000860 6f 70 78 0d 04 4c 1f 20 53 55 42 20 20 20 20 20 |opx..L. SUB | 00000870 20 53 63 72 6e 2c 20 53 63 72 6e 2c 20 23 31 35 | Scrn, Scrn, #15| 00000880 2a 38 0d 04 56 20 20 41 44 44 20 20 20 20 20 20 |*8..V ADD | 00000890 53 63 72 6e 2c 20 53 63 72 6e 2c 20 23 73 77 69 |Scrn, Scrn, #swi| 000008a0 64 25 0d 04 60 1a 20 41 44 52 20 20 20 20 20 20 |d%..`. ADR | 000008b0 54 6d 70 31 2c 20 73 74 61 72 74 79 0d 04 6a 2e |Tmp1, starty..j.| 000008c0 20 4c 44 4d 49 41 20 20 20 20 54 6d 70 31 2c 20 | LDMIA Tmp1, | 000008d0 7b 52 75 6e 59 2c 20 52 75 6e 58 2c 20 56 73 74 |{RunY, RunX, Vst| 000008e0 70 59 2c 20 56 73 74 70 58 7d 0d 04 74 1f 20 41 |pY, VstpX}..t. A| 000008f0 44 44 20 20 20 20 20 20 52 75 6e 59 2c 20 52 75 |DD RunY, Ru| 00000900 6e 59 2c 20 56 73 74 70 59 0d 04 7e 1f 20 41 44 |nY, VstpY..~. AD| 00000910 44 20 20 20 20 20 20 52 75 6e 58 2c 20 52 75 6e |D RunX, Run| 00000920 58 2c 20 56 73 74 70 58 0d 04 88 21 20 42 49 43 |X, VstpX...! BIC| 00000930 20 20 20 20 20 20 52 75 6e 58 2c 20 52 75 6e 58 | RunX, RunX| 00000940 2c 20 23 26 31 38 30 30 30 0d 04 92 21 20 42 49 |, #&18000...! BI| 00000950 43 20 20 20 20 20 20 52 75 6e 59 2c 20 52 75 6e |C RunY, Run| 00000960 59 2c 20 23 26 31 38 30 30 30 0d 04 9c 20 20 53 |Y, #&18000... S| 00000970 54 4d 49 41 20 20 20 20 54 6d 70 31 2c 20 7b 52 |TMIA Tmp1, {R| 00000980 75 6e 59 2c 20 52 75 6e 58 7d 0d 04 a6 1f 20 41 |unY, RunX}.... A| 00000990 44 44 20 20 20 20 20 20 43 6e 74 2c 20 43 6e 74 |DD Cnt, Cnt| 000009a0 2c 20 23 26 31 30 30 30 30 0d 04 b0 1a 20 53 55 |, #&10000.... SU| 000009b0 42 53 20 20 20 20 20 43 6e 74 2c 20 43 6e 74 2c |BS Cnt, Cnt,| 000009c0 20 23 31 0d 04 ba 13 20 42 47 54 20 20 20 20 20 | #1.... BGT | 000009d0 20 6c 6f 6f 70 79 0d 04 c4 1a 20 41 44 52 20 20 | loopy.... ADR | 000009e0 20 20 20 20 54 6d 70 31 2c 20 74 73 74 61 63 6b | Tmp1, tstack| 000009f0 0d 04 ce 1d 20 4c 44 4d 49 41 20 20 20 20 54 6d |.... LDMIA Tm| 00000a00 70 31 2c 20 7b 72 31 33 2c 20 50 43 7d 0d 04 d8 |p1, {r13, PC}...| 00000a10 05 5d 0d 04 e2 05 e1 0d 04 ec 04 0d 04 f6 18 dd |.]..............| 00000a20 a4 77 6f 72 64 5f 6d 61 63 72 6f 28 20 57 6f 72 |.word_macro( Wor| 00000a30 64 20 29 0d 05 00 12 5b 4f 50 54 20 20 20 20 20 |d )....[OPT | 00000a40 20 70 61 73 73 0d 05 0a 13 20 a4 74 65 78 74 75 | pass.... .textu| 00000a50 72 65 5f 6d 61 63 72 6f 0d 05 14 25 20 80 20 20 |re_macro...% . | 00000a60 20 20 20 20 57 6f 72 64 2c 20 4d 73 6b 46 2c 20 | Word, MskF, | 00000a70 54 6d 70 32 2c 20 4c 53 52 20 23 31 31 0d 05 1e |Tmp2, LSR #11...| 00000a80 28 20 80 20 20 20 20 20 20 54 6d 70 31 2c 20 4d |( . Tmp1, M| 00000a90 73 6b 46 2c 20 54 6d 70 32 2c 20 4c 53 52 20 23 |skF, Tmp2, LSR #| 00000aa0 31 31 2b 31 37 0d 05 28 25 20 84 52 20 20 20 20 |11+17..(% .R | 00000ab0 20 20 57 6f 72 64 2c 20 57 6f 72 64 2c 20 54 6d | Word, Word, Tm| 00000ac0 70 31 2c 20 4c 53 4c 20 23 34 0d 05 32 13 20 a4 |p1, LSL #4..2. .| 00000ad0 74 65 78 74 75 72 65 5f 6d 61 63 72 6f 0d 05 3c |texture_macro..<| 00000ae0 25 20 80 20 20 20 20 20 20 54 6d 70 31 2c 20 4d |% . Tmp1, M| 00000af0 73 6b 46 2c 20 54 6d 70 32 2c 20 4c 53 52 20 23 |skF, Tmp2, LSR #| 00000b00 31 31 0d 05 46 25 20 84 52 20 20 20 20 20 20 57 |11..F% .R W| 00000b10 6f 72 64 2c 20 57 6f 72 64 2c 20 54 6d 70 31 2c |ord, Word, Tmp1,| 00000b20 20 4c 53 4c 20 23 38 0d 05 50 28 20 80 20 20 20 | LSL #8..P( . | 00000b30 20 20 20 54 6d 70 31 2c 20 4d 73 6b 46 2c 20 54 | Tmp1, MskF, T| 00000b40 6d 70 32 2c 20 4c 53 52 20 23 31 31 2b 31 37 0d |mp2, LSR #11+17.| 00000b50 05 5a 26 20 84 52 20 20 20 20 20 20 57 6f 72 64 |.Z& .R Word| 00000b60 2c 20 57 6f 72 64 2c 20 54 6d 70 31 2c 20 4c 53 |, Word, Tmp1, LS| 00000b70 4c 20 23 31 32 0d 05 64 21 20 42 49 43 20 20 20 |L #12..d! BIC | 00000b80 20 20 20 52 75 6e 58 2c 20 52 75 6e 58 2c 20 23 | RunX, RunX, #| 00000b90 26 31 38 30 30 30 0d 05 6e 21 20 42 49 43 20 20 |&18000..n! BIC | 00000ba0 20 20 20 20 52 75 6e 59 2c 20 52 75 6e 59 2c 20 | RunY, RunY, | 00000bb0 23 26 31 38 30 30 30 0d 05 78 13 20 a4 74 65 78 |#&18000..x. .tex| 00000bc0 74 75 72 65 5f 6d 61 63 72 6f 0d 05 82 25 20 80 |ture_macro...% .| 00000bd0 20 20 20 20 20 20 54 6d 70 31 2c 20 4d 73 6b 46 | Tmp1, MskF| 00000be0 2c 20 54 6d 70 32 2c 20 4c 53 52 20 23 31 31 0d |, Tmp2, LSR #11.| 00000bf0 05 8c 26 20 84 52 20 20 20 20 20 20 57 6f 72 64 |..& .R Word| 00000c00 2c 20 57 6f 72 64 2c 20 54 6d 70 31 2c 20 4c 53 |, Word, Tmp1, LS| 00000c10 4c 20 23 31 36 0d 05 96 28 20 80 20 20 20 20 20 |L #16...( . | 00000c20 20 54 6d 70 31 2c 20 4d 73 6b 46 2c 20 54 6d 70 | Tmp1, MskF, Tmp| 00000c30 32 2c 20 4c 53 52 20 23 31 31 2b 31 37 0d 05 a0 |2, LSR #11+17...| 00000c40 26 20 84 52 20 20 20 20 20 20 57 6f 72 64 2c 20 |& .R Word, | 00000c50 57 6f 72 64 2c 20 54 6d 70 31 2c 20 4c 53 4c 20 |Word, Tmp1, LSL | 00000c60 23 32 30 0d 05 aa 13 20 a4 74 65 78 74 75 72 65 |#20.... .texture| 00000c70 5f 6d 61 63 72 6f 0d 05 b4 25 20 80 20 20 20 20 |_macro...% . | 00000c80 20 20 54 6d 70 31 2c 20 4d 73 6b 46 2c 20 54 6d | Tmp1, MskF, Tm| 00000c90 70 32 2c 20 4c 53 52 20 23 31 31 0d 05 be 26 20 |p2, LSR #11...& | 00000ca0 84 52 20 20 20 20 20 20 57 6f 72 64 2c 20 57 6f |.R Word, Wo| 00000cb0 72 64 2c 20 54 6d 70 31 2c 20 4c 53 4c 20 23 32 |rd, Tmp1, LSL #2| 00000cc0 34 0d 05 c8 28 20 80 20 20 20 20 20 20 54 6d 70 |4...( . Tmp| 00000cd0 31 2c 20 4d 73 6b 46 2c 20 54 6d 70 32 2c 20 4c |1, MskF, Tmp2, L| 00000ce0 53 52 20 23 31 31 2b 31 37 0d 05 d2 26 20 84 52 |SR #11+17...& .R| 00000cf0 20 20 20 20 20 20 57 6f 72 64 2c 20 57 6f 72 64 | Word, Word| 00000d00 2c 20 54 6d 70 31 2c 20 4c 53 4c 20 23 32 38 0d |, Tmp1, LSL #28.| 00000d10 05 dc 21 20 42 49 43 20 20 20 20 20 20 52 75 6e |..! BIC Run| 00000d20 58 2c 20 52 75 6e 58 2c 20 23 26 31 38 30 30 30 |X, RunX, #&18000| 00000d30 0d 05 e6 21 20 42 49 43 20 20 20 20 20 20 52 75 |...! BIC Ru| 00000d40 6e 59 2c 20 52 75 6e 59 2c 20 23 26 31 38 30 30 |nY, RunY, #&1800| 00000d50 30 0d 05 f0 05 5d 0d 05 fa 07 3d 22 22 0d 06 04 |0....]....=""...| 00000d60 04 0d 06 0e 13 dd a4 74 65 78 74 75 72 65 5f 6d |.......texture_m| 00000d70 61 63 72 6f 0d 06 18 12 5b 4f 50 54 20 20 20 20 |acro....[OPT | 00000d80 20 20 70 61 73 73 0d 06 22 1e 20 41 44 44 20 20 | pass..". ADD | 00000d90 20 20 20 20 52 75 6e 58 2c 20 52 75 6e 58 2c 20 | RunX, RunX, | 00000da0 53 74 70 58 0d 06 2c 1e 20 41 44 44 20 20 20 20 |StpX..,. ADD | 00000db0 20 20 52 75 6e 59 2c 20 52 75 6e 59 2c 20 53 74 | RunY, RunY, St| 00000dc0 70 59 0d 06 36 1e 20 82 20 20 20 20 20 20 54 6d |pY..6. . Tm| 00000dd0 70 32 2c 20 4d 61 67 69 63 58 2c 20 52 75 6e 59 |p2, MagicX, RunY| 00000de0 0d 06 40 1e 20 53 55 42 20 20 20 20 20 20 54 6d |..@. SUB Tm| 00000df0 70 32 2c 20 54 6d 70 32 2c 20 52 75 6e 58 0d 06 |p2, Tmp2, RunX..| 00000e00 4a 1e 20 82 20 20 20 20 20 20 54 6d 70 31 2c 20 |J. . Tmp1, | 00000e10 4d 61 67 69 63 58 2c 20 52 75 6e 58 0d 06 54 1e |MagicX, RunX..T.| 00000e20 20 41 44 44 20 20 20 20 20 20 54 6d 70 31 2c 20 | ADD Tmp1, | 00000e30 54 6d 70 31 2c 20 52 75 6e 59 0d 06 5e 1c 20 82 |Tmp1, RunY..^. .| 00000e40 20 20 20 20 20 20 54 6d 70 32 2c 20 54 6d 70 32 | Tmp2, Tmp2| 00000e50 2c 20 54 6d 70 31 0d 06 68 05 5d 0d 06 72 07 3d |, Tmp1..h.]..r.=| 00000e60 22 22 0d ff |""..| 00000e64