Home » Archimedes archive » Acorn User » AU 1997-02 B.adf » Regulars » StarInfo/Smale/Granite/GRANITE6

StarInfo/Smale/Granite/GRANITE6

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-02 B.adf » Regulars
Filename: StarInfo/Smale/Granite/GRANITE6
Read OK:
File size: 0AAB bytes
Load address: 0000
Exec address: 0000
File contents
   10MODE13:OFF
   20DIMcode 4096+16+81920
   30ONERRORREPORT:PRINT" at line ";ERL:END
   40PROCscrn
   50PROCcols
   60link=14
   70sp=13
   80screen=12
   90FORpass=0TO2STEP2
  100P%=code
  110[OPT pass
  120.granite STMFD (sp)!,{link}
  130LDR screen,scrn
  140MOV R1,#253
  150.yloop MOV R0,#1
  160.xloop ADD R2,R0,R1,LSL#6
  170ADD R2,R2,R1,LSL#8
  180ADD R2,R2,screen
  190SUB R2,R2,#4
  200LDRB R4,[R2,#0]
  210LDRB R3,[R2,#320*2]
  220ADD R4,R4,R3
  230ADD R2,R2,#2
  240LDRB R3,[R2,#320]
  250ADD R4,R4,R3
  260ADD R2,R2,#2
  270LDRB R3,[R2,#320*2]
  280ADD R4,R4,R3
  290MOV R4,R4,LSL#8-2
  300BL rnd
  310SUB R7,R7,#113
  320ADD R4,R4,R7,ASL#3
  330CMP R4,#0
  340LDRLT R4,oldcol%
  350BLT maus
  360MOVGE R4,R4,ASR#8
  370CMP R4,#16
  380BLGE mod16
  390STRLT R4,oldcol%
  400.maus SUB R2,R2,#1
  410STRB R4,[R2,#0]
  420ADD R0,R0,#2
  430CMP R0,#320
  440SUBLT R0,R0,#1
  450BLT xloop
  460SUB R1,R1,#1
  470CMP R1,#1
  480BGT yloop
  490MOV R0,#1
  500STR R0,counter
  510.smudge LDR R1,otherscrn
  520MOV R0,screen
  530ADD R1,R1,#1
  540ADD R0,R0,#320
  550ADD R1,R1,#320
  560ADD R11,R0,#81920
  570SUB R11,R11,#1
  580SUB R11,R11,#320*2
  590.smudgelp LDRB R2,[R0,#0]
  600LDRB R3,[R0,#1]
  610LDRB R4,[R0,#2]
  620SUB R0,R0,#320
  630ADD R0,R0,#1
  640LDRB R5,[R0],#640
  650LDRB R6,[R0,#0]
  660SUB R0,R0,#320
  670SUB R0,R0,#1
  680ADD R3,R3,R2
  690ADD R3,R3,R4
  700ADD R3,R3,R5
  710ADD R3,R3,R6
  720MOV R7,#14
  730MUL R2,R3,R7
  740MOV R2,R2,LSR#6
  750STRB R2,[R1],#1
  760ADD R0,R0,#1
  770CMP R0,R11
  780BLT smudgelp
  790LDR R1,otherscrn
  800ADD R1,R1,#320
  810ADD R0,screen,#320
  820ADD R11,R0,#81920
  830SUB R11,R11,#640
  840.copyloop LDMIA R1!,{R2-R9}
  850STMIA R0!,{R2-R9}
  860CMP R0,R11
  870BLT copyloop
  880LDR R0,counter
  890CMP R0,#2
  900ADDLE R0,R0,#1
  910STRLE R0,counter
  920BLE smudge
  930LDR R5,coldata
  940MOV R0,screen
  950ADD R1,R0,#81920
  960.changelp LDRB R2,[R0,#0]
  970LDRB R6,[R5,R2]
  980STRB R6,[R0],#1
  990CMP R0,R1
 1000BLT changelp
 1010.fini LDMFD (sp)!,{PC}
 1020.coldata EQUD code+4096
 1030.scrn EQUD screen%
 1040.oldcol%EQUD 0
 1050.otherscrn EQUD code+4096+16
 1060.counter EQUD 0
 1070.mod16 SUB R4,R4,#16
 1080CMP R4,#16
 1090BGE mod16
 1100MOV PC,R14
 1110.rnd LDR R7,seed
 1120LDR R8,c1
 1130LDR R9,c2
 1140MLA R7,R8,R7,R9
 1150MLA R10,R8,R7,R9
 1160STR R10,seed
 1170EOR R7,R7,R10,ROR#16
 1180MOV R8,#256
 1190SUB R8,R8,#1
 1200AND R7,R7,R8
 1210MOV PC,R14
 1220.c1 EQUD 1664525
 1230.c2 EQUD 907633393
 1240.seed EQUD TIME
 1250.rnd%EQUD 0
 1260]
 1270NEXT
 1280CALLgranite
 1290GCOL 0 TINT 0
 1300RECTANGLEFILL 0,1024,1279,-12
 1310END
 1320DEFPROCcols
 1330data%=code+4096
 1340FORI%=0TO15
 1350READdata%?I%
 1360NEXT
 1370ENDPROC
 1380DATA 0,0,1,2, 8,9,10,11, 164,165,166,167, 216,217,218,219
 1390DATA 0,1,2,3, 44,45,46,47, 208,209,210,211, 252,253,254,255
 1400DEFPROCscrn
 1410DIMblock%15,b2%15
 1420block%!0=148
 1430block%!4=7
 1440block%!8=6
 1450block%!12=-1
 1460SYS"OS_ReadVduVariables",block%,b2%
 1470block%!0=148
 1480block%!4=7
 1490block%!8=6
 1500block%!12=-1
 1510SYS"OS_ReadVduVariables",block%,b2%
 1520screen%=b2%!0
 1530ENDPROC

	�13:�
�code 4096+16+81920
�:�" at line ";�:�
(	�scrn
2	�cols
<link=14
F	sp=13
P
screen=12
Z�pass=0�2�2
dP%=code
n
[OPT pass
x.granite STMFD (sp)!,{link}
�LDR screen,scrn
�MOV R1,#253
�.yloop MOV R0,#1
�.xloop ADD R2,R0,R1,LSL#6
�ADD R2,R2,R1,LSL#8
�ADD R2,R2,screen
�SUB R2,R2,#4
�LDRB R4,[R2,#0]
�LDRB R3,[R2,#320*2]
�ADD R4,R4,R3
�ADD R2,R2,#2
�LDRB R3,[R2,#320]
�ADD R4,R4,R3
ADD R2,R2,#2
LDRB R3,[R2,#320*2]
ADD R4,R4,R3
"MOV R4,R4,LSL#8-2
,
BL rnd
6SUB R7,R7,#113
@ADD R4,R4,R7,ASL#3
J
CMP R4,#0
TLDRLT R4,oldcol%
^BLT maus
hMOVGE R4,R4,ASR#8
rCMP R4,#16
|BLGE mod16
�STRLT R4,oldcol%
�.maus SUB R2,R2,#1
�STRB R4,[R2,#0]
�ADD R0,R0,#2
�CMP R0,#320
�SUBLT R0,R0,#1
�
BLT xloop
�SUB R1,R1,#1
�
CMP R1,#1
�
BGT yloop
�
MOV R0,#1
�STR R0,counter
�.smudge LDR R1,otherscrn
MOV R0,screen
ADD R1,R1,#1
ADD R0,R0,#320
&ADD R1,R1,#320
0ADD R11,R0,#81920
:SUB R11,R11,#1
DSUB R11,R11,#320*2
N.smudgelp LDRB R2,[R0,#0]
XLDRB R3,[R0,#1]
bLDRB R4,[R0,#2]
lSUB R0,R0,#320
vADD R0,R0,#1
�LDRB R5,[R0],#640
�LDRB R6,[R0,#0]
�SUB R0,R0,#320
�SUB R0,R0,#1
�ADD R3,R3,R2
�ADD R3,R3,R4
�ADD R3,R3,R5
�ADD R3,R3,R6
�MOV R7,#14
�MUL R2,R3,R7
�MOV R2,R2,LSR#6
�STRB R2,[R1],#1
�ADD R0,R0,#1
CMP R0,R11
BLT smudgelp
LDR R1,otherscrn
 ADD R1,R1,#320
*ADD R0,screen,#320
4ADD R11,R0,#81920
>SUB R11,R11,#640
H.copyloop LDMIA R1!,{R2-R9}
RSTMIA R0!,{R2-R9}
\CMP R0,R11
fBLT copyloop
pLDR R0,counter
z
CMP R0,#2
�ADDLE R0,R0,#1
�STRLE R0,counter
�BLE smudge
�LDR R5,coldata
�MOV R0,screen
�ADD R1,R0,#81920
�.changelp LDRB R2,[R0,#0]
�LDRB R6,[R5,R2]
�STRB R6,[R0],#1
�
CMP R0,R1
�BLT changelp
�.fini LDMFD (sp)!,{PC}
�.coldata EQUD code+4096
.scrn EQUD screen%
.oldcol%EQUD 0
 .otherscrn EQUD code+4096+16
$.counter EQUD 0
..mod16 SUB R4,R4,#16
8CMP R4,#16
B
BGE mod16
LMOV PC,R14
V.rnd LDR R7,seed
`
LDR R8,c1
j
LDR R9,c2
tMLA R7,R8,R7,R9
~MLA R10,R8,R7,R9
�STR R10,seed
�� R7,R7,R10,ROR#16
�MOV R8,#256
�SUB R8,R8,#1
�� R7,R7,R8
�MOV PC,R14
�.c1 EQUD 1664525
�.c2 EQUD 907633393
�.seed EQUD �
�.rnd%EQUD 0
�]
��
�granite

� 0 Ȝ 0
ȓȐ 0,1024,1279,-12
�
(
��cols
2data%=code+4096
<�I%=0�15
F
�data%?I%
P�
Z�
d:� 0,0,1,2, 8,9,10,11, 164,165,166,167, 216,217,218,219
n<� 0,1,2,3, 44,45,46,47, 208,209,210,211, 252,253,254,255
x
��scrn
��block%15,b2%15
�block%!0=148
�block%!4=7
�block%!8=6
�block%!12=-1
�&ș"OS_ReadVduVariables",block%,b2%
�block%!0=148
�block%!4=7
�block%!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 17 de 63 6f  |.....13:......co|
00000010  64 65 20 34 30 39 36 2b  31 36 2b 38 31 39 32 30  |de 4096+16+81920|
00000020  0d 00 1e 18 ee 85 f6 3a  f1 22 20 61 74 20 6c 69  |.......:." at li|
00000030  6e 65 20 22 3b 9e 3a e0  0d 00 28 09 f2 73 63 72  |ne ";.:...(..scr|
00000040  6e 0d 00 32 09 f2 63 6f  6c 73 0d 00 3c 0b 6c 69  |n..2..cols..<.li|
00000050  6e 6b 3d 31 34 0d 00 46  09 73 70 3d 31 33 0d 00  |nk=14..F.sp=13..|
00000060  50 0d 73 63 72 65 65 6e  3d 31 32 0d 00 5a 0f e3  |P.screen=12..Z..|
00000070  70 61 73 73 3d 30 b8 32  88 32 0d 00 64 0b 50 25  |pass=0.2.2..d.P%|
00000080  3d 63 6f 64 65 0d 00 6e  0d 5b 4f 50 54 20 70 61  |=code..n.[OPT pa|
00000090  73 73 0d 00 78 1f 2e 67  72 61 6e 69 74 65 20 53  |ss..x..granite S|
000000a0  54 4d 46 44 20 28 73 70  29 21 2c 7b 6c 69 6e 6b  |TMFD (sp)!,{link|
000000b0  7d 0d 00 82 13 4c 44 52  20 73 63 72 65 65 6e 2c  |}....LDR screen,|
000000c0  73 63 72 6e 0d 00 8c 0f  4d 4f 56 20 52 31 2c 23  |scrn....MOV R1,#|
000000d0  32 35 33 0d 00 96 14 2e  79 6c 6f 6f 70 20 4d 4f  |253.....yloop MO|
000000e0  56 20 52 30 2c 23 31 0d  00 a0 1d 2e 78 6c 6f 6f  |V R0,#1.....xloo|
000000f0  70 20 41 44 44 20 52 32  2c 52 30 2c 52 31 2c 4c  |p ADD R2,R0,R1,L|
00000100  53 4c 23 36 0d 00 aa 16  41 44 44 20 52 32 2c 52  |SL#6....ADD R2,R|
00000110  32 2c 52 31 2c 4c 53 4c  23 38 0d 00 b4 14 41 44  |2,R1,LSL#8....AD|
00000120  44 20 52 32 2c 52 32 2c  73 63 72 65 65 6e 0d 00  |D R2,R2,screen..|
00000130  be 10 53 55 42 20 52 32  2c 52 32 2c 23 34 0d 00  |..SUB R2,R2,#4..|
00000140  c8 13 4c 44 52 42 20 52  34 2c 5b 52 32 2c 23 30  |..LDRB R4,[R2,#0|
00000150  5d 0d 00 d2 17 4c 44 52  42 20 52 33 2c 5b 52 32  |]....LDRB R3,[R2|
00000160  2c 23 33 32 30 2a 32 5d  0d 00 dc 10 41 44 44 20  |,#320*2]....ADD |
00000170  52 34 2c 52 34 2c 52 33  0d 00 e6 10 41 44 44 20  |R4,R4,R3....ADD |
00000180  52 32 2c 52 32 2c 23 32  0d 00 f0 15 4c 44 52 42  |R2,R2,#2....LDRB|
00000190  20 52 33 2c 5b 52 32 2c  23 33 32 30 5d 0d 00 fa  | R3,[R2,#320]...|
000001a0  10 41 44 44 20 52 34 2c  52 34 2c 52 33 0d 01 04  |.ADD R4,R4,R3...|
000001b0  10 41 44 44 20 52 32 2c  52 32 2c 23 32 0d 01 0e  |.ADD R2,R2,#2...|
000001c0  17 4c 44 52 42 20 52 33  2c 5b 52 32 2c 23 33 32  |.LDRB R3,[R2,#32|
000001d0  30 2a 32 5d 0d 01 18 10  41 44 44 20 52 34 2c 52  |0*2]....ADD R4,R|
000001e0  34 2c 52 33 0d 01 22 15  4d 4f 56 20 52 34 2c 52  |4,R3..".MOV R4,R|
000001f0  34 2c 4c 53 4c 23 38 2d  32 0d 01 2c 0a 42 4c 20  |4,LSL#8-2..,.BL |
00000200  72 6e 64 0d 01 36 12 53  55 42 20 52 37 2c 52 37  |rnd..6.SUB R7,R7|
00000210  2c 23 31 31 33 0d 01 40  16 41 44 44 20 52 34 2c  |,#113..@.ADD R4,|
00000220  52 34 2c 52 37 2c 41 53  4c 23 33 0d 01 4a 0d 43  |R4,R7,ASL#3..J.C|
00000230  4d 50 20 52 34 2c 23 30  0d 01 54 14 4c 44 52 4c  |MP R4,#0..T.LDRL|
00000240  54 20 52 34 2c 6f 6c 64  63 6f 6c 25 0d 01 5e 0c  |T R4,oldcol%..^.|
00000250  42 4c 54 20 6d 61 75 73  0d 01 68 15 4d 4f 56 47  |BLT maus..h.MOVG|
00000260  45 20 52 34 2c 52 34 2c  41 53 52 23 38 0d 01 72  |E R4,R4,ASR#8..r|
00000270  0e 43 4d 50 20 52 34 2c  23 31 36 0d 01 7c 0e 42  |.CMP R4,#16..|.B|
00000280  4c 47 45 20 6d 6f 64 31  36 0d 01 86 14 53 54 52  |LGE mod16....STR|
00000290  4c 54 20 52 34 2c 6f 6c  64 63 6f 6c 25 0d 01 90  |LT R4,oldcol%...|
000002a0  16 2e 6d 61 75 73 20 53  55 42 20 52 32 2c 52 32  |..maus SUB R2,R2|
000002b0  2c 23 31 0d 01 9a 13 53  54 52 42 20 52 34 2c 5b  |,#1....STRB R4,[|
000002c0  52 32 2c 23 30 5d 0d 01  a4 10 41 44 44 20 52 30  |R2,#0]....ADD R0|
000002d0  2c 52 30 2c 23 32 0d 01  ae 0f 43 4d 50 20 52 30  |,R0,#2....CMP R0|
000002e0  2c 23 33 32 30 0d 01 b8  12 53 55 42 4c 54 20 52  |,#320....SUBLT R|
000002f0  30 2c 52 30 2c 23 31 0d  01 c2 0d 42 4c 54 20 78  |0,R0,#1....BLT x|
00000300  6c 6f 6f 70 0d 01 cc 10  53 55 42 20 52 31 2c 52  |loop....SUB R1,R|
00000310  31 2c 23 31 0d 01 d6 0d  43 4d 50 20 52 31 2c 23  |1,#1....CMP R1,#|
00000320  31 0d 01 e0 0d 42 47 54  20 79 6c 6f 6f 70 0d 01  |1....BGT yloop..|
00000330  ea 0d 4d 4f 56 20 52 30  2c 23 31 0d 01 f4 12 53  |..MOV R0,#1....S|
00000340  54 52 20 52 30 2c 63 6f  75 6e 74 65 72 0d 01 fe  |TR R0,counter...|
00000350  1c 2e 73 6d 75 64 67 65  20 4c 44 52 20 52 31 2c  |..smudge LDR R1,|
00000360  6f 74 68 65 72 73 63 72  6e 0d 02 08 11 4d 4f 56  |otherscrn....MOV|
00000370  20 52 30 2c 73 63 72 65  65 6e 0d 02 12 10 41 44  | R0,screen....AD|
00000380  44 20 52 31 2c 52 31 2c  23 31 0d 02 1c 12 41 44  |D R1,R1,#1....AD|
00000390  44 20 52 30 2c 52 30 2c  23 33 32 30 0d 02 26 12  |D R0,R0,#320..&.|
000003a0  41 44 44 20 52 31 2c 52  31 2c 23 33 32 30 0d 02  |ADD R1,R1,#320..|
000003b0  30 15 41 44 44 20 52 31  31 2c 52 30 2c 23 38 31  |0.ADD R11,R0,#81|
000003c0  39 32 30 0d 02 3a 12 53  55 42 20 52 31 31 2c 52  |920..:.SUB R11,R|
000003d0  31 31 2c 23 31 0d 02 44  16 53 55 42 20 52 31 31  |11,#1..D.SUB R11|
000003e0  2c 52 31 31 2c 23 33 32  30 2a 32 0d 02 4e 1d 2e  |,R11,#320*2..N..|
000003f0  73 6d 75 64 67 65 6c 70  20 4c 44 52 42 20 52 32  |smudgelp LDRB R2|
00000400  2c 5b 52 30 2c 23 30 5d  0d 02 58 13 4c 44 52 42  |,[R0,#0]..X.LDRB|
00000410  20 52 33 2c 5b 52 30 2c  23 31 5d 0d 02 62 13 4c  | R3,[R0,#1]..b.L|
00000420  44 52 42 20 52 34 2c 5b  52 30 2c 23 32 5d 0d 02  |DRB R4,[R0,#2]..|
00000430  6c 12 53 55 42 20 52 30  2c 52 30 2c 23 33 32 30  |l.SUB R0,R0,#320|
00000440  0d 02 76 10 41 44 44 20  52 30 2c 52 30 2c 23 31  |..v.ADD R0,R0,#1|
00000450  0d 02 80 15 4c 44 52 42  20 52 35 2c 5b 52 30 5d  |....LDRB R5,[R0]|
00000460  2c 23 36 34 30 0d 02 8a  13 4c 44 52 42 20 52 36  |,#640....LDRB R6|
00000470  2c 5b 52 30 2c 23 30 5d  0d 02 94 12 53 55 42 20  |,[R0,#0]....SUB |
00000480  52 30 2c 52 30 2c 23 33  32 30 0d 02 9e 10 53 55  |R0,R0,#320....SU|
00000490  42 20 52 30 2c 52 30 2c  23 31 0d 02 a8 10 41 44  |B R0,R0,#1....AD|
000004a0  44 20 52 33 2c 52 33 2c  52 32 0d 02 b2 10 41 44  |D R3,R3,R2....AD|
000004b0  44 20 52 33 2c 52 33 2c  52 34 0d 02 bc 10 41 44  |D R3,R3,R4....AD|
000004c0  44 20 52 33 2c 52 33 2c  52 35 0d 02 c6 10 41 44  |D R3,R3,R5....AD|
000004d0  44 20 52 33 2c 52 33 2c  52 36 0d 02 d0 0e 4d 4f  |D R3,R3,R6....MO|
000004e0  56 20 52 37 2c 23 31 34  0d 02 da 10 4d 55 4c 20  |V R7,#14....MUL |
000004f0  52 32 2c 52 33 2c 52 37  0d 02 e4 13 4d 4f 56 20  |R2,R3,R7....MOV |
00000500  52 32 2c 52 32 2c 4c 53  52 23 36 0d 02 ee 13 53  |R2,R2,LSR#6....S|
00000510  54 52 42 20 52 32 2c 5b  52 31 5d 2c 23 31 0d 02  |TRB R2,[R1],#1..|
00000520  f8 10 41 44 44 20 52 30  2c 52 30 2c 23 31 0d 03  |..ADD R0,R0,#1..|
00000530  02 0e 43 4d 50 20 52 30  2c 52 31 31 0d 03 0c 10  |..CMP R0,R11....|
00000540  42 4c 54 20 73 6d 75 64  67 65 6c 70 0d 03 16 14  |BLT smudgelp....|
00000550  4c 44 52 20 52 31 2c 6f  74 68 65 72 73 63 72 6e  |LDR R1,otherscrn|
00000560  0d 03 20 12 41 44 44 20  52 31 2c 52 31 2c 23 33  |.. .ADD R1,R1,#3|
00000570  32 30 0d 03 2a 16 41 44  44 20 52 30 2c 73 63 72  |20..*.ADD R0,scr|
00000580  65 65 6e 2c 23 33 32 30  0d 03 34 15 41 44 44 20  |een,#320..4.ADD |
00000590  52 31 31 2c 52 30 2c 23  38 31 39 32 30 0d 03 3e  |R11,R0,#81920..>|
000005a0  14 53 55 42 20 52 31 31  2c 52 31 31 2c 23 36 34  |.SUB R11,R11,#64|
000005b0  30 0d 03 48 1f 2e 63 6f  70 79 6c 6f 6f 70 20 4c  |0..H..copyloop L|
000005c0  44 4d 49 41 20 52 31 21  2c 7b 52 32 2d 52 39 7d  |DMIA R1!,{R2-R9}|
000005d0  0d 03 52 15 53 54 4d 49  41 20 52 30 21 2c 7b 52  |..R.STMIA R0!,{R|
000005e0  32 2d 52 39 7d 0d 03 5c  0e 43 4d 50 20 52 30 2c  |2-R9}..\.CMP R0,|
000005f0  52 31 31 0d 03 66 10 42  4c 54 20 63 6f 70 79 6c  |R11..f.BLT copyl|
00000600  6f 6f 70 0d 03 70 12 4c  44 52 20 52 30 2c 63 6f  |oop..p.LDR R0,co|
00000610  75 6e 74 65 72 0d 03 7a  0d 43 4d 50 20 52 30 2c  |unter..z.CMP R0,|
00000620  23 32 0d 03 84 12 41 44  44 4c 45 20 52 30 2c 52  |#2....ADDLE R0,R|
00000630  30 2c 23 31 0d 03 8e 14  53 54 52 4c 45 20 52 30  |0,#1....STRLE R0|
00000640  2c 63 6f 75 6e 74 65 72  0d 03 98 0e 42 4c 45 20  |,counter....BLE |
00000650  73 6d 75 64 67 65 0d 03  a2 12 4c 44 52 20 52 35  |smudge....LDR R5|
00000660  2c 63 6f 6c 64 61 74 61  0d 03 ac 11 4d 4f 56 20  |,coldata....MOV |
00000670  52 30 2c 73 63 72 65 65  6e 0d 03 b6 14 41 44 44  |R0,screen....ADD|
00000680  20 52 31 2c 52 30 2c 23  38 31 39 32 30 0d 03 c0  | R1,R0,#81920...|
00000690  1d 2e 63 68 61 6e 67 65  6c 70 20 4c 44 52 42 20  |..changelp LDRB |
000006a0  52 32 2c 5b 52 30 2c 23  30 5d 0d 03 ca 13 4c 44  |R2,[R0,#0]....LD|
000006b0  52 42 20 52 36 2c 5b 52  35 2c 52 32 5d 0d 03 d4  |RB R6,[R5,R2]...|
000006c0  13 53 54 52 42 20 52 36  2c 5b 52 30 5d 2c 23 31  |.STRB R6,[R0],#1|
000006d0  0d 03 de 0d 43 4d 50 20  52 30 2c 52 31 0d 03 e8  |....CMP R0,R1...|
000006e0  10 42 4c 54 20 63 68 61  6e 67 65 6c 70 0d 03 f2  |.BLT changelp...|
000006f0  1a 2e 66 69 6e 69 20 4c  44 4d 46 44 20 28 73 70  |..fini LDMFD (sp|
00000700  29 21 2c 7b 50 43 7d 0d  03 fc 1b 2e 63 6f 6c 64  |)!,{PC}.....cold|
00000710  61 74 61 20 45 51 55 44  20 63 6f 64 65 2b 34 30  |ata EQUD code+40|
00000720  39 36 0d 04 06 16 2e 73  63 72 6e 20 45 51 55 44  |96.....scrn EQUD|
00000730  20 73 63 72 65 65 6e 25  0d 04 10 12 2e 6f 6c 64  | screen%.....old|
00000740  63 6f 6c 25 45 51 55 44  20 30 0d 04 1a 20 2e 6f  |col%EQUD 0... .o|
00000750  74 68 65 72 73 63 72 6e  20 45 51 55 44 20 63 6f  |therscrn EQUD co|
00000760  64 65 2b 34 30 39 36 2b  31 36 0d 04 24 13 2e 63  |de+4096+16..$..c|
00000770  6f 75 6e 74 65 72 20 45  51 55 44 20 30 0d 04 2e  |ounter EQUD 0...|
00000780  18 2e 6d 6f 64 31 36 20  53 55 42 20 52 34 2c 52  |..mod16 SUB R4,R|
00000790  34 2c 23 31 36 0d 04 38  0e 43 4d 50 20 52 34 2c  |4,#16..8.CMP R4,|
000007a0  23 31 36 0d 04 42 0d 42  47 45 20 6d 6f 64 31 36  |#16..B.BGE mod16|
000007b0  0d 04 4c 0e 4d 4f 56 20  50 43 2c 52 31 34 0d 04  |..L.MOV PC,R14..|
000007c0  56 14 2e 72 6e 64 20 4c  44 52 20 52 37 2c 73 65  |V..rnd LDR R7,se|
000007d0  65 64 0d 04 60 0d 4c 44  52 20 52 38 2c 63 31 0d  |ed..`.LDR R8,c1.|
000007e0  04 6a 0d 4c 44 52 20 52  39 2c 63 32 0d 04 74 13  |.j.LDR R9,c2..t.|
000007f0  4d 4c 41 20 52 37 2c 52  38 2c 52 37 2c 52 39 0d  |MLA R7,R8,R7,R9.|
00000800  04 7e 14 4d 4c 41 20 52  31 30 2c 52 38 2c 52 37  |.~.MLA R10,R8,R7|
00000810  2c 52 39 0d 04 88 10 53  54 52 20 52 31 30 2c 73  |,R9....STR R10,s|
00000820  65 65 64 0d 04 92 16 82  20 52 37 2c 52 37 2c 52  |eed..... R7,R7,R|
00000830  31 30 2c 52 4f 52 23 31  36 0d 04 9c 0f 4d 4f 56  |10,ROR#16....MOV|
00000840  20 52 38 2c 23 32 35 36  0d 04 a6 10 53 55 42 20  | R8,#256....SUB |
00000850  52 38 2c 52 38 2c 23 31  0d 04 b0 0e 80 20 52 37  |R8,R8,#1..... R7|
00000860  2c 52 37 2c 52 38 0d 04  ba 0e 4d 4f 56 20 50 43  |,R7,R8....MOV PC|
00000870  2c 52 31 34 0d 04 c4 14  2e 63 31 20 45 51 55 44  |,R14.....c1 EQUD|
00000880  20 31 36 36 34 35 32 35  0d 04 ce 16 2e 63 32 20  | 1664525.....c2 |
00000890  45 51 55 44 20 39 30 37  36 33 33 33 39 33 0d 04  |EQUD 907633393..|
000008a0  d8 10 2e 73 65 65 64 20  45 51 55 44 20 91 0d 04  |...seed EQUD ...|
000008b0  e2 0f 2e 72 6e 64 25 45  51 55 44 20 30 0d 04 ec  |...rnd%EQUD 0...|
000008c0  05 5d 0d 04 f6 05 ed 0d  05 00 0c d6 67 72 61 6e  |.]..........gran|
000008d0  69 74 65 0d 05 0a 0c e6  20 30 20 c8 9c 20 30 0d  |ite..... 0 .. 0.|
000008e0  05 14 18 c8 93 c8 90 20  30 2c 31 30 32 34 2c 31  |....... 0,1024,1|
000008f0  32 37 39 2c 2d 31 32 0d  05 1e 05 e0 0d 05 28 0a  |279,-12.......(.|
00000900  dd f2 63 6f 6c 73 0d 05  32 13 64 61 74 61 25 3d  |..cols..2.data%=|
00000910  63 6f 64 65 2b 34 30 39  36 0d 05 3c 0c e3 49 25  |code+4096..<..I%|
00000920  3d 30 b8 31 35 0d 05 46  0d f3 64 61 74 61 25 3f  |=0.15..F..data%?|
00000930  49 25 0d 05 50 05 ed 0d  05 5a 05 e1 0d 05 64 3a  |I%..P....Z....d:|
00000940  dc 20 30 2c 30 2c 31 2c  32 2c 20 38 2c 39 2c 31  |. 0,0,1,2, 8,9,1|
00000950  30 2c 31 31 2c 20 31 36  34 2c 31 36 35 2c 31 36  |0,11, 164,165,16|
00000960  36 2c 31 36 37 2c 20 32  31 36 2c 32 31 37 2c 32  |6,167, 216,217,2|
00000970  31 38 2c 32 31 39 0d 05  6e 3c dc 20 30 2c 31 2c  |18,219..n<. 0,1,|
00000980  32 2c 33 2c 20 34 34 2c  34 35 2c 34 36 2c 34 37  |2,3, 44,45,46,47|
00000990  2c 20 32 30 38 2c 32 30  39 2c 32 31 30 2c 32 31  |, 208,209,210,21|
000009a0  31 2c 20 32 35 32 2c 32  35 33 2c 32 35 34 2c 32  |1, 252,253,254,2|
000009b0  35 35 0d 05 78 0a dd f2  73 63 72 6e 0d 05 82 13  |55..x...scrn....|
000009c0  de 62 6c 6f 63 6b 25 31  35 2c 62 32 25 31 35 0d  |.block%15,b2%15.|
000009d0  05 8c 10 62 6c 6f 63 6b  25 21 30 3d 31 34 38 0d  |...block%!0=148.|
000009e0  05 96 0e 62 6c 6f 63 6b  25 21 34 3d 37 0d 05 a0  |...block%!4=7...|
000009f0  0e 62 6c 6f 63 6b 25 21  38 3d 36 0d 05 aa 10 62  |.block%!8=6....b|
00000a00  6c 6f 63 6b 25 21 31 32  3d 2d 31 0d 05 b4 26 c8  |lock%!12=-1...&.|
00000a10  99 22 4f 53 5f 52 65 61  64 56 64 75 56 61 72 69  |."OS_ReadVduVari|
00000a20  61 62 6c 65 73 22 2c 62  6c 6f 63 6b 25 2c 62 32  |ables",block%,b2|
00000a30  25 0d 05 be 10 62 6c 6f  63 6b 25 21 30 3d 31 34  |%....block%!0=14|
00000a40  38 0d 05 c8 0e 62 6c 6f  63 6b 25 21 34 3d 37 0d  |8....block%!4=7.|
00000a50  05 d2 0e 62 6c 6f 63 6b  25 21 38 3d 36 0d 05 dc  |...block%!8=6...|
00000a60  10 62 6c 6f 63 6b 25 21  31 32 3d 2d 31 0d 05 e6  |.block%!12=-1...|
00000a70  26 c8 99 22 4f 53 5f 52  65 61 64 56 64 75 56 61  |&.."OS_ReadVduVa|
00000a80  72 69 61 62 6c 65 73 22  2c 62 6c 6f 63 6b 25 2c  |riables",block%,|
00000a90  62 32 25 0d 05 f0 11 73  63 72 65 65 6e 25 3d 62  |b2%....screen%=b|
00000aa0  32 25 21 30 0d 05 fa 05  e1 0d ff                 |2%!0.......|
00000aab