Home » Archimedes archive » Acorn User » AU 1994-05.adf » !Risc_Risc » Sheet3

Sheet3

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-05.adf » !Risc_Risc
Filename: Sheet3
Read OK:
File size: 098A bytes
Load address: 0000
Exec address: 0000
File contents
   10REM >Sheet3
   20MODE "X320 Y256 C16M":OFF
   30size=64
   40COLOUR 128:CLS
   50MOUSE OFF
   60PROCass
   70DIM rf(3),gf(3),bf(3)
   80FOR i=0 TO 3
   90 rf(i)=(RND(1)*5+1)
  100 gf(i)=(RND(1)*5+1)
  110 bf(i)=(RND(1)*5+1)
  120NEXT
  130a=0
  140REPEAT
  150 c=cols
  160 FOR i=0 TO 3
  170  c?0=127+127*SIN(a*rf(i))
  180  c?1=127+127*SIN(a*gf(i))
  190  c?2=127+127*SIN(a*bf(i))
  200  c+=4
  210 NEXT
  220 WAIT:CALL go
  230 a+=0.02
  240UNTIL 0
  250
  260
  270!rgbT=&000000
  280!rgbB=&FF0000
  290!rgbL=&000000
  300!rgbR=&0000FF
  310CALL go
  320END
  330:
  340DEF PROCass
  350DIM code 4000
  360sp=13
  370lr=14
  380pc=15
  390FOR pass=0 TO 2 STEP 2:P%=code
  400[OPT pass
  410.go
  420   STMFD sp !,{lr}
  430   STR   sp, SP
  440
  450   LDR   r12,scr
  460   MOV   r8,#size-1
  470
  480.row
  490
  500   LDRB  r0,rgbT+0
  510   LDRB  r1,rgbB+0
  520   FNdiv(0,1,8,2)
  530   LDRB  r0,rgbT+1
  540   LDRB  r1,rgbB+1
  550   FNdiv(0,1,8,3)
  560   LDRB  r0,rgbT+2
  570   LDRB  r1,rgbB+2
  580   FNdiv(0,1,8,4)
  590
  600   MOV   r11,r12
  610   MOV   r9,#size-1
  620
  630   LDRB  r0,rgbL+0
  640   LDRB  r1,rgbR+0
  650
  660   LDRB  r5,rgbL+1
  670   LDRB  r6,rgbR+1
  680
  690   LDRB  r7,rgbL+2
  700   LDRB  r10,rgbR+2
  710.col
  720
  730   FNdiv(0,1,9,lr)
  740
  750   ADD   lr,r2,lr
  760   MOV   r13,lr,LSR #1
  770
  780   FNdiv(5,6,9,lr)
  790
  800   ADD   lr,r3,lr
  810   MOV   lr,lr,LSR #1
  820   ORR   r13,r13,lr,LSL #8
  830
  840   FNdiv(7,10,9,lr)
  850
  860   ADD   lr,r4,lr
  870   MOV   lr,lr,LSR #1
  880   ORR   r13,r13,lr,LSL #16
  890
  900   STR   r13,[r11],#4
  910
  920   SUBS  r9,r9,#1
  930   BPL   col
  940
  950   ADD   r12,r12,#320*4
  960
  970   SUBS  r8,r8,#1
  980   BPL   row
  990
 1000; COPY...
 1010   LDR   r12,scr
 1020   MOV   r8,#size-1
 1030   MOV   r6,#size*2-1
 1040   MOV   r0,#320*4
 1050   MUL   r6,r0,r6
 1060.rowc
 1070   MOV   r9,#size-1
 1080   MOV   r11,r12
 1090   MOV   r7,#size*2*4-4
 1100   ADD   r5,r6,r7
 1110.colc
 1120   LDR   r0,[r11]
 1130   STR   r0,[r11,r7]
 1140   STR   r0,[r11,r6]
 1150   STR   r0,[r11,r5]
 1160
 1170   ADD   r11,r11,#4
 1180
 1190   SUB   r7,r7,#4*2
 1200   SUB   r5,r5,#4*2
 1210
 1220   SUBS  r9,r9,#1
 1230   BPL   colc
 1240
 1241   ADD   r12,r12,#320*4
 1250   SUB   r6,r6,#320*4*2
 1260
 1270   SUBS  r8,r8,#1
 1280   BPL   rowc
 1290
 1300
 1310
 1320
 1330
 1340   LDR   sp,SP
 1350   LDMFD sp !,{pc}
 1360
 1370
 1380
 1390.SP   EQUD 0
 1400
 1410
 1420.scr  EQUD 148
 1430      EQUD -1
 1440.cols
 1450.rgbT EQUD 0
 1460.rgbB EQUD 0
 1470.rgbL EQUD 0
 1480.rgbR EQUD 0
 1490]
 1500NEXT
 1510SYS "OS_ReadVduVariables",scr,scr
 1520REM!scr=!scr+((256-size)/2)*320*4+((320-size)/2)*4
 1530ENDPROC
 1540:
 1550DEF FNdiv(a,b,d,r)
 1560[OPT pass
 1570   SUB   r,a,b
 1580   MUL   r,d,r
 1590   ADD   r,b,r,ASR #(LNsize/LN2)
 1600]
 1610=""


� >Sheet3
� "X320 Y256 C16M":�
size=64
(� 128:�
2ȗ �
<�ass
F� rf(3),gf(3),bf(3)
P
� i=0 � 3
Z rf(i)=(�(1)*5+1)
d gf(i)=(�(1)*5+1)
n bf(i)=(�(1)*5+1)
x�
�a=0
��
� c=cols
� � i=0 � 3
�  c?0=127+127*�(a*rf(i))
�  c?1=127+127*�(a*gf(i))
�  c?2=127+127*�(a*bf(i))
�
  c+=4
� �
� Ȗ:� go
� a+=0.02
�� 0
�

!rgbT=&000000
!rgbB=&FF0000
"!rgbL=&000000
,!rgbR=&0000FF
6� go
@�
J:
T
� �ass
^� code 4000
h	sp=13
r	lr=14
|	pc=15
�� pass=0 � 2 � 2:P%=code
�
[OPT pass
�.go
�   STMFD sp !,{lr}
�   STR   sp, SP
�
�   LDR   r12,scr
�   MOV   r8,#size-1
�
�.row
�
�   LDRB  r0,rgbT+0
�   LDRB  r1,rgbB+0
   �div(0,1,8,2)
   LDRB  r0,rgbT+1
   LDRB  r1,rgbB+1
&   �div(0,1,8,3)
0   LDRB  r0,rgbT+2
:   LDRB  r1,rgbB+2
D   �div(0,1,8,4)
N
X   MOV   r11,r12
b   MOV   r9,#size-1
l
v   LDRB  r0,rgbL+0
�   LDRB  r1,rgbR+0
�
�   LDRB  r5,rgbL+1
�   LDRB  r6,rgbR+1
�
�   LDRB  r7,rgbL+2
�   LDRB  r10,rgbR+2
�.col
�
�   �div(0,1,9,lr)
�
�   ADD   lr,r2,lr
�   MOV   r13,lr,LSR #1

   �div(5,6,9,lr)

    ADD   lr,r3,lr
*   MOV   lr,lr,LSR #1
4   �R   r13,r13,lr,LSL #8
>
H   �div(7,10,9,lr)
R
\   ADD   lr,r4,lr
f   MOV   lr,lr,LSR #1
p   �R   r13,r13,lr,LSL #16
z
�   STR   r13,[r11],#4
�
�   SUBS  r9,r9,#1
�   BPL   col
�
�   ADD   r12,r12,#320*4
�
�   SUBS  r8,r8,#1
�   BPL   row
�
�
; COPY...
�   LDR   r12,scr
�   MOV   r8,#size-1
   MOV   r6,#size*2-1
   MOV   r0,#320*4
   MUL   r6,r0,r6
$	.rowc
.   MOV   r9,#size-1
8   MOV   r11,r12
B   MOV   r7,#size*2*4-4
L   ADD   r5,r6,r7
V	.colc
`   LDR   r0,[r11]
j   STR   r0,[r11,r7]
t   STR   r0,[r11,r6]
~   STR   r0,[r11,r5]
�
�   ADD   r11,r11,#4
�
�   SUB   r7,r7,#4*2
�   SUB   r5,r5,#4*2
�
�   SUBS  r9,r9,#1
�   BPL   colc
�
�   ADD   r12,r12,#320*4
�   SUB   r6,r6,#320*4*2
�
�   SUBS  r8,r8,#1
   BPL   rowc




(
2
<   LDR   sp,SP
F   LDMFD sp !,{pc}
P
Z
d
n.SP   EQUD 0
x
�
�.scr  EQUD 148
�      EQUD -1
�	.cols
�.rgbT EQUD 0
�.rgbB EQUD 0
�.rgbL EQUD 0
�.rgbR EQUD 0
�]
��
�$ș "OS_ReadVduVariables",scr,scr
�4�!scr=!scr+((256-size)/2)*320*4+((320-size)/2)*4
��
:
� �div(a,b,d,r)

[OPT pass
"   SUB   r,a,b
,   MUL   r,d,r
6"   ADD   r,b,r,ASR #(�size/�2)
@]
J=""
�
00000000  0d 00 0a 0d f4 20 3e 53  68 65 65 74 33 0d 00 14  |..... >Sheet3...|
00000010  18 eb 20 22 58 33 32 30  20 59 32 35 36 20 43 31  |.. "X320 Y256 C1|
00000020  36 4d 22 3a 87 0d 00 1e  0b 73 69 7a 65 3d 36 34  |6M":.....size=64|
00000030  0d 00 28 0b fb 20 31 32  38 3a db 0d 00 32 08 c8  |..(.. 128:...2..|
00000040  97 20 87 0d 00 3c 08 f2  61 73 73 0d 00 46 17 de  |. ...<..ass..F..|
00000050  20 72 66 28 33 29 2c 67  66 28 33 29 2c 62 66 28  | rf(3),gf(3),bf(|
00000060  33 29 0d 00 50 0d e3 20  69 3d 30 20 b8 20 33 0d  |3)..P.. i=0 . 3.|
00000070  00 5a 15 20 72 66 28 69  29 3d 28 b3 28 31 29 2a  |.Z. rf(i)=(.(1)*|
00000080  35 2b 31 29 0d 00 64 15  20 67 66 28 69 29 3d 28  |5+1)..d. gf(i)=(|
00000090  b3 28 31 29 2a 35 2b 31  29 0d 00 6e 15 20 62 66  |.(1)*5+1)..n. bf|
000000a0  28 69 29 3d 28 b3 28 31  29 2a 35 2b 31 29 0d 00  |(i)=(.(1)*5+1)..|
000000b0  78 05 ed 0d 00 82 07 61  3d 30 0d 00 8c 05 f5 0d  |x......a=0......|
000000c0  00 96 0b 20 63 3d 63 6f  6c 73 0d 00 a0 0e 20 e3  |... c=cols.... .|
000000d0  20 69 3d 30 20 b8 20 33  0d 00 aa 1c 20 20 63 3f  | i=0 . 3....  c?|
000000e0  30 3d 31 32 37 2b 31 32  37 2a b5 28 61 2a 72 66  |0=127+127*.(a*rf|
000000f0  28 69 29 29 0d 00 b4 1c  20 20 63 3f 31 3d 31 32  |(i))....  c?1=12|
00000100  37 2b 31 32 37 2a b5 28  61 2a 67 66 28 69 29 29  |7+127*.(a*gf(i))|
00000110  0d 00 be 1c 20 20 63 3f  32 3d 31 32 37 2b 31 32  |....  c?2=127+12|
00000120  37 2a b5 28 61 2a 62 66  28 69 29 29 0d 00 c8 0a  |7*.(a*bf(i))....|
00000130  20 20 63 2b 3d 34 0d 00  d2 06 20 ed 0d 00 dc 0c  |  c+=4.... .....|
00000140  20 c8 96 3a d6 20 67 6f  0d 00 e6 0c 20 61 2b 3d  | ..:. go.... a+=|
00000150  30 2e 30 32 0d 00 f0 07  fd 20 30 0d 00 fa 04 0d  |0.02..... 0.....|
00000160  01 04 04 0d 01 0e 11 21  72 67 62 54 3d 26 30 30  |.......!rgbT=&00|
00000170  30 30 30 30 0d 01 18 11  21 72 67 62 42 3d 26 46  |0000....!rgbB=&F|
00000180  46 30 30 30 30 0d 01 22  11 21 72 67 62 4c 3d 26  |F0000..".!rgbL=&|
00000190  30 30 30 30 30 30 0d 01  2c 11 21 72 67 62 52 3d  |000000..,.!rgbR=|
000001a0  26 30 30 30 30 46 46 0d  01 36 08 d6 20 67 6f 0d  |&0000FF..6.. go.|
000001b0  01 40 05 e0 0d 01 4a 05  3a 0d 01 54 0a dd 20 f2  |.@....J.:..T.. .|
000001c0  61 73 73 0d 01 5e 0f de  20 63 6f 64 65 20 34 30  |ass..^.. code 40|
000001d0  30 30 0d 01 68 09 73 70  3d 31 33 0d 01 72 09 6c  |00..h.sp=13..r.l|
000001e0  72 3d 31 34 0d 01 7c 09  70 63 3d 31 35 0d 01 86  |r=14..|.pc=15...|
000001f0  1c e3 20 70 61 73 73 3d  30 20 b8 20 32 20 88 20  |.. pass=0 . 2 . |
00000200  32 3a 50 25 3d 63 6f 64  65 0d 01 90 0d 5b 4f 50  |2:P%=code....[OP|
00000210  54 20 70 61 73 73 0d 01  9a 07 2e 67 6f 0d 01 a4  |T pass.....go...|
00000220  16 20 20 20 53 54 4d 46  44 20 73 70 20 21 2c 7b  |.   STMFD sp !,{|
00000230  6c 72 7d 0d 01 ae 13 20  20 20 53 54 52 20 20 20  |lr}....   STR   |
00000240  73 70 2c 20 53 50 0d 01  b8 04 0d 01 c2 14 20 20  |sp, SP........  |
00000250  20 4c 44 52 20 20 20 72  31 32 2c 73 63 72 0d 01  | LDR   r12,scr..|
00000260  cc 17 20 20 20 4d 4f 56  20 20 20 72 38 2c 23 73  |..   MOV   r8,#s|
00000270  69 7a 65 2d 31 0d 01 d6  04 0d 01 e0 08 2e 72 6f  |ize-1.........ro|
00000280  77 0d 01 ea 04 0d 01 f4  16 20 20 20 4c 44 52 42  |w........   LDRB|
00000290  20 20 72 30 2c 72 67 62  54 2b 30 0d 01 fe 16 20  |  r0,rgbT+0.... |
000002a0  20 20 4c 44 52 42 20 20  72 31 2c 72 67 62 42 2b  |  LDRB  r1,rgbB+|
000002b0  30 0d 02 08 14 20 20 20  a4 64 69 76 28 30 2c 31  |0....   .div(0,1|
000002c0  2c 38 2c 32 29 0d 02 12  16 20 20 20 4c 44 52 42  |,8,2)....   LDRB|
000002d0  20 20 72 30 2c 72 67 62  54 2b 31 0d 02 1c 16 20  |  r0,rgbT+1.... |
000002e0  20 20 4c 44 52 42 20 20  72 31 2c 72 67 62 42 2b  |  LDRB  r1,rgbB+|
000002f0  31 0d 02 26 14 20 20 20  a4 64 69 76 28 30 2c 31  |1..&.   .div(0,1|
00000300  2c 38 2c 33 29 0d 02 30  16 20 20 20 4c 44 52 42  |,8,3)..0.   LDRB|
00000310  20 20 72 30 2c 72 67 62  54 2b 32 0d 02 3a 16 20  |  r0,rgbT+2..:. |
00000320  20 20 4c 44 52 42 20 20  72 31 2c 72 67 62 42 2b  |  LDRB  r1,rgbB+|
00000330  32 0d 02 44 14 20 20 20  a4 64 69 76 28 30 2c 31  |2..D.   .div(0,1|
00000340  2c 38 2c 34 29 0d 02 4e  04 0d 02 58 14 20 20 20  |,8,4)..N...X.   |
00000350  4d 4f 56 20 20 20 72 31  31 2c 72 31 32 0d 02 62  |MOV   r11,r12..b|
00000360  17 20 20 20 4d 4f 56 20  20 20 72 39 2c 23 73 69  |.   MOV   r9,#si|
00000370  7a 65 2d 31 0d 02 6c 04  0d 02 76 16 20 20 20 4c  |ze-1..l...v.   L|
00000380  44 52 42 20 20 72 30 2c  72 67 62 4c 2b 30 0d 02  |DRB  r0,rgbL+0..|
00000390  80 16 20 20 20 4c 44 52  42 20 20 72 31 2c 72 67  |..   LDRB  r1,rg|
000003a0  62 52 2b 30 0d 02 8a 04  0d 02 94 16 20 20 20 4c  |bR+0........   L|
000003b0  44 52 42 20 20 72 35 2c  72 67 62 4c 2b 31 0d 02  |DRB  r5,rgbL+1..|
000003c0  9e 16 20 20 20 4c 44 52  42 20 20 72 36 2c 72 67  |..   LDRB  r6,rg|
000003d0  62 52 2b 31 0d 02 a8 04  0d 02 b2 16 20 20 20 4c  |bR+1........   L|
000003e0  44 52 42 20 20 72 37 2c  72 67 62 4c 2b 32 0d 02  |DRB  r7,rgbL+2..|
000003f0  bc 17 20 20 20 4c 44 52  42 20 20 72 31 30 2c 72  |..   LDRB  r10,r|
00000400  67 62 52 2b 32 0d 02 c6  08 2e 63 6f 6c 0d 02 d0  |gbR+2.....col...|
00000410  04 0d 02 da 15 20 20 20  a4 64 69 76 28 30 2c 31  |.....   .div(0,1|
00000420  2c 39 2c 6c 72 29 0d 02  e4 04 0d 02 ee 15 20 20  |,9,lr)........  |
00000430  20 41 44 44 20 20 20 6c  72 2c 72 32 2c 6c 72 0d  | ADD   lr,r2,lr.|
00000440  02 f8 1a 20 20 20 4d 4f  56 20 20 20 72 31 33 2c  |...   MOV   r13,|
00000450  6c 72 2c 4c 53 52 20 23  31 0d 03 02 04 0d 03 0c  |lr,LSR #1.......|
00000460  15 20 20 20 a4 64 69 76  28 35 2c 36 2c 39 2c 6c  |.   .div(5,6,9,l|
00000470  72 29 0d 03 16 04 0d 03  20 15 20 20 20 41 44 44  |r)...... .   ADD|
00000480  20 20 20 6c 72 2c 72 33  2c 6c 72 0d 03 2a 19 20  |   lr,r3,lr..*. |
00000490  20 20 4d 4f 56 20 20 20  6c 72 2c 6c 72 2c 4c 53  |  MOV   lr,lr,LS|
000004a0  52 20 23 31 0d 03 34 1d  20 20 20 84 52 20 20 20  |R #1..4.   .R   |
000004b0  72 31 33 2c 72 31 33 2c  6c 72 2c 4c 53 4c 20 23  |r13,r13,lr,LSL #|
000004c0  38 0d 03 3e 04 0d 03 48  16 20 20 20 a4 64 69 76  |8..>...H.   .div|
000004d0  28 37 2c 31 30 2c 39 2c  6c 72 29 0d 03 52 04 0d  |(7,10,9,lr)..R..|
000004e0  03 5c 15 20 20 20 41 44  44 20 20 20 6c 72 2c 72  |.\.   ADD   lr,r|
000004f0  34 2c 6c 72 0d 03 66 19  20 20 20 4d 4f 56 20 20  |4,lr..f.   MOV  |
00000500  20 6c 72 2c 6c 72 2c 4c  53 52 20 23 31 0d 03 70  | lr,lr,LSR #1..p|
00000510  1e 20 20 20 84 52 20 20  20 72 31 33 2c 72 31 33  |.   .R   r13,r13|
00000520  2c 6c 72 2c 4c 53 4c 20  23 31 36 0d 03 7a 04 0d  |,lr,LSL #16..z..|
00000530  03 84 19 20 20 20 53 54  52 20 20 20 72 31 33 2c  |...   STR   r13,|
00000540  5b 72 31 31 5d 2c 23 34  0d 03 8e 04 0d 03 98 15  |[r11],#4........|
00000550  20 20 20 53 55 42 53 20  20 72 39 2c 72 39 2c 23  |   SUBS  r9,r9,#|
00000560  31 0d 03 a2 10 20 20 20  42 50 4c 20 20 20 63 6f  |1....   BPL   co|
00000570  6c 0d 03 ac 04 0d 03 b6  1b 20 20 20 41 44 44 20  |l........   ADD |
00000580  20 20 72 31 32 2c 72 31  32 2c 23 33 32 30 2a 34  |  r12,r12,#320*4|
00000590  0d 03 c0 04 0d 03 ca 15  20 20 20 53 55 42 53 20  |........   SUBS |
000005a0  20 72 38 2c 72 38 2c 23  31 0d 03 d4 10 20 20 20  | r8,r8,#1....   |
000005b0  42 50 4c 20 20 20 72 6f  77 0d 03 de 04 0d 03 e8  |BPL   row.......|
000005c0  0d 3b 20 43 4f 50 59 2e  2e 2e 0d 03 f2 14 20 20  |.; COPY.......  |
000005d0  20 4c 44 52 20 20 20 72  31 32 2c 73 63 72 0d 03  | LDR   r12,scr..|
000005e0  fc 17 20 20 20 4d 4f 56  20 20 20 72 38 2c 23 73  |..   MOV   r8,#s|
000005f0  69 7a 65 2d 31 0d 04 06  19 20 20 20 4d 4f 56 20  |ize-1....   MOV |
00000600  20 20 72 36 2c 23 73 69  7a 65 2a 32 2d 31 0d 04  |  r6,#size*2-1..|
00000610  10 16 20 20 20 4d 4f 56  20 20 20 72 30 2c 23 33  |..   MOV   r0,#3|
00000620  32 30 2a 34 0d 04 1a 15  20 20 20 4d 55 4c 20 20  |20*4....   MUL  |
00000630  20 72 36 2c 72 30 2c 72  36 0d 04 24 09 2e 72 6f  | r6,r0,r6..$..ro|
00000640  77 63 0d 04 2e 17 20 20  20 4d 4f 56 20 20 20 72  |wc....   MOV   r|
00000650  39 2c 23 73 69 7a 65 2d  31 0d 04 38 14 20 20 20  |9,#size-1..8.   |
00000660  4d 4f 56 20 20 20 72 31  31 2c 72 31 32 0d 04 42  |MOV   r11,r12..B|
00000670  1b 20 20 20 4d 4f 56 20  20 20 72 37 2c 23 73 69  |.   MOV   r7,#si|
00000680  7a 65 2a 32 2a 34 2d 34  0d 04 4c 15 20 20 20 41  |ze*2*4-4..L.   A|
00000690  44 44 20 20 20 72 35 2c  72 36 2c 72 37 0d 04 56  |DD   r5,r6,r7..V|
000006a0  09 2e 63 6f 6c 63 0d 04  60 15 20 20 20 4c 44 52  |..colc..`.   LDR|
000006b0  20 20 20 72 30 2c 5b 72  31 31 5d 0d 04 6a 18 20  |   r0,[r11]..j. |
000006c0  20 20 53 54 52 20 20 20  72 30 2c 5b 72 31 31 2c  |  STR   r0,[r11,|
000006d0  72 37 5d 0d 04 74 18 20  20 20 53 54 52 20 20 20  |r7]..t.   STR   |
000006e0  72 30 2c 5b 72 31 31 2c  72 36 5d 0d 04 7e 18 20  |r0,[r11,r6]..~. |
000006f0  20 20 53 54 52 20 20 20  72 30 2c 5b 72 31 31 2c  |  STR   r0,[r11,|
00000700  72 35 5d 0d 04 88 04 0d  04 92 17 20 20 20 41 44  |r5]........   AD|
00000710  44 20 20 20 72 31 31 2c  72 31 31 2c 23 34 0d 04  |D   r11,r11,#4..|
00000720  9c 04 0d 04 a6 17 20 20  20 53 55 42 20 20 20 72  |......   SUB   r|
00000730  37 2c 72 37 2c 23 34 2a  32 0d 04 b0 17 20 20 20  |7,r7,#4*2....   |
00000740  53 55 42 20 20 20 72 35  2c 72 35 2c 23 34 2a 32  |SUB   r5,r5,#4*2|
00000750  0d 04 ba 04 0d 04 c4 15  20 20 20 53 55 42 53 20  |........   SUBS |
00000760  20 72 39 2c 72 39 2c 23  31 0d 04 ce 11 20 20 20  | r9,r9,#1....   |
00000770  42 50 4c 20 20 20 63 6f  6c 63 0d 04 d8 04 0d 04  |BPL   colc......|
00000780  d9 1b 20 20 20 41 44 44  20 20 20 72 31 32 2c 72  |..   ADD   r12,r|
00000790  31 32 2c 23 33 32 30 2a  34 0d 04 e2 1b 20 20 20  |12,#320*4....   |
000007a0  53 55 42 20 20 20 72 36  2c 72 36 2c 23 33 32 30  |SUB   r6,r6,#320|
000007b0  2a 34 2a 32 0d 04 ec 04  0d 04 f6 15 20 20 20 53  |*4*2........   S|
000007c0  55 42 53 20 20 72 38 2c  72 38 2c 23 31 0d 05 00  |UBS  r8,r8,#1...|
000007d0  11 20 20 20 42 50 4c 20  20 20 72 6f 77 63 0d 05  |.   BPL   rowc..|
000007e0  0a 04 0d 05 14 04 0d 05  1e 04 0d 05 28 04 0d 05  |............(...|
000007f0  32 04 0d 05 3c 12 20 20  20 4c 44 52 20 20 20 73  |2...<.   LDR   s|
00000800  70 2c 53 50 0d 05 46 16  20 20 20 4c 44 4d 46 44  |p,SP..F.   LDMFD|
00000810  20 73 70 20 21 2c 7b 70  63 7d 0d 05 50 04 0d 05  | sp !,{pc}..P...|
00000820  5a 04 0d 05 64 04 0d 05  6e 10 2e 53 50 20 20 20  |Z...d...n..SP   |
00000830  45 51 55 44 20 30 0d 05  78 04 0d 05 82 04 0d 05  |EQUD 0..x.......|
00000840  8c 12 2e 73 63 72 20 20  45 51 55 44 20 31 34 38  |...scr  EQUD 148|
00000850  0d 05 96 11 20 20 20 20  20 20 45 51 55 44 20 2d  |....      EQUD -|
00000860  31 0d 05 a0 09 2e 63 6f  6c 73 0d 05 aa 10 2e 72  |1.....cols.....r|
00000870  67 62 54 20 45 51 55 44  20 30 0d 05 b4 10 2e 72  |gbT EQUD 0.....r|
00000880  67 62 42 20 45 51 55 44  20 30 0d 05 be 10 2e 72  |gbB EQUD 0.....r|
00000890  67 62 4c 20 45 51 55 44  20 30 0d 05 c8 10 2e 72  |gbL EQUD 0.....r|
000008a0  67 62 52 20 45 51 55 44  20 30 0d 05 d2 05 5d 0d  |gbR EQUD 0....].|
000008b0  05 dc 05 ed 0d 05 e6 24  c8 99 20 22 4f 53 5f 52  |.......$.. "OS_R|
000008c0  65 61 64 56 64 75 56 61  72 69 61 62 6c 65 73 22  |eadVduVariables"|
000008d0  2c 73 63 72 2c 73 63 72  0d 05 f0 34 f4 21 73 63  |,scr,scr...4.!sc|
000008e0  72 3d 21 73 63 72 2b 28  28 32 35 36 2d 73 69 7a  |r=!scr+((256-siz|
000008f0  65 29 2f 32 29 2a 33 32  30 2a 34 2b 28 28 33 32  |e)/2)*320*4+((32|
00000900  30 2d 73 69 7a 65 29 2f  32 29 2a 34 0d 05 fa 05  |0-size)/2)*4....|
00000910  e1 0d 06 04 05 3a 0d 06  0e 13 dd 20 a4 64 69 76  |.....:..... .div|
00000920  28 61 2c 62 2c 64 2c 72  29 0d 06 18 0d 5b 4f 50  |(a,b,d,r)....[OP|
00000930  54 20 70 61 73 73 0d 06  22 12 20 20 20 53 55 42  |T pass..".   SUB|
00000940  20 20 20 72 2c 61 2c 62  0d 06 2c 12 20 20 20 4d  |   r,a,b..,.   M|
00000950  55 4c 20 20 20 72 2c 64  2c 72 0d 06 36 22 20 20  |UL   r,d,r..6"  |
00000960  20 41 44 44 20 20 20 72  2c 62 2c 72 2c 41 53 52  | ADD   r,b,r,ASR|
00000970  20 23 28 aa 73 69 7a 65  2f aa 32 29 0d 06 40 05  | #(.size/.2)..@.|
00000980  5d 0d 06 4a 07 3d 22 22  0d ff                    |]..J.=""..|
0000098a