Home » Archimedes archive » Acorn User » AU 1997-04 A.adf » Features1 » StarInfo/Smale/FERN4

StarInfo/Smale/FERN4

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/Smale/FERN4
Read OK:
File size: 09C4 bytes
Load address: 0000
Exec address: 0000
File contents
   10MODE13:OFF
   20DIM code 1024+16
   30ON ERROR REPORT:PRINT" at line ";ERL:END
   40PROCscrn
   50PROCcols
   60
   70PRINTTAB(2,2);"Fast or Slow? (F/S) ";
   80FS$=GET$
   90IF FS$="S" OR FS$="s" PRINT "Slow" ELSE PRINT "Fast"
  100FOR I=1 TO 16000:NEXT
  110CLS
  120
  130link=14
  140sp=13
  150screen=12
  160GCOL 255
  170
  180POINT 640,512
  190
  200FOR pass=0 TO 2 STEP 2
  210P%=code
  220[OPT pass
  230.bob EQUD 0
  240.fern      STMFD (sp)!,{link}
  250           LDR screen,scrn
  260           MOV R6,#255
  270LDR R10,seed
  280LDR R8,c1
  290LDR R9,c2
  300
  310.dotloop
  320
  330MOV R0,R0,LSL#16
  340MOV R1,R1,LSL#16
  350
  360RSB R14,R0,#160<<16
  370RSB R4,R1,#128<<16
  380MOV R14,R14,ASR#8
  390MOV R4,R4,ASR#8
  400
  410.yloop ADD R0,R0,R14
  420       ADD R1,R1,R4
  430
  440           MOV R7,R10
  450           MLA R7,R8,R7,R9
  460           MLA R10,R8,R7,R9
  470           EOR R7,R7,R10,ROR#16
  480AND R7,R7,#2
  490SUB R7,R7,#1
  500ADD R0,R0,R7
  510
  520MOV R3,R0,LSR#16
  530ADD R2,screen,R3
  540MOV R3,R1,LSR#16
  550ADD R2,R2,R3,LSL#6
  560ADD R2,R2,R3,LSL#8
  570]
  580IF FS$="S" OR FS$="s" THEN
  590[OPT pass
  600MOV R3,#255
  610STRB R3,[R2,#0]
  620STMFD (sp)!,{R0-R12}
  630MOV R0,#19
  640SWI "OS_Byte"
  650SWI "OS_ReadEscapeState"
  660LDMFD (sp)!,{R0-R12}
  670MOV R3,#0
  680STRB R3,[R2,#0]
  690BCS fini
  700]
  710ENDIF
  720[OPT pass
  730
  740           LDRB  R3,[R2,#320]
  750           CMP   R3,#0
  760           BNE   draw
  770
  780           LDRB  R3,[R2,#-1]
  790           CMP   R3,#0
  800           BNE   draw
  810
  820           LDRB  R3,[R2,#-320]
  830           CMP   R3,#0
  840           BNE   draw
  850
  860           LDRB  R3,[R2,#1]
  870           CMP   R3,#0
  880           BEQ   yloop
  890
  900.draw
  910LDR   R6,col%
  920LDR   R3,coldata
  930LDRB  R6,[R6,R3]
  940STRB  R6,[R2,#0]
  950MOV R0,R0,LSR#16
  960MOV R1,R1,LSR#16
  970SUB R0,R0,#160
  980SUB R1,R1,#128
  990MUL   R2,R0,R0
 1000MUL   R3,R1,R1
 1010ADD   R0,R2,R3
 1020STR   R0,bob
 1030
 1040.fini      LDMFD (sp)!,{PC}
 1050.scrn      EQUD screen%
 1060.c1   EQUD 1664525
 1070.c2   EQUD 907633393
 1080.seed EQUD TIME
 1090.coldata EQUD code+1024
 1100.col% EQUD 0
 1110]
 1120NEXT
 1130
 1140HR%=127
 1150REPEAT
 1160A=RND(360)
 1170A%=(HR%*SIN(RAD A))+160
 1180B%=(HR%*COS(RAD A))+128
 1190R%=!bob
 1200!col%=15-(SQR(R%) DIV 8)
 1210IF !col%>-1 THEN CALL fern
 1220UNTIL !col%<4
 1230END
 1240
 1250DEFPROCcols
 1260data%=code+1024
 1270FOR I%=0 TO 15
 1280READ data%?I%
 1290NEXT
 1300ENDPROC
 1310
 1320DATA 1,1,2,3, 8,9,10,11, 164,165,166,167, 216,217,218,219
 1330DATA 1,1,2,3, 44,45,46,47, 208,209,210,211, 252,253,254,255
 1340DATA 1,1,2,3, 8,9,10,11, 164,165,166,167, 216,217,218,219
 1350
 1360DEFPROCscrn
 1370DIM block% 15,b2% 15
 1380block%!0=148
 1390block%!4=7
 1400block%!8=6
 1410block%!12=-1
 1420SYS "OS_ReadVduVariables",block%,b2%
 1430screen%=b2%!0
 1440ENDPROC

	�13:�
� code 1024+16
� � �:�" at line ";�:�
(	�scrn
2	�cols
<
F"�2,2);"Fast or Slow? (F/S) ";
P	FS$=�
Z+� FS$="S" � FS$="s" � "Slow" � � "Fast"
d� I=1 � 16000:�
n�
x
�link=14
�	sp=13
�
screen=12
�	� 255
�
�Ȓ 640,512
�
�� pass=0 � 2 � 2
�P%=code
�
[OPT pass
�.bob EQUD 0
�!.fern      STMFD (sp)!,{link}
�           LDR screen,scrn
           MOV R6,#255
LDR R10,seed

LDR R8,c1
"
LDR R9,c2
,
6.dotloop
@
JMOV R0,R0,LSL#16
TMOV R1,R1,LSL#16
^
hRSB R14,R0,#160<<16
rRSB R4,R1,#128<<16
|MOV R14,R14,ASR#8
�MOV R4,R4,ASR#8
�
�.yloop ADD R0,R0,R14
�       ADD R1,R1,R4
�
�           MOV R7,R10
�           MLA R7,R8,R7,R9
�           MLA R10,R8,R7,R9
�!           � R7,R7,R10,ROR#16
�� R7,R7,#2
�SUB R7,R7,#1
�ADD R0,R0,R7
�
MOV R3,R0,LSR#16
ADD R2,screen,R3
MOV R3,R1,LSR#16
&ADD R2,R2,R3,LSL#6
0ADD R2,R2,R3,LSL#8
:]
D� FS$="S" � FS$="s" �
N
[OPT pass
XMOV R3,#255
bSTRB R3,[R2,#0]
lSTMFD (sp)!,{R0-R12}
vMOV R0,#19
�SWI "OS_Byte"
�SWI "OS_ReadEscapeState"
�LDMFD (sp)!,{R0-R12}
�
MOV R3,#0
�STRB R3,[R2,#0]
�BCS fini
�]
��
�
[OPT pass
�
�!           LDRB  R3,[R2,#320]
�           CMP   R3,#0
�           BNE   draw

            LDRB  R3,[R2,#-1]
           CMP   R3,#0
            BNE   draw
*
4"           LDRB  R3,[R2,#-320]
>           CMP   R3,#0
H           BNE   draw
R
\           LDRB  R3,[R2,#1]
f           CMP   R3,#0
p           BEQ   yloop
z
�	.draw
�LDR   R6,col%
�LDR   R3,coldata
�LDRB  R6,[R6,R3]
�STRB  R6,[R2,#0]
�MOV R0,R0,LSR#16
�MOV R1,R1,LSR#16
�SUB R0,R0,#160
�SUB R1,R1,#128
�MUL   R2,R0,R0
�MUL   R3,R1,R1
�ADD   R0,R2,R3
�STR   R0,bob

.fini      LDMFD (sp)!,{PC}
.scrn      EQUD screen%
$.c1   EQUD 1664525
..c2   EQUD 907633393
8.seed EQUD �
B.coldata EQUD code+1024
L.col% EQUD 0
V]
`�
j
tHR%=127
~�
�A=�(360)
�A%=(HR%*�(� A))+160
�B%=(HR%*�(� A))+128
�R%=!bob
�!col%=15-(�(R%) � 8)
�� !col%>-1 � � fern
�
� !col%<4
��
�
�
��cols
�data%=code+1024
�� I%=0 � 15
� data%?I%

�
�

(:� 1,1,2,3, 8,9,10,11, 164,165,166,167, 216,217,218,219
2<� 1,1,2,3, 44,45,46,47, 208,209,210,211, 252,253,254,255
<:� 1,1,2,3, 8,9,10,11, 164,165,166,167, 216,217,218,219
F
P
��scrn
Z� block% 15,b2% 15
dblock%!0=148
nblock%!4=7
xblock%!8=6
�block%!12=-1
�'ș "OS_ReadVduVariables",block%,b2%
�screen%=b2%!0
��
�
00000000  0d 00 0a 09 eb 31 33 3a  87 0d 00 14 12 de 20 63  |.....13:...... c|
00000010  6f 64 65 20 31 30 32 34  2b 31 36 0d 00 1e 1a ee  |ode 1024+16.....|
00000020  20 85 20 f6 3a f1 22 20  61 74 20 6c 69 6e 65 20  | . .:." at line |
00000030  22 3b 9e 3a e0 0d 00 28  09 f2 73 63 72 6e 0d 00  |";.:...(..scrn..|
00000040  32 09 f2 63 6f 6c 73 0d  00 3c 04 0d 00 46 22 f1  |2..cols..<...F".|
00000050  8a 32 2c 32 29 3b 22 46  61 73 74 20 6f 72 20 53  |.2,2);"Fast or S|
00000060  6c 6f 77 3f 20 28 46 2f  53 29 20 22 3b 0d 00 50  |low? (F/S) ";..P|
00000070  09 46 53 24 3d be 0d 00  5a 2b e7 20 46 53 24 3d  |.FS$=...Z+. FS$=|
00000080  22 53 22 20 84 20 46 53  24 3d 22 73 22 20 f1 20  |"S" . FS$="s" . |
00000090  22 53 6c 6f 77 22 20 8b  20 f1 20 22 46 61 73 74  |"Slow" . . "Fast|
000000a0  22 0d 00 64 13 e3 20 49  3d 31 20 b8 20 31 36 30  |"..d.. I=1 . 160|
000000b0  30 30 3a ed 0d 00 6e 05  db 0d 00 78 04 0d 00 82  |00:...n....x....|
000000c0  0b 6c 69 6e 6b 3d 31 34  0d 00 8c 09 73 70 3d 31  |.link=14....sp=1|
000000d0  33 0d 00 96 0d 73 63 72  65 65 6e 3d 31 32 0d 00  |3....screen=12..|
000000e0  a0 09 e6 20 32 35 35 0d  00 aa 04 0d 00 b4 0e c8  |... 255.........|
000000f0  92 20 36 34 30 2c 35 31  32 0d 00 be 04 0d 00 c8  |. 640,512.......|
00000100  14 e3 20 70 61 73 73 3d  30 20 b8 20 32 20 88 20  |.. pass=0 . 2 . |
00000110  32 0d 00 d2 0b 50 25 3d  63 6f 64 65 0d 00 dc 0d  |2....P%=code....|
00000120  5b 4f 50 54 20 70 61 73  73 0d 00 e6 0f 2e 62 6f  |[OPT pass.....bo|
00000130  62 20 45 51 55 44 20 30  0d 00 f0 21 2e 66 65 72  |b EQUD 0...!.fer|
00000140  6e 20 20 20 20 20 20 53  54 4d 46 44 20 28 73 70  |n      STMFD (sp|
00000150  29 21 2c 7b 6c 69 6e 6b  7d 0d 00 fa 1e 20 20 20  |)!,{link}....   |
00000160  20 20 20 20 20 20 20 20  4c 44 52 20 73 63 72 65  |        LDR scre|
00000170  65 6e 2c 73 63 72 6e 0d  01 04 1a 20 20 20 20 20  |en,scrn....     |
00000180  20 20 20 20 20 20 4d 4f  56 20 52 36 2c 23 32 35  |      MOV R6,#25|
00000190  35 0d 01 0e 10 4c 44 52  20 52 31 30 2c 73 65 65  |5....LDR R10,see|
000001a0  64 0d 01 18 0d 4c 44 52  20 52 38 2c 63 31 0d 01  |d....LDR R8,c1..|
000001b0  22 0d 4c 44 52 20 52 39  2c 63 32 0d 01 2c 04 0d  |".LDR R9,c2..,..|
000001c0  01 36 0c 2e 64 6f 74 6c  6f 6f 70 0d 01 40 04 0d  |.6..dotloop..@..|
000001d0  01 4a 14 4d 4f 56 20 52  30 2c 52 30 2c 4c 53 4c  |.J.MOV R0,R0,LSL|
000001e0  23 31 36 0d 01 54 14 4d  4f 56 20 52 31 2c 52 31  |#16..T.MOV R1,R1|
000001f0  2c 4c 53 4c 23 31 36 0d  01 5e 04 0d 01 68 17 52  |,LSL#16..^...h.R|
00000200  53 42 20 52 31 34 2c 52  30 2c 23 31 36 30 3c 3c  |SB R14,R0,#160<<|
00000210  31 36 0d 01 72 16 52 53  42 20 52 34 2c 52 31 2c  |16..r.RSB R4,R1,|
00000220  23 31 32 38 3c 3c 31 36  0d 01 7c 15 4d 4f 56 20  |#128<<16..|.MOV |
00000230  52 31 34 2c 52 31 34 2c  41 53 52 23 38 0d 01 86  |R14,R14,ASR#8...|
00000240  13 4d 4f 56 20 52 34 2c  52 34 2c 41 53 52 23 38  |.MOV R4,R4,ASR#8|
00000250  0d 01 90 04 0d 01 9a 18  2e 79 6c 6f 6f 70 20 41  |.........yloop A|
00000260  44 44 20 52 30 2c 52 30  2c 52 31 34 0d 01 a4 17  |DD R0,R0,R14....|
00000270  20 20 20 20 20 20 20 41  44 44 20 52 31 2c 52 31  |       ADD R1,R1|
00000280  2c 52 34 0d 01 ae 04 0d  01 b8 19 20 20 20 20 20  |,R4........     |
00000290  20 20 20 20 20 20 4d 4f  56 20 52 37 2c 52 31 30  |      MOV R7,R10|
000002a0  0d 01 c2 1e 20 20 20 20  20 20 20 20 20 20 20 4d  |....           M|
000002b0  4c 41 20 52 37 2c 52 38  2c 52 37 2c 52 39 0d 01  |LA R7,R8,R7,R9..|
000002c0  cc 1f 20 20 20 20 20 20  20 20 20 20 20 4d 4c 41  |..           MLA|
000002d0  20 52 31 30 2c 52 38 2c  52 37 2c 52 39 0d 01 d6  | R10,R8,R7,R9...|
000002e0  21 20 20 20 20 20 20 20  20 20 20 20 82 20 52 37  |!           . R7|
000002f0  2c 52 37 2c 52 31 30 2c  52 4f 52 23 31 36 0d 01  |,R7,R10,ROR#16..|
00000300  e0 0e 80 20 52 37 2c 52  37 2c 23 32 0d 01 ea 10  |... R7,R7,#2....|
00000310  53 55 42 20 52 37 2c 52  37 2c 23 31 0d 01 f4 10  |SUB R7,R7,#1....|
00000320  41 44 44 20 52 30 2c 52  30 2c 52 37 0d 01 fe 04  |ADD R0,R0,R7....|
00000330  0d 02 08 14 4d 4f 56 20  52 33 2c 52 30 2c 4c 53  |....MOV R3,R0,LS|
00000340  52 23 31 36 0d 02 12 14  41 44 44 20 52 32 2c 73  |R#16....ADD R2,s|
00000350  63 72 65 65 6e 2c 52 33  0d 02 1c 14 4d 4f 56 20  |creen,R3....MOV |
00000360  52 33 2c 52 31 2c 4c 53  52 23 31 36 0d 02 26 16  |R3,R1,LSR#16..&.|
00000370  41 44 44 20 52 32 2c 52  32 2c 52 33 2c 4c 53 4c  |ADD R2,R2,R3,LSL|
00000380  23 36 0d 02 30 16 41 44  44 20 52 32 2c 52 32 2c  |#6..0.ADD R2,R2,|
00000390  52 33 2c 4c 53 4c 23 38  0d 02 3a 05 5d 0d 02 44  |R3,LSL#8..:.]..D|
000003a0  19 e7 20 46 53 24 3d 22  53 22 20 84 20 46 53 24  |.. FS$="S" . FS$|
000003b0  3d 22 73 22 20 8c 0d 02  4e 0d 5b 4f 50 54 20 70  |="s" ...N.[OPT p|
000003c0  61 73 73 0d 02 58 0f 4d  4f 56 20 52 33 2c 23 32  |ass..X.MOV R3,#2|
000003d0  35 35 0d 02 62 13 53 54  52 42 20 52 33 2c 5b 52  |55..b.STRB R3,[R|
000003e0  32 2c 23 30 5d 0d 02 6c  18 53 54 4d 46 44 20 28  |2,#0]..l.STMFD (|
000003f0  73 70 29 21 2c 7b 52 30  2d 52 31 32 7d 0d 02 76  |sp)!,{R0-R12}..v|
00000400  0e 4d 4f 56 20 52 30 2c  23 31 39 0d 02 80 11 53  |.MOV R0,#19....S|
00000410  57 49 20 22 4f 53 5f 42  79 74 65 22 0d 02 8a 1c  |WI "OS_Byte"....|
00000420  53 57 49 20 22 4f 53 5f  52 65 61 64 45 73 63 61  |SWI "OS_ReadEsca|
00000430  70 65 53 74 61 74 65 22  0d 02 94 18 4c 44 4d 46  |peState"....LDMF|
00000440  44 20 28 73 70 29 21 2c  7b 52 30 2d 52 31 32 7d  |D (sp)!,{R0-R12}|
00000450  0d 02 9e 0d 4d 4f 56 20  52 33 2c 23 30 0d 02 a8  |....MOV R3,#0...|
00000460  13 53 54 52 42 20 52 33  2c 5b 52 32 2c 23 30 5d  |.STRB R3,[R2,#0]|
00000470  0d 02 b2 0c 42 43 53 20  66 69 6e 69 0d 02 bc 05  |....BCS fini....|
00000480  5d 0d 02 c6 05 cd 0d 02  d0 0d 5b 4f 50 54 20 70  |].........[OPT p|
00000490  61 73 73 0d 02 da 04 0d  02 e4 21 20 20 20 20 20  |ass.......!     |
000004a0  20 20 20 20 20 20 4c 44  52 42 20 20 52 33 2c 5b  |      LDRB  R3,[|
000004b0  52 32 2c 23 33 32 30 5d  0d 02 ee 1a 20 20 20 20  |R2,#320]....    |
000004c0  20 20 20 20 20 20 20 43  4d 50 20 20 20 52 33 2c  |       CMP   R3,|
000004d0  23 30 0d 02 f8 19 20 20  20 20 20 20 20 20 20 20  |#0....          |
000004e0  20 42 4e 45 20 20 20 64  72 61 77 0d 03 02 04 0d  | BNE   draw.....|
000004f0  03 0c 20 20 20 20 20 20  20 20 20 20 20 20 4c 44  |..            LD|
00000500  52 42 20 20 52 33 2c 5b  52 32 2c 23 2d 31 5d 0d  |RB  R3,[R2,#-1].|
00000510  03 16 1a 20 20 20 20 20  20 20 20 20 20 20 43 4d  |...           CM|
00000520  50 20 20 20 52 33 2c 23  30 0d 03 20 19 20 20 20  |P   R3,#0.. .   |
00000530  20 20 20 20 20 20 20 20  42 4e 45 20 20 20 64 72  |        BNE   dr|
00000540  61 77 0d 03 2a 04 0d 03  34 22 20 20 20 20 20 20  |aw..*...4"      |
00000550  20 20 20 20 20 4c 44 52  42 20 20 52 33 2c 5b 52  |     LDRB  R3,[R|
00000560  32 2c 23 2d 33 32 30 5d  0d 03 3e 1a 20 20 20 20  |2,#-320]..>.    |
00000570  20 20 20 20 20 20 20 43  4d 50 20 20 20 52 33 2c  |       CMP   R3,|
00000580  23 30 0d 03 48 19 20 20  20 20 20 20 20 20 20 20  |#0..H.          |
00000590  20 42 4e 45 20 20 20 64  72 61 77 0d 03 52 04 0d  | BNE   draw..R..|
000005a0  03 5c 1f 20 20 20 20 20  20 20 20 20 20 20 4c 44  |.\.           LD|
000005b0  52 42 20 20 52 33 2c 5b  52 32 2c 23 31 5d 0d 03  |RB  R3,[R2,#1]..|
000005c0  66 1a 20 20 20 20 20 20  20 20 20 20 20 43 4d 50  |f.           CMP|
000005d0  20 20 20 52 33 2c 23 30  0d 03 70 1a 20 20 20 20  |   R3,#0..p.    |
000005e0  20 20 20 20 20 20 20 42  45 51 20 20 20 79 6c 6f  |       BEQ   ylo|
000005f0  6f 70 0d 03 7a 04 0d 03  84 09 2e 64 72 61 77 0d  |op..z......draw.|
00000600  03 8e 11 4c 44 52 20 20  20 52 36 2c 63 6f 6c 25  |...LDR   R6,col%|
00000610  0d 03 98 14 4c 44 52 20  20 20 52 33 2c 63 6f 6c  |....LDR   R3,col|
00000620  64 61 74 61 0d 03 a2 14  4c 44 52 42 20 20 52 36  |data....LDRB  R6|
00000630  2c 5b 52 36 2c 52 33 5d  0d 03 ac 14 53 54 52 42  |,[R6,R3]....STRB|
00000640  20 20 52 36 2c 5b 52 32  2c 23 30 5d 0d 03 b6 14  |  R6,[R2,#0]....|
00000650  4d 4f 56 20 52 30 2c 52  30 2c 4c 53 52 23 31 36  |MOV R0,R0,LSR#16|
00000660  0d 03 c0 14 4d 4f 56 20  52 31 2c 52 31 2c 4c 53  |....MOV R1,R1,LS|
00000670  52 23 31 36 0d 03 ca 12  53 55 42 20 52 30 2c 52  |R#16....SUB R0,R|
00000680  30 2c 23 31 36 30 0d 03  d4 12 53 55 42 20 52 31  |0,#160....SUB R1|
00000690  2c 52 31 2c 23 31 32 38  0d 03 de 12 4d 55 4c 20  |,R1,#128....MUL |
000006a0  20 20 52 32 2c 52 30 2c  52 30 0d 03 e8 12 4d 55  |  R2,R0,R0....MU|
000006b0  4c 20 20 20 52 33 2c 52  31 2c 52 31 0d 03 f2 12  |L   R3,R1,R1....|
000006c0  41 44 44 20 20 20 52 30  2c 52 32 2c 52 33 0d 03  |ADD   R0,R2,R3..|
000006d0  fc 10 53 54 52 20 20 20  52 30 2c 62 6f 62 0d 04  |..STR   R0,bob..|
000006e0  06 04 0d 04 10 1f 2e 66  69 6e 69 20 20 20 20 20  |.......fini     |
000006f0  20 4c 44 4d 46 44 20 28  73 70 29 21 2c 7b 50 43  | LDMFD (sp)!,{PC|
00000700  7d 0d 04 1a 1b 2e 73 63  72 6e 20 20 20 20 20 20  |}.....scrn      |
00000710  45 51 55 44 20 73 63 72  65 65 6e 25 0d 04 24 16  |EQUD screen%..$.|
00000720  2e 63 31 20 20 20 45 51  55 44 20 31 36 36 34 35  |.c1   EQUD 16645|
00000730  32 35 0d 04 2e 18 2e 63  32 20 20 20 45 51 55 44  |25.....c2   EQUD|
00000740  20 39 30 37 36 33 33 33  39 33 0d 04 38 10 2e 73  | 907633393..8..s|
00000750  65 65 64 20 45 51 55 44  20 91 0d 04 42 1b 2e 63  |eed EQUD ...B..c|
00000760  6f 6c 64 61 74 61 20 45  51 55 44 20 63 6f 64 65  |oldata EQUD code|
00000770  2b 31 30 32 34 0d 04 4c  10 2e 63 6f 6c 25 20 45  |+1024..L..col% E|
00000780  51 55 44 20 30 0d 04 56  05 5d 0d 04 60 05 ed 0d  |QUD 0..V.]..`...|
00000790  04 6a 04 0d 04 74 0b 48  52 25 3d 31 32 37 0d 04  |.j...t.HR%=127..|
000007a0  7e 05 f5 0d 04 88 0c 41  3d b3 28 33 36 30 29 0d  |~......A=.(360).|
000007b0  04 92 17 41 25 3d 28 48  52 25 2a b5 28 b2 20 41  |...A%=(HR%*.(. A|
000007c0  29 29 2b 31 36 30 0d 04  9c 17 42 25 3d 28 48 52  |))+160....B%=(HR|
000007d0  25 2a 9b 28 b2 20 41 29  29 2b 31 32 38 0d 04 a6  |%*.(. A))+128...|
000007e0  0b 52 25 3d 21 62 6f 62  0d 04 b0 18 21 63 6f 6c  |.R%=!bob....!col|
000007f0  25 3d 31 35 2d 28 b6 28  52 25 29 20 81 20 38 29  |%=15-(.(R%) . 8)|
00000800  0d 04 ba 17 e7 20 21 63  6f 6c 25 3e 2d 31 20 8c  |..... !col%>-1 .|
00000810  20 d6 20 66 65 72 6e 0d  04 c4 0d fd 20 21 63 6f  | . fern..... !co|
00000820  6c 25 3c 34 0d 04 ce 05  e0 0d 04 d8 04 0d 04 e2  |l%<4............|
00000830  0a dd f2 63 6f 6c 73 0d  04 ec 13 64 61 74 61 25  |...cols....data%|
00000840  3d 63 6f 64 65 2b 31 30  32 34 0d 04 f6 0f e3 20  |=code+1024..... |
00000850  49 25 3d 30 20 b8 20 31  35 0d 05 00 0e f3 20 64  |I%=0 . 15..... d|
00000860  61 74 61 25 3f 49 25 0d  05 0a 05 ed 0d 05 14 05  |ata%?I%.........|
00000870  e1 0d 05 1e 04 0d 05 28  3a dc 20 31 2c 31 2c 32  |.......(:. 1,1,2|
00000880  2c 33 2c 20 38 2c 39 2c  31 30 2c 31 31 2c 20 31  |,3, 8,9,10,11, 1|
00000890  36 34 2c 31 36 35 2c 31  36 36 2c 31 36 37 2c 20  |64,165,166,167, |
000008a0  32 31 36 2c 32 31 37 2c  32 31 38 2c 32 31 39 0d  |216,217,218,219.|
000008b0  05 32 3c dc 20 31 2c 31  2c 32 2c 33 2c 20 34 34  |.2<. 1,1,2,3, 44|
000008c0  2c 34 35 2c 34 36 2c 34  37 2c 20 32 30 38 2c 32  |,45,46,47, 208,2|
000008d0  30 39 2c 32 31 30 2c 32  31 31 2c 20 32 35 32 2c  |09,210,211, 252,|
000008e0  32 35 33 2c 32 35 34 2c  32 35 35 0d 05 3c 3a dc  |253,254,255..<:.|
000008f0  20 31 2c 31 2c 32 2c 33  2c 20 38 2c 39 2c 31 30  | 1,1,2,3, 8,9,10|
00000900  2c 31 31 2c 20 31 36 34  2c 31 36 35 2c 31 36 36  |,11, 164,165,166|
00000910  2c 31 36 37 2c 20 32 31  36 2c 32 31 37 2c 32 31  |,167, 216,217,21|
00000920  38 2c 32 31 39 0d 05 46  04 0d 05 50 0a dd f2 73  |8,219..F...P...s|
00000930  63 72 6e 0d 05 5a 16 de  20 62 6c 6f 63 6b 25 20  |crn..Z.. block% |
00000940  31 35 2c 62 32 25 20 31  35 0d 05 64 10 62 6c 6f  |15,b2% 15..d.blo|
00000950  63 6b 25 21 30 3d 31 34  38 0d 05 6e 0e 62 6c 6f  |ck%!0=148..n.blo|
00000960  63 6b 25 21 34 3d 37 0d  05 78 0e 62 6c 6f 63 6b  |ck%!4=7..x.block|
00000970  25 21 38 3d 36 0d 05 82  10 62 6c 6f 63 6b 25 21  |%!8=6....block%!|
00000980  31 32 3d 2d 31 0d 05 8c  27 c8 99 20 22 4f 53 5f  |12=-1...'.. "OS_|
00000990  52 65 61 64 56 64 75 56  61 72 69 61 62 6c 65 73  |ReadVduVariables|
000009a0  22 2c 62 6c 6f 63 6b 25  2c 62 32 25 0d 05 96 11  |",block%,b2%....|
000009b0  73 63 72 65 65 6e 25 3d  62 32 25 21 30 0d 05 a0  |screen%=b2%!0...|
000009c0  05 e1 0d ff                                       |....|
000009c4