Home » Archimedes archive » Acorn User » AU 1997-10 A.adf » Regulars » StarInfo/Madams/shade/shade
StarInfo/Madams/shade/shade
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-10 A.adf » Regulars |
| Filename: | StarInfo/Madams/shade/shade |
| Read OK: | ✔ |
| File size: | 0A55 bytes |
| Load address: | 0000 |
| Exec address: | 0000 |
File contents
10MODE 12
20MODE 9
30ONERROR MODE 0:REPORT:PRINT ERL:END
40OFF
50size%=7
60s%=2^size%
70d%=s% DIV 2
80
90
100DIM normal% (s%+1)*(s%+1)*4
110DIM prog% 8192
120DIM q% 8
130
140!q%=148
150q%!4=-1
160SYS "OS_ReadVduVariables",q%,q%
170
180OSCLI "Load 3ddata "+STR$~(normal%)
190
200
210mx=0
220my=1
230mz=2
240y=3
250data=4
260normal=5
270adr=6
280col=7
290norm=8
300screen=9
310pos=10
320x=11
330
340FOR pass%=0 TO 2 STEP 2
350P%=prog%
360[OPT pass%
370
380.screenat EQUD !q%
390.normalat EQUD normal%
400.mxat EQUD 0
410.myat EQUD 0
420.mzat EQUD 0
430
440 STMFD R13!,{R14}
450
460 LDR screen,screenat
470 LDR adr,normalat
480
490 MOV y,#1
500.yloop
510 MOV x,#1
520.xloop
530 ADD pos,x,y,LSL#size%
540 LDR normal,[adr,pos,LSL#2]
550 MOV data,normal,LSR#24
560 CMP data,#0
570 MOVEQ col,#0
580BEQ skipplot1
590
600 AND norm,normal,#255
610 SUB norm,norm,#128
620 MUL norm,mx,norm
630
640 AND col,normal,#255<<8
650 SUB col,col,#128<<8
660 MOV col,col,ASR#8
670 MLA norm,my,col,norm
680
690 AND col,normal,#255<<16
700 SUB col,col,#128<<16
710 MOV col,col,ASR#16
720 MLA norm,mz,col,norm
730
740 MOV col,norm,ASR#11
750 CMP col,#1
760 MOVLT col,#1
770
780.skipplot1
790 ADD pos,pos,#1
800 LDR normal,[adr,pos,LSL#2]
810 MOV data,normal,LSR#24
820 CMP data,#0
830BEQ skipplot2
840
850 AND norm,normal,#255
860 SUB norm,norm,#128
870 MUL norm,mx,norm
880
890 AND pos,normal,#255<<8
900 SUB pos,pos,#128<<8
910 MOV pos,pos,ASR#8
920 MLA norm,my,pos,norm
930
940 AND pos,normal,#255<<16
950 SUB pos,pos,#128<<16
960 MOV pos,pos,ASR#16
970 MLA norm,mz,pos,norm
980
990 MOV norm,norm,ASR#11
1000 CMP norm,#1
1010 MOVLT norm,#1
1020 ADD col,col,norm,LSL#4
1030.skipplot2
1040 ADD pos,y,y,LSL#2
1050 MOV data,x,ASR#1
1060 ADD pos,data,pos,LSL#5
1070 STRB col,[screen,pos]
1080 ADD x,x,#2
1090 CMP x,#s%
1100BLT xloop
1110 ADD y,y,#1
1120 CMP y,#s%
1130BLT yloop
1140
1150 LDMFD R13!,{PC}
1160]
1170NEXT
1180
1190
1200rxp=RND(800)/3000
1210ryp=RND(1200)/3000
1220rx=0
1230ry=0
1240rxx=0
1250ryy=0
1260
1270bank%=1
1280add%=(((127-d%)*160+80-(d% DIV 2))OR 3)-3
1290a%=0
1300FOR r%=0 TO 48 STEP 4
1310a%+=1
1320rx=rx+rxp
1330ry=ry+ryp
1340rxx+=(2+RND(1))/9
1350ryy+=(1+RND(1))/9
1360x%=rxx*32
1370y%=ryy*32
1380A%=COSRADx%*COSRADy%*255
1390B%=SINRADx%*COSRADy%*255
1400C%=SINRADy%*255
1410!screenat=(!q%+add%)+((bank%-1)*160*256)
1420bank%=bank% EOR 3
1430SYS 6,113,bank%
1440WAIT
1450COLOUR 0,0,0,r%
1460
1470FOR c%=1 TO 15
1480COLOUR c%,c%*(17/48)*r%,c%*(15/48)*r%,0
1490NEXT
1500CALL prog%
1510NEXT
1520
1530FOR c%=1 TO 15
1540COLOUR c%,c%*17,c%*15,0
1550NEXT
1560
1570REPEAT
1580a%+=1
1590rx=rx+rxp
1600ry=ry+ryp
1610rxx+=(2+RND(1))/9
1620ryy+=(1+RND(1))/9
1630x%=rxx*32
1640y%=ryy*32
1650A%=COSRADx%*COSRADy%*255
1660B%=SINRADx%*COSRADy%*255
1670C%=SINRADy%*255
1680!screenat=(!q%+add%)+((bank%-1)*160*256)
1690bank%=bank% EOR 3
1700SYS 6,113,bank%
1710WAIT
1720CALL prog%
1730UNTIL 0
� 12
� 9
� � 0:�:� �:�
(�
2size%=7
<s%=2^size%
F
d%=s% � 2
P
Z
d� normal% (s%+1)*(s%+1)*4
n� prog% 8192
x
� q% 8
�
�!q%=148
�q%!4=-1
�"ș "OS_ReadVduVariables",q%,q%
�
� � "Load 3ddata "+�~(normal%)
�
�
�mx=0
�my=1
�mz=2
�y=3
�
data=4
normal=5
adr=6
col=7
"
norm=8
,screen=9
6
pos=10
@x=11
J
T� pass%=0 � 2 � 2
^P%=prog%
h[OPT pass%
r
|.screenat EQUD !q%
�.normalat EQUD normal%
�.mxat EQUD 0
�.myat EQUD 0
�.mzat EQUD 0
�
� STMFD R13!,{R14}
�
� LDR screen,screenat
� LDR adr,normalat
�
�
MOV y,#1
�
.yloop
�
MOV x,#1
.xloop
ADD pos,x,y,LSL#size%
LDR normal,[adr,pos,LSL#2]
& MOV data,normal,LSR#24
0 CMP data,#0
: �Q col,#0
DBEQ skipplot1
N
X � norm,normal,#255
b SUB norm,norm,#128
l MUL norm,mx,norm
v
� � col,normal,#255<<8
� SUB col,col,#128<<8
� MOV col,col,ASR#8
� MLA norm,my,col,norm
�
� � col,normal,#255<<16
� SUB col,col,#128<<16
� MOV col,col,ASR#16
� MLA norm,mz,col,norm
�
� MOV col,norm,ASR#11
� CMP col,#1
� MOVLT col,#1
.skipplot1
ADD pos,pos,#1
LDR normal,[adr,pos,LSL#2]
* MOV data,normal,LSR#24
4 CMP data,#0
>BEQ skipplot2
H
R � norm,normal,#255
\ SUB norm,norm,#128
f MUL norm,mx,norm
p
z � pos,normal,#255<<8
� SUB pos,pos,#128<<8
� MOV pos,pos,ASR#8
� MLA norm,my,pos,norm
�
� � pos,normal,#255<<16
� SUB pos,pos,#128<<16
� MOV pos,pos,ASR#16
� MLA norm,mz,pos,norm
�
� MOV norm,norm,ASR#11
� CMP norm,#1
� MOVLT norm,#1
� ADD col,col,norm,LSL#4
.skipplot2
ADD pos,y,y,LSL#2
MOV data,x,ASR#1
$ ADD pos,data,pos,LSL#5
. STRB col,[screen,pos]
8 ADD x,x,#2
B CMP x,#s%
L
BLT xloop
V ADD y,y,#1
` CMP y,#s%
j
BLT yloop
t
~ LDMFD R13!,{PC}
�]
��
�
�
�rxp=�(800)/3000
�ryp=�(1200)/3000
�rx=0
�ry=0
� rxx=0
� ryy=0
�
�bank%=1
*add%=(((127-d%)*160+80-(d% � 2))� 3)-3
a%=0
� r%=0 � 48 � 4
a%+=1
(
rx=rx+rxp
2
ry=ry+ryp
<rxx+=(2+�(1))/9
Fryy+=(1+�(1))/9
P
x%=rxx*32
Z
y%=ryy*32
dA%=��x%*��y%*255
nB%=��x%*��y%*255
xC%=��y%*255
�,!screenat=(!q%+add%)+((bank%-1)*160*256)
�bank%=bank% � 3
�ș 6,113,bank%
�Ȗ
�� 0,0,0,r%
�
�� c%=1 � 15
�&� c%,c%*(17/48)*r%,c%*(15/48)*r%,0
��
�� prog%
��
�
�� c%=1 � 15
� c%,c%*17,c%*15,0
�
"�
, a%+=1
6
rx=rx+rxp
@
ry=ry+ryp
Jrxx+=(2+�(1))/9
Tryy+=(1+�(1))/9
^
x%=rxx*32
h
y%=ryy*32
rA%=��x%*��y%*255
|B%=��x%*��y%*255
�C%=��y%*255
�,!screenat=(!q%+add%)+((bank%-1)*160*256)
�bank%=bank% � 3
�ș 6,113,bank%
�Ȗ
�� prog%
�� 0
� 00000000 0d 00 0a 08 eb 20 31 32 0d 00 14 07 eb 20 39 0d |..... 12..... 9.|
00000010 00 1e 12 ee 85 20 eb 20 30 3a f6 3a f1 20 9e 3a |..... . 0:.:. .:|
00000020 e0 0d 00 28 05 87 0d 00 32 0b 73 69 7a 65 25 3d |...(....2.size%=|
00000030 37 0d 00 3c 0e 73 25 3d 32 5e 73 69 7a 65 25 0d |7..<.s%=2^size%.|
00000040 00 46 0d 64 25 3d 73 25 20 81 20 32 0d 00 50 04 |.F.d%=s% . 2..P.|
00000050 0d 00 5a 04 0d 00 64 1d de 20 6e 6f 72 6d 61 6c |..Z...d.. normal|
00000060 25 20 28 73 25 2b 31 29 2a 28 73 25 2b 31 29 2a |% (s%+1)*(s%+1)*|
00000070 34 0d 00 6e 10 de 20 70 72 6f 67 25 20 38 31 39 |4..n.. prog% 819|
00000080 32 0d 00 78 0a de 20 71 25 20 38 0d 00 82 04 0d |2..x.. q% 8.....|
00000090 00 8c 0b 21 71 25 3d 31 34 38 0d 00 96 0b 71 25 |...!q%=148....q%|
000000a0 21 34 3d 2d 31 0d 00 a0 22 c8 99 20 22 4f 53 5f |!4=-1...".. "OS_|
000000b0 52 65 61 64 56 64 75 56 61 72 69 61 62 6c 65 73 |ReadVduVariables|
000000c0 22 2c 71 25 2c 71 25 0d 00 aa 04 0d 00 b4 20 ff |",q%,q%....... .|
000000d0 20 22 4c 6f 61 64 20 33 64 64 61 74 61 20 22 2b | "Load 3ddata "+|
000000e0 c3 7e 28 6e 6f 72 6d 61 6c 25 29 0d 00 be 04 0d |.~(normal%).....|
000000f0 00 c8 04 0d 00 d2 08 6d 78 3d 30 0d 00 dc 08 6d |.......mx=0....m|
00000100 79 3d 31 0d 00 e6 08 6d 7a 3d 32 0d 00 f0 07 79 |y=1....mz=2....y|
00000110 3d 33 0d 00 fa 0a 64 61 74 61 3d 34 0d 01 04 0c |=3....data=4....|
00000120 6e 6f 72 6d 61 6c 3d 35 0d 01 0e 09 61 64 72 3d |normal=5....adr=|
00000130 36 0d 01 18 09 63 6f 6c 3d 37 0d 01 22 0a 6e 6f |6....col=7..".no|
00000140 72 6d 3d 38 0d 01 2c 0c 73 63 72 65 65 6e 3d 39 |rm=8..,.screen=9|
00000150 0d 01 36 0a 70 6f 73 3d 31 30 0d 01 40 08 78 3d |..6.pos=10..@.x=|
00000160 31 31 0d 01 4a 04 0d 01 54 15 e3 20 70 61 73 73 |11..J...T.. pass|
00000170 25 3d 30 20 b8 20 32 20 88 20 32 0d 01 5e 0c 50 |%=0 . 2 . 2..^.P|
00000180 25 3d 70 72 6f 67 25 0d 01 68 0e 5b 4f 50 54 20 |%=prog%..h.[OPT |
00000190 70 61 73 73 25 0d 01 72 04 0d 01 7c 16 2e 73 63 |pass%..r...|..sc|
000001a0 72 65 65 6e 61 74 20 45 51 55 44 20 21 71 25 0d |reenat EQUD !q%.|
000001b0 01 86 1a 2e 6e 6f 72 6d 61 6c 61 74 20 45 51 55 |....normalat EQU|
000001c0 44 20 6e 6f 72 6d 61 6c 25 0d 01 90 14 2e 6d 78 |D normal%.....mx|
000001d0 61 74 20 20 20 20 20 45 51 55 44 20 30 0d 01 9a |at EQUD 0...|
000001e0 14 2e 6d 79 61 74 20 20 20 20 20 45 51 55 44 20 |..myat EQUD |
000001f0 30 0d 01 a4 14 2e 6d 7a 61 74 20 20 20 20 20 45 |0.....mzat E|
00000200 51 55 44 20 30 0d 01 ae 04 0d 01 b8 15 20 53 54 |QUD 0........ ST|
00000210 4d 46 44 20 52 31 33 21 2c 7b 52 31 34 7d 0d 01 |MFD R13!,{R14}..|
00000220 c2 04 0d 01 cc 18 20 4c 44 52 20 73 63 72 65 65 |...... LDR scree|
00000230 6e 2c 73 63 72 65 65 6e 61 74 0d 01 d6 15 20 4c |n,screenat.... L|
00000240 44 52 20 61 64 72 2c 6e 6f 72 6d 61 6c 61 74 0d |DR adr,normalat.|
00000250 01 e0 05 20 0d 01 ea 0d 20 4d 4f 56 20 79 2c 23 |... .... MOV y,#|
00000260 31 0d 01 f4 0a 2e 79 6c 6f 6f 70 0d 01 fe 0d 20 |1.....yloop.... |
00000270 4d 4f 56 20 78 2c 23 31 0d 02 08 0a 2e 78 6c 6f |MOV x,#1.....xlo|
00000280 6f 70 0d 02 12 1a 20 41 44 44 20 70 6f 73 2c 78 |op.... ADD pos,x|
00000290 2c 79 2c 4c 53 4c 23 73 69 7a 65 25 0d 02 1c 1f |,y,LSL#size%....|
000002a0 20 4c 44 52 20 6e 6f 72 6d 61 6c 2c 5b 61 64 72 | LDR normal,[adr|
000002b0 2c 70 6f 73 2c 4c 53 4c 23 32 5d 0d 02 26 1b 20 |,pos,LSL#2]..&. |
000002c0 4d 4f 56 20 64 61 74 61 2c 6e 6f 72 6d 61 6c 2c |MOV data,normal,|
000002d0 4c 53 52 23 32 34 0d 02 30 10 20 43 4d 50 20 64 |LSR#24..0. CMP d|
000002e0 61 74 61 2c 23 30 0d 02 3a 0e 20 ec 51 20 63 6f |ata,#0..:. .Q co|
000002f0 6c 2c 23 30 0d 02 44 11 42 45 51 20 73 6b 69 70 |l,#0..D.BEQ skip|
00000300 70 6c 6f 74 31 0d 02 4e 04 0d 02 58 17 20 80 20 |plot1..N...X. . |
00000310 6e 6f 72 6d 2c 6e 6f 72 6d 61 6c 2c 23 32 35 35 |norm,normal,#255|
00000320 0d 02 62 17 20 53 55 42 20 6e 6f 72 6d 2c 6e 6f |..b. SUB norm,no|
00000330 72 6d 2c 23 31 32 38 0d 02 6c 15 20 4d 55 4c 20 |rm,#128..l. MUL |
00000340 6e 6f 72 6d 2c 6d 78 2c 6e 6f 72 6d 0d 02 76 05 |norm,mx,norm..v.|
00000350 20 0d 02 80 19 20 80 20 63 6f 6c 2c 6e 6f 72 6d | .... . col,norm|
00000360 61 6c 2c 23 32 35 35 3c 3c 38 0d 02 8a 18 20 53 |al,#255<<8.... S|
00000370 55 42 20 63 6f 6c 2c 63 6f 6c 2c 23 31 32 38 3c |UB col,col,#128<|
00000380 3c 38 0d 02 94 16 20 4d 4f 56 20 63 6f 6c 2c 63 |<8.... MOV col,c|
00000390 6f 6c 2c 41 53 52 23 38 0d 02 9e 19 20 4d 4c 41 |ol,ASR#8.... MLA|
000003a0 20 6e 6f 72 6d 2c 6d 79 2c 63 6f 6c 2c 6e 6f 72 | norm,my,col,nor|
000003b0 6d 0d 02 a8 05 20 0d 02 b2 1a 20 80 20 63 6f 6c |m.... .... . col|
000003c0 2c 6e 6f 72 6d 61 6c 2c 23 32 35 35 3c 3c 31 36 |,normal,#255<<16|
000003d0 0d 02 bc 19 20 53 55 42 20 63 6f 6c 2c 63 6f 6c |.... SUB col,col|
000003e0 2c 23 31 32 38 3c 3c 31 36 0d 02 c6 17 20 4d 4f |,#128<<16.... MO|
000003f0 56 20 63 6f 6c 2c 63 6f 6c 2c 41 53 52 23 31 36 |V col,col,ASR#16|
00000400 0d 02 d0 19 20 4d 4c 41 20 6e 6f 72 6d 2c 6d 7a |.... MLA norm,mz|
00000410 2c 63 6f 6c 2c 6e 6f 72 6d 0d 02 da 04 0d 02 e4 |,col,norm.......|
00000420 18 20 4d 4f 56 20 63 6f 6c 2c 6e 6f 72 6d 2c 41 |. MOV col,norm,A|
00000430 53 52 23 31 31 0d 02 ee 0f 20 43 4d 50 20 63 6f |SR#11.... CMP co|
00000440 6c 2c 23 31 0d 02 f8 11 20 4d 4f 56 4c 54 20 63 |l,#1.... MOVLT c|
00000450 6f 6c 2c 23 31 0d 03 02 04 0d 03 0c 0e 2e 73 6b |ol,#1.........sk|
00000460 69 70 70 6c 6f 74 31 0d 03 16 13 20 41 44 44 20 |ipplot1.... ADD |
00000470 70 6f 73 2c 70 6f 73 2c 23 31 0d 03 20 1f 20 4c |pos,pos,#1.. . L|
00000480 44 52 20 6e 6f 72 6d 61 6c 2c 5b 61 64 72 2c 70 |DR normal,[adr,p|
00000490 6f 73 2c 4c 53 4c 23 32 5d 0d 03 2a 1b 20 4d 4f |os,LSL#2]..*. MO|
000004a0 56 20 64 61 74 61 2c 6e 6f 72 6d 61 6c 2c 4c 53 |V data,normal,LS|
000004b0 52 23 32 34 0d 03 34 10 20 43 4d 50 20 64 61 74 |R#24..4. CMP dat|
000004c0 61 2c 23 30 0d 03 3e 11 42 45 51 20 73 6b 69 70 |a,#0..>.BEQ skip|
000004d0 70 6c 6f 74 32 0d 03 48 04 0d 03 52 17 20 80 20 |plot2..H...R. . |
000004e0 6e 6f 72 6d 2c 6e 6f 72 6d 61 6c 2c 23 32 35 35 |norm,normal,#255|
000004f0 0d 03 5c 17 20 53 55 42 20 6e 6f 72 6d 2c 6e 6f |..\. SUB norm,no|
00000500 72 6d 2c 23 31 32 38 0d 03 66 15 20 4d 55 4c 20 |rm,#128..f. MUL |
00000510 6e 6f 72 6d 2c 6d 78 2c 6e 6f 72 6d 0d 03 70 05 |norm,mx,norm..p.|
00000520 20 0d 03 7a 19 20 80 20 70 6f 73 2c 6e 6f 72 6d | ..z. . pos,norm|
00000530 61 6c 2c 23 32 35 35 3c 3c 38 0d 03 84 18 20 53 |al,#255<<8.... S|
00000540 55 42 20 70 6f 73 2c 70 6f 73 2c 23 31 32 38 3c |UB pos,pos,#128<|
00000550 3c 38 0d 03 8e 16 20 4d 4f 56 20 70 6f 73 2c 70 |<8.... MOV pos,p|
00000560 6f 73 2c 41 53 52 23 38 0d 03 98 19 20 4d 4c 41 |os,ASR#8.... MLA|
00000570 20 6e 6f 72 6d 2c 6d 79 2c 70 6f 73 2c 6e 6f 72 | norm,my,pos,nor|
00000580 6d 0d 03 a2 05 20 0d 03 ac 1a 20 80 20 70 6f 73 |m.... .... . pos|
00000590 2c 6e 6f 72 6d 61 6c 2c 23 32 35 35 3c 3c 31 36 |,normal,#255<<16|
000005a0 0d 03 b6 19 20 53 55 42 20 70 6f 73 2c 70 6f 73 |.... SUB pos,pos|
000005b0 2c 23 31 32 38 3c 3c 31 36 0d 03 c0 17 20 4d 4f |,#128<<16.... MO|
000005c0 56 20 70 6f 73 2c 70 6f 73 2c 41 53 52 23 31 36 |V pos,pos,ASR#16|
000005d0 0d 03 ca 19 20 4d 4c 41 20 6e 6f 72 6d 2c 6d 7a |.... MLA norm,mz|
000005e0 2c 70 6f 73 2c 6e 6f 72 6d 0d 03 d4 04 0d 03 de |,pos,norm.......|
000005f0 19 20 4d 4f 56 20 6e 6f 72 6d 2c 6e 6f 72 6d 2c |. MOV norm,norm,|
00000600 41 53 52 23 31 31 0d 03 e8 10 20 43 4d 50 20 6e |ASR#11.... CMP n|
00000610 6f 72 6d 2c 23 31 0d 03 f2 12 20 4d 4f 56 4c 54 |orm,#1.... MOVLT|
00000620 20 6e 6f 72 6d 2c 23 31 0d 03 fc 1b 20 41 44 44 | norm,#1.... ADD|
00000630 20 63 6f 6c 2c 63 6f 6c 2c 6e 6f 72 6d 2c 4c 53 | col,col,norm,LS|
00000640 4c 23 34 0d 04 06 0e 2e 73 6b 69 70 70 6c 6f 74 |L#4.....skipplot|
00000650 32 0d 04 10 16 20 41 44 44 20 70 6f 73 2c 79 2c |2.... ADD pos,y,|
00000660 79 2c 4c 53 4c 23 32 0d 04 1a 15 20 4d 4f 56 20 |y,LSL#2.... MOV |
00000670 64 61 74 61 2c 78 2c 41 53 52 23 31 0d 04 24 1b |data,x,ASR#1..$.|
00000680 20 41 44 44 20 70 6f 73 2c 64 61 74 61 2c 70 6f | ADD pos,data,po|
00000690 73 2c 4c 53 4c 23 35 0d 04 2e 1a 20 53 54 52 42 |s,LSL#5.... STRB|
000006a0 20 63 6f 6c 2c 5b 73 63 72 65 65 6e 2c 70 6f 73 | col,[screen,pos|
000006b0 5d 0d 04 38 0f 20 41 44 44 20 78 2c 78 2c 23 32 |]..8. ADD x,x,#2|
000006c0 0d 04 42 0e 20 43 4d 50 20 78 2c 23 73 25 0d 04 |..B. CMP x,#s%..|
000006d0 4c 0d 42 4c 54 20 78 6c 6f 6f 70 0d 04 56 0f 20 |L.BLT xloop..V. |
000006e0 41 44 44 20 79 2c 79 2c 23 31 0d 04 60 0e 20 43 |ADD y,y,#1..`. C|
000006f0 4d 50 20 79 2c 23 73 25 0d 04 6a 0d 42 4c 54 20 |MP y,#s%..j.BLT |
00000700 79 6c 6f 6f 70 0d 04 74 04 0d 04 7e 14 20 4c 44 |yloop..t...~. LD|
00000710 4d 46 44 20 52 31 33 21 2c 7b 50 43 7d 0d 04 88 |MFD R13!,{PC}...|
00000720 05 5d 0d 04 92 05 ed 0d 04 9c 04 0d 04 a6 04 0d |.]..............|
00000730 04 b0 13 72 78 70 3d b3 28 38 30 30 29 2f 33 30 |...rxp=.(800)/30|
00000740 30 30 0d 04 ba 14 72 79 70 3d b3 28 31 32 30 30 |00....ryp=.(1200|
00000750 29 2f 33 30 30 30 0d 04 c4 08 72 78 3d 30 0d 04 |)/3000....rx=0..|
00000760 ce 08 72 79 3d 30 0d 04 d8 09 72 78 78 3d 30 0d |..ry=0....rxx=0.|
00000770 04 e2 09 72 79 79 3d 30 0d 04 ec 04 0d 04 f6 0b |...ryy=0........|
00000780 62 61 6e 6b 25 3d 31 0d 05 00 2a 61 64 64 25 3d |bank%=1...*add%=|
00000790 28 28 28 31 32 37 2d 64 25 29 2a 31 36 30 2b 38 |(((127-d%)*160+8|
000007a0 30 2d 28 64 25 20 81 20 32 29 29 84 20 33 29 2d |0-(d% . 2)). 3)-|
000007b0 33 0d 05 0a 08 61 25 3d 30 0d 05 14 13 e3 20 72 |3....a%=0..... r|
000007c0 25 3d 30 20 b8 20 34 38 20 88 20 34 0d 05 1e 09 |%=0 . 48 . 4....|
000007d0 61 25 2b 3d 31 0d 05 28 0d 72 78 3d 72 78 2b 72 |a%+=1..(.rx=rx+r|
000007e0 78 70 0d 05 32 0d 72 79 3d 72 79 2b 72 79 70 0d |xp..2.ry=ry+ryp.|
000007f0 05 3c 13 72 78 78 2b 3d 28 32 2b b3 28 31 29 29 |.<.rxx+=(2+.(1))|
00000800 2f 39 0d 05 46 13 72 79 79 2b 3d 28 31 2b b3 28 |/9..F.ryy+=(1+.(|
00000810 31 29 29 2f 39 0d 05 50 0d 78 25 3d 72 78 78 2a |1))/9..P.x%=rxx*|
00000820 33 32 0d 05 5a 0d 79 25 3d 72 79 79 2a 33 32 0d |32..Z.y%=ryy*32.|
00000830 05 64 14 41 25 3d 9b b2 78 25 2a 9b b2 79 25 2a |.d.A%=..x%*..y%*|
00000840 32 35 35 0d 05 6e 14 42 25 3d b5 b2 78 25 2a 9b |255..n.B%=..x%*.|
00000850 b2 79 25 2a 32 35 35 0d 05 78 0f 43 25 3d b5 b2 |.y%*255..x.C%=..|
00000860 79 25 2a 32 35 35 0d 05 82 2c 21 73 63 72 65 65 |y%*255...,!scree|
00000870 6e 61 74 3d 28 21 71 25 2b 61 64 64 25 29 2b 28 |nat=(!q%+add%)+(|
00000880 28 62 61 6e 6b 25 2d 31 29 2a 31 36 30 2a 32 35 |(bank%-1)*160*25|
00000890 36 29 0d 05 8c 13 62 61 6e 6b 25 3d 62 61 6e 6b |6)....bank%=bank|
000008a0 25 20 82 20 33 0d 05 96 12 c8 99 20 36 2c 31 31 |% . 3...... 6,11|
000008b0 33 2c 62 61 6e 6b 25 0d 05 a0 06 c8 96 0d 05 aa |3,bank%.........|
000008c0 0e fb 20 30 2c 30 2c 30 2c 72 25 0d 05 b4 04 0d |.. 0,0,0,r%.....|
000008d0 05 be 0f e3 20 63 25 3d 31 20 b8 20 31 35 0d 05 |.... c%=1 . 15..|
000008e0 c8 26 fb 20 63 25 2c 63 25 2a 28 31 37 2f 34 38 |.&. c%,c%*(17/48|
000008f0 29 2a 72 25 2c 63 25 2a 28 31 35 2f 34 38 29 2a |)*r%,c%*(15/48)*|
00000900 72 25 2c 30 0d 05 d2 05 ed 0d 05 dc 0b d6 20 70 |r%,0.......... p|
00000910 72 6f 67 25 0d 05 e6 05 ed 0d 05 f0 04 0d 05 fa |rog%............|
00000920 0f e3 20 63 25 3d 31 20 b8 20 31 35 0d 06 04 16 |.. c%=1 . 15....|
00000930 fb 20 63 25 2c 63 25 2a 31 37 2c 63 25 2a 31 35 |. c%,c%*17,c%*15|
00000940 2c 30 0d 06 0e 05 ed 0d 06 18 04 0d 06 22 05 f5 |,0..........."..|
00000950 0d 06 2c 09 61 25 2b 3d 31 0d 06 36 0d 72 78 3d |..,.a%+=1..6.rx=|
00000960 72 78 2b 72 78 70 0d 06 40 0d 72 79 3d 72 79 2b |rx+rxp..@.ry=ry+|
00000970 72 79 70 0d 06 4a 13 72 78 78 2b 3d 28 32 2b b3 |ryp..J.rxx+=(2+.|
00000980 28 31 29 29 2f 39 0d 06 54 13 72 79 79 2b 3d 28 |(1))/9..T.ryy+=(|
00000990 31 2b b3 28 31 29 29 2f 39 0d 06 5e 0d 78 25 3d |1+.(1))/9..^.x%=|
000009a0 72 78 78 2a 33 32 0d 06 68 0d 79 25 3d 72 79 79 |rxx*32..h.y%=ryy|
000009b0 2a 33 32 0d 06 72 14 41 25 3d 9b b2 78 25 2a 9b |*32..r.A%=..x%*.|
000009c0 b2 79 25 2a 32 35 35 0d 06 7c 14 42 25 3d b5 b2 |.y%*255..|.B%=..|
000009d0 78 25 2a 9b b2 79 25 2a 32 35 35 0d 06 86 0f 43 |x%*..y%*255....C|
000009e0 25 3d b5 b2 79 25 2a 32 35 35 0d 06 90 2c 21 73 |%=..y%*255...,!s|
000009f0 63 72 65 65 6e 61 74 3d 28 21 71 25 2b 61 64 64 |creenat=(!q%+add|
00000a00 25 29 2b 28 28 62 61 6e 6b 25 2d 31 29 2a 31 36 |%)+((bank%-1)*16|
00000a10 30 2a 32 35 36 29 0d 06 9a 13 62 61 6e 6b 25 3d |0*256)....bank%=|
00000a20 62 61 6e 6b 25 20 82 20 33 0d 06 a4 12 c8 99 20 |bank% . 3...... |
00000a30 36 2c 31 31 33 2c 62 61 6e 6b 25 0d 06 ae 06 c8 |6,113,bank%.....|
00000a40 96 0d 06 b8 0b d6 20 70 72 6f 67 25 0d 06 c2 07 |...... prog%....|
00000a50 fd 20 30 0d ff |. 0..|
00000a55
.