Home » Archimedes archive » Acorn User » AU 1996-05.adf » Regulars » StarInfo/Brown/!Drip/!RunImage

StarInfo/Brown/!Drip/!RunImage

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 1996-05.adf » Regulars
Filename: StarInfo/Brown/!Drip/!RunImage
Read OK:
File size: 067C bytes
Load address: 0000
Exec address: 0000
File contents
   10DIM code% 1024
   20DIM mem% 100*1024
   30!mem%=100*1024
   40mem%!8=16
   50SYS "OS_SpriteOp",&109,mem%
   60SYS "OS_SpriteOp",&10A,mem%,"<Drip$Dir>.^.Picture"
   70sprite%=mem%+mem%!8
   71screen%=sprite%+sprite%!32
   90PROCassemble
  100PROCplay
  110END
  120
  130DEFPROCassemble
  140FOR pass%=0 TO 2 STEP 2
  150P%=code%
  160[OPT pass%
  170.input
  180EQUD 148
  190EQUD -1
  200.output
  210EQUD 0
  220EQUD 0
  230.screen
  240EQUD screen%
  250.readvdu
  260ADR R0,input
  270ADR R1,output
  280SWI "OS_ReadVduVariables"
  290MOV PC,R14
  300.rows
  310EQUD 1
  320.full
  330EQUD 255
  340.drawmain
  350LDR R0,screen
  360LDR R1,output
  370LDR R2,rows
  380.drawloop
  390LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
  400LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
  410LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
  420LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
  430LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
  440SUBS R2,R2,#1
  450BNE drawloop
  460.drawbottom
  470LDR R2,rows
  480LDR R3,full
  490SUB R2,R3,R2
  500.drawdriploop
  510LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
  520LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
  530LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
  540LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
  550LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
  560SUB R0,R0,#320
  570SUBS R2,R2,#1
  580BNE drawdriploop
  590MOV PC,R14
  600]
  610NEXT pass%
  620ENDPROC
  630
  640DEF PROCplay
  650MODE13
  660CALL readvdu
  670FOR !rows=1 TO 254
  680CALL drawmain
  690WAIT
  700NEXT

� code% 1024
� mem% 100*1024
!mem%=100*1024
(
mem%!8=16
2ș "OS_SpriteOp",&109,mem%
<5ș "OS_SpriteOp",&10A,mem%,"<Drip$Dir>.^.Picture"
Fsprite%=mem%+mem%!8
Gscreen%=sprite%+sprite%!32
Z
�assemble
d	�play
n�
x
���assemble
�� pass%=0 � 2 � 2
�P%=code%
�[OPT pass%
�
.input
�EQUD 148
�EQUD -1
�.output
�
EQUD 0
�
EQUD 0
�.screen
�EQUD screen%
�.readvdu
ADR R0,input
ADR R1,output
SWI "OS_ReadVduVariables"
"MOV PC,R14
,	.rows
6
EQUD 1
@	.full
JEQUD 255
T
.drawmain
^LDR R0,screen
hLDR R1,output
rLDR R2,rows
|
.drawloop
�OLDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
�OLDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
�OLDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
�OLDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
�OLDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
�SUBS R2,R2,#1
�BNE drawloop
�.drawbottom
�LDR R2,rows
�LDR R3,full
�SUB R2,R3,R2
�.drawdriploop
�OLDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
OLDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
OLDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
OLDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
&OLDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}:LDMIA R0!,{R3-R10}:STMIA R1!,{R3-R10}
0SUB R0,R0,#320
:SUBS R2,R2,#1
DBNE drawdriploop
NMOV PC,R14
X]
b� pass%
l�
v
�� �play
��13
�
� readvdu
�� !rows=1 � 254
�� drawmain
�Ȗ
��
�
00000000  0d 00 0a 10 de 20 63 6f  64 65 25 20 31 30 32 34  |..... code% 1024|
00000010  0d 00 14 13 de 20 6d 65  6d 25 20 31 30 30 2a 31  |..... mem% 100*1|
00000020  30 32 34 0d 00 1e 12 21  6d 65 6d 25 3d 31 30 30  |024....!mem%=100|
00000030  2a 31 30 32 34 0d 00 28  0d 6d 65 6d 25 21 38 3d  |*1024..(.mem%!8=|
00000040  31 36 0d 00 32 1e c8 99  20 22 4f 53 5f 53 70 72  |16..2... "OS_Spr|
00000050  69 74 65 4f 70 22 2c 26  31 30 39 2c 6d 65 6d 25  |iteOp",&109,mem%|
00000060  0d 00 3c 35 c8 99 20 22  4f 53 5f 53 70 72 69 74  |..<5.. "OS_Sprit|
00000070  65 4f 70 22 2c 26 31 30  41 2c 6d 65 6d 25 2c 22  |eOp",&10A,mem%,"|
00000080  3c 44 72 69 70 24 44 69  72 3e 2e 5e 2e 50 69 63  |<Drip$Dir>.^.Pic|
00000090  74 75 72 65 22 0d 00 46  17 73 70 72 69 74 65 25  |ture"..F.sprite%|
000000a0  3d 6d 65 6d 25 2b 6d 65  6d 25 21 38 0d 00 47 1e  |=mem%+mem%!8..G.|
000000b0  73 63 72 65 65 6e 25 3d  73 70 72 69 74 65 25 2b  |screen%=sprite%+|
000000c0  73 70 72 69 74 65 25 21  33 32 0d 00 5a 0d f2 61  |sprite%!32..Z..a|
000000d0  73 73 65 6d 62 6c 65 0d  00 64 09 f2 70 6c 61 79  |ssemble..d..play|
000000e0  0d 00 6e 05 e0 0d 00 78  04 0d 00 82 0e dd f2 61  |..n....x.......a|
000000f0  73 73 65 6d 62 6c 65 0d  00 8c 15 e3 20 70 61 73  |ssemble..... pas|
00000100  73 25 3d 30 20 b8 20 32  20 88 20 32 0d 00 96 0c  |s%=0 . 2 . 2....|
00000110  50 25 3d 63 6f 64 65 25  0d 00 a0 0e 5b 4f 50 54  |P%=code%....[OPT|
00000120  20 70 61 73 73 25 0d 00  aa 0a 2e 69 6e 70 75 74  | pass%.....input|
00000130  0d 00 b4 0c 45 51 55 44  20 31 34 38 0d 00 be 0b  |....EQUD 148....|
00000140  45 51 55 44 20 2d 31 0d  00 c8 0b 2e 6f 75 74 70  |EQUD -1.....outp|
00000150  75 74 0d 00 d2 0a 45 51  55 44 20 30 0d 00 dc 0a  |ut....EQUD 0....|
00000160  45 51 55 44 20 30 0d 00  e6 0b 2e 73 63 72 65 65  |EQUD 0.....scree|
00000170  6e 0d 00 f0 10 45 51 55  44 20 73 63 72 65 65 6e  |n....EQUD screen|
00000180  25 0d 00 fa 0c 2e 72 65  61 64 76 64 75 0d 01 04  |%.....readvdu...|
00000190  10 41 44 52 20 52 30 2c  69 6e 70 75 74 0d 01 0e  |.ADR R0,input...|
000001a0  11 41 44 52 20 52 31 2c  6f 75 74 70 75 74 0d 01  |.ADR R1,output..|
000001b0  18 1d 53 57 49 20 22 4f  53 5f 52 65 61 64 56 64  |..SWI "OS_ReadVd|
000001c0  75 56 61 72 69 61 62 6c  65 73 22 0d 01 22 0e 4d  |uVariables"..".M|
000001d0  4f 56 20 50 43 2c 52 31  34 0d 01 2c 09 2e 72 6f  |OV PC,R14..,..ro|
000001e0  77 73 0d 01 36 0a 45 51  55 44 20 31 0d 01 40 09  |ws..6.EQUD 1..@.|
000001f0  2e 66 75 6c 6c 0d 01 4a  0c 45 51 55 44 20 32 35  |.full..J.EQUD 25|
00000200  35 0d 01 54 0d 2e 64 72  61 77 6d 61 69 6e 0d 01  |5..T..drawmain..|
00000210  5e 11 4c 44 52 20 52 30  2c 73 63 72 65 65 6e 0d  |^.LDR R0,screen.|
00000220  01 68 11 4c 44 52 20 52  31 2c 6f 75 74 70 75 74  |.h.LDR R1,output|
00000230  0d 01 72 0f 4c 44 52 20  52 32 2c 72 6f 77 73 0d  |..r.LDR R2,rows.|
00000240  01 7c 0d 2e 64 72 61 77  6c 6f 6f 70 0d 01 86 4f  |.|..drawloop...O|
00000250  4c 44 4d 49 41 20 52 30  21 2c 7b 52 33 2d 52 31  |LDMIA R0!,{R3-R1|
00000260  30 7d 3a 53 54 4d 49 41  20 52 31 21 2c 7b 52 33  |0}:STMIA R1!,{R3|
00000270  2d 52 31 30 7d 3a 4c 44  4d 49 41 20 52 30 21 2c  |-R10}:LDMIA R0!,|
00000280  7b 52 33 2d 52 31 30 7d  3a 53 54 4d 49 41 20 52  |{R3-R10}:STMIA R|
00000290  31 21 2c 7b 52 33 2d 52  31 30 7d 0d 01 90 4f 4c  |1!,{R3-R10}...OL|
000002a0  44 4d 49 41 20 52 30 21  2c 7b 52 33 2d 52 31 30  |DMIA R0!,{R3-R10|
000002b0  7d 3a 53 54 4d 49 41 20  52 31 21 2c 7b 52 33 2d  |}:STMIA R1!,{R3-|
000002c0  52 31 30 7d 3a 4c 44 4d  49 41 20 52 30 21 2c 7b  |R10}:LDMIA R0!,{|
000002d0  52 33 2d 52 31 30 7d 3a  53 54 4d 49 41 20 52 31  |R3-R10}:STMIA R1|
000002e0  21 2c 7b 52 33 2d 52 31  30 7d 0d 01 9a 4f 4c 44  |!,{R3-R10}...OLD|
000002f0  4d 49 41 20 52 30 21 2c  7b 52 33 2d 52 31 30 7d  |MIA R0!,{R3-R10}|
00000300  3a 53 54 4d 49 41 20 52  31 21 2c 7b 52 33 2d 52  |:STMIA R1!,{R3-R|
00000310  31 30 7d 3a 4c 44 4d 49  41 20 52 30 21 2c 7b 52  |10}:LDMIA R0!,{R|
00000320  33 2d 52 31 30 7d 3a 53  54 4d 49 41 20 52 31 21  |3-R10}:STMIA R1!|
00000330  2c 7b 52 33 2d 52 31 30  7d 0d 01 a4 4f 4c 44 4d  |,{R3-R10}...OLDM|
00000340  49 41 20 52 30 21 2c 7b  52 33 2d 52 31 30 7d 3a  |IA R0!,{R3-R10}:|
00000350  53 54 4d 49 41 20 52 31  21 2c 7b 52 33 2d 52 31  |STMIA R1!,{R3-R1|
00000360  30 7d 3a 4c 44 4d 49 41  20 52 30 21 2c 7b 52 33  |0}:LDMIA R0!,{R3|
00000370  2d 52 31 30 7d 3a 53 54  4d 49 41 20 52 31 21 2c  |-R10}:STMIA R1!,|
00000380  7b 52 33 2d 52 31 30 7d  0d 01 ae 4f 4c 44 4d 49  |{R3-R10}...OLDMI|
00000390  41 20 52 30 21 2c 7b 52  33 2d 52 31 30 7d 3a 53  |A R0!,{R3-R10}:S|
000003a0  54 4d 49 41 20 52 31 21  2c 7b 52 33 2d 52 31 30  |TMIA R1!,{R3-R10|
000003b0  7d 3a 4c 44 4d 49 41 20  52 30 21 2c 7b 52 33 2d  |}:LDMIA R0!,{R3-|
000003c0  52 31 30 7d 3a 53 54 4d  49 41 20 52 31 21 2c 7b  |R10}:STMIA R1!,{|
000003d0  52 33 2d 52 31 30 7d 0d  01 b8 11 53 55 42 53 20  |R3-R10}....SUBS |
000003e0  52 32 2c 52 32 2c 23 31  0d 01 c2 10 42 4e 45 20  |R2,R2,#1....BNE |
000003f0  64 72 61 77 6c 6f 6f 70  0d 01 cc 0f 2e 64 72 61  |drawloop.....dra|
00000400  77 62 6f 74 74 6f 6d 0d  01 d6 0f 4c 44 52 20 52  |wbottom....LDR R|
00000410  32 2c 72 6f 77 73 0d 01  e0 0f 4c 44 52 20 52 33  |2,rows....LDR R3|
00000420  2c 66 75 6c 6c 0d 01 ea  10 53 55 42 20 52 32 2c  |,full....SUB R2,|
00000430  52 33 2c 52 32 0d 01 f4  11 2e 64 72 61 77 64 72  |R3,R2.....drawdr|
00000440  69 70 6c 6f 6f 70 0d 01  fe 4f 4c 44 4d 49 41 20  |iploop...OLDMIA |
00000450  52 30 21 2c 7b 52 33 2d  52 31 30 7d 3a 53 54 4d  |R0!,{R3-R10}:STM|
00000460  49 41 20 52 31 21 2c 7b  52 33 2d 52 31 30 7d 3a  |IA R1!,{R3-R10}:|
00000470  4c 44 4d 49 41 20 52 30  21 2c 7b 52 33 2d 52 31  |LDMIA R0!,{R3-R1|
00000480  30 7d 3a 53 54 4d 49 41  20 52 31 21 2c 7b 52 33  |0}:STMIA R1!,{R3|
00000490  2d 52 31 30 7d 0d 02 08  4f 4c 44 4d 49 41 20 52  |-R10}...OLDMIA R|
000004a0  30 21 2c 7b 52 33 2d 52  31 30 7d 3a 53 54 4d 49  |0!,{R3-R10}:STMI|
000004b0  41 20 52 31 21 2c 7b 52  33 2d 52 31 30 7d 3a 4c  |A R1!,{R3-R10}:L|
000004c0  44 4d 49 41 20 52 30 21  2c 7b 52 33 2d 52 31 30  |DMIA R0!,{R3-R10|
000004d0  7d 3a 53 54 4d 49 41 20  52 31 21 2c 7b 52 33 2d  |}:STMIA R1!,{R3-|
000004e0  52 31 30 7d 0d 02 12 4f  4c 44 4d 49 41 20 52 30  |R10}...OLDMIA R0|
000004f0  21 2c 7b 52 33 2d 52 31  30 7d 3a 53 54 4d 49 41  |!,{R3-R10}:STMIA|
00000500  20 52 31 21 2c 7b 52 33  2d 52 31 30 7d 3a 4c 44  | R1!,{R3-R10}:LD|
00000510  4d 49 41 20 52 30 21 2c  7b 52 33 2d 52 31 30 7d  |MIA R0!,{R3-R10}|
00000520  3a 53 54 4d 49 41 20 52  31 21 2c 7b 52 33 2d 52  |:STMIA R1!,{R3-R|
00000530  31 30 7d 0d 02 1c 4f 4c  44 4d 49 41 20 52 30 21  |10}...OLDMIA R0!|
00000540  2c 7b 52 33 2d 52 31 30  7d 3a 53 54 4d 49 41 20  |,{R3-R10}:STMIA |
00000550  52 31 21 2c 7b 52 33 2d  52 31 30 7d 3a 4c 44 4d  |R1!,{R3-R10}:LDM|
00000560  49 41 20 52 30 21 2c 7b  52 33 2d 52 31 30 7d 3a  |IA R0!,{R3-R10}:|
00000570  53 54 4d 49 41 20 52 31  21 2c 7b 52 33 2d 52 31  |STMIA R1!,{R3-R1|
00000580  30 7d 0d 02 26 4f 4c 44  4d 49 41 20 52 30 21 2c  |0}..&OLDMIA R0!,|
00000590  7b 52 33 2d 52 31 30 7d  3a 53 54 4d 49 41 20 52  |{R3-R10}:STMIA R|
000005a0  31 21 2c 7b 52 33 2d 52  31 30 7d 3a 4c 44 4d 49  |1!,{R3-R10}:LDMI|
000005b0  41 20 52 30 21 2c 7b 52  33 2d 52 31 30 7d 3a 53  |A R0!,{R3-R10}:S|
000005c0  54 4d 49 41 20 52 31 21  2c 7b 52 33 2d 52 31 30  |TMIA R1!,{R3-R10|
000005d0  7d 0d 02 30 12 53 55 42  20 52 30 2c 52 30 2c 23  |}..0.SUB R0,R0,#|
000005e0  33 32 30 0d 02 3a 11 53  55 42 53 20 52 32 2c 52  |320..:.SUBS R2,R|
000005f0  32 2c 23 31 0d 02 44 14  42 4e 45 20 64 72 61 77  |2,#1..D.BNE draw|
00000600  64 72 69 70 6c 6f 6f 70  0d 02 4e 0e 4d 4f 56 20  |driploop..N.MOV |
00000610  50 43 2c 52 31 34 0d 02  58 05 5d 0d 02 62 0b ed  |PC,R14..X.]..b..|
00000620  20 70 61 73 73 25 0d 02  6c 05 e1 0d 02 76 04 0d  | pass%..l....v..|
00000630  02 80 0b dd 20 f2 70 6c  61 79 0d 02 8a 07 eb 31  |.... .play.....1|
00000640  33 0d 02 94 0d d6 20 72  65 61 64 76 64 75 0d 02  |3..... readvdu..|
00000650  9e 13 e3 20 21 72 6f 77  73 3d 31 20 b8 20 32 35  |... !rows=1 . 25|
00000660  34 0d 02 a8 0e d6 20 64  72 61 77 6d 61 69 6e 0d  |4..... drawmain.|
00000670  02 b2 06 c8 96 0d 02 bc  05 ed 0d ff              |............|
0000067c