Home » Archimedes archive » Micro User » MU 1991-12.adf » PD-Stuff » Misc/!Frogs/!RunImage
Misc/!Frogs/!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 » Micro User » MU 1991-12.adf » PD-Stuff |
Filename: | Misc/!Frogs/!RunImage |
Read OK: | ✔ |
File size: | 045A bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM ><Frogs$Dir>.!RunImage 20SYS "Wimp_Initialise",200,&4B534154,"Frogs" TO task% 30DIM pollblk &100,sprs &2000,scblk% &10,ctransblk% &10 40!sprs=&2000 50SYS "OS_SpriteOp",256+10,sprs,"<Frogs$Dir>.Frogs" 60SYS "OS_SpriteOp",256+16,sprs,"bg",0,1300,0,1304,4:ox%=1300:oy%=0 70T%=RND(4000) 80F%=FALSE 90C%=0:X%=-32 100REPEAT 110SYS "Wimp_Poll",,pollblk TO action 120IF action=17 AND pollblk!16=0 THEN QUIT 130IF F% THEN PROCfrog:UNTIL0 140T%-=1 150IF T%=0 THEN F%=TRUE:T%=RND(4000) 160UNTIL0 170: 180DEF PROCfrog 190X%+=16 200IF X%>=1300 THEN F%=FALSE:X%=-32:C%=0:ENDPROC 210IF C%=0 THEN 220PROCrestorebg 230PROCdispfrog("frogsit",X%+8,0) 240ENDIF 250IF C%>0 AND C%<4 THEN 260X%-=16 270ENDIF 280IF C%>3 AND C%<7 THEN 290PROCrestorebg 300PROCdispfrog("frogup",X%,(C%-3)*24) 310ENDIF 320IF C%>6 AND C%<10 THEN 330PROCrestorebg 340PROCdispfrog("frogdown",X%,(10-C%)*24) 350ENDIF 360C%+=1 370IF C%>=10 THEN C%=0 380FOR Y%=0TO2:WAIT:NEXT Y% 390ENDPROC 400: 410DEF PROCrestorebg 420SYS"OS_SpriteOp",256+34,sprs,"bg",ox%,oy% 430ENDPROC 440: 450DEF PROCdispfrog(A$,x%,y%) 460ox%=x%-4:oy%=y% 470SYS "OS_SpriteOp",256+16,sprs,"bg",0,x%-4,y%,x%+96,y%+96 480SYS "Wimp_ReadPixTrans",256,sprs,A$,,,,scblk%,ctransblk% 490SYS "OS_SpriteOp",256+52,sprs,A$,x%,y%,8,scblk%,ctransblk% 500ENDPROC
� ><Frogs$Dir>.!RunImage 6ș "Wimp_Initialise",200,&4B534154,"Frogs" � task% 7� pollblk &100,sprs &2000,scblk% &10,ctransblk% &10 (!sprs=&2000 24ș "OS_SpriteOp",256+10,sprs,"<Frogs$Dir>.Frogs" <Dș "OS_SpriteOp",256+16,sprs,"bg",0,1300,0,1304,4:ox%=1300:oy%=0 FT%=�(4000) PF%=� ZC%=0:X%=-32 d� n$ș "Wimp_Poll",,pollblk � action x#� action=17 � pollblk!16=0 � Ș �� F% � �frog:�0 � T%-=1 �� T%=0 � F%=�:T%=�(4000) ��0 �: �� �frog � X%+=16 �#� X%>=1300 � F%=�:X%=-32:C%=0:� �� C%=0 � ��restorebg ��dispfrog("frogsit",X%+8,0) �� �� C%>0 � C%<4 � X%-=16 � � C%>3 � C%<7 � "�restorebg ,$�dispfrog("frogup",X%,(C%-3)*24) 6� @� C%>6 � C%<10 � J�restorebg T'�dispfrog("frogdown",X%,(10-C%)*24) ^� h C%+=1 r� C%>=10 � C%=0 |� Y%=0�2:Ȗ:� Y% �� �: �� �restorebg �,ș"OS_SpriteOp",256+34,sprs,"bg",ox%,oy% �� �: �� �dispfrog(A$,x%,y%) �ox%=x%-4:oy%=y% �;ș "OS_SpriteOp",256+16,sprs,"bg",0,x%-4,y%,x%+96,y%+96 �;ș "Wimp_ReadPixTrans",256,sprs,A$,,,,scblk%,ctransblk% �=ș "OS_SpriteOp",256+52,sprs,A$,x%,y%,8,scblk%,ctransblk% �� �
00000000 0d 00 0a 1c f4 20 3e 3c 46 72 6f 67 73 24 44 69 |..... ><Frogs$Di| 00000010 72 3e 2e 21 52 75 6e 49 6d 61 67 65 0d 00 14 36 |r>.!RunImage...6| 00000020 c8 99 20 22 57 69 6d 70 5f 49 6e 69 74 69 61 6c |.. "Wimp_Initial| 00000030 69 73 65 22 2c 32 30 30 2c 26 34 42 35 33 34 31 |ise",200,&4B5341| 00000040 35 34 2c 22 46 72 6f 67 73 22 20 b8 20 74 61 73 |54,"Frogs" . tas| 00000050 6b 25 0d 00 1e 37 de 20 70 6f 6c 6c 62 6c 6b 20 |k%...7. pollblk | 00000060 26 31 30 30 2c 73 70 72 73 20 26 32 30 30 30 2c |&100,sprs &2000,| 00000070 73 63 62 6c 6b 25 20 26 31 30 2c 63 74 72 61 6e |scblk% &10,ctran| 00000080 73 62 6c 6b 25 20 26 31 30 0d 00 28 0f 21 73 70 |sblk% &10..(.!sp| 00000090 72 73 3d 26 32 30 30 30 0d 00 32 34 c8 99 20 22 |rs=&2000..24.. "| 000000a0 4f 53 5f 53 70 72 69 74 65 4f 70 22 2c 32 35 36 |OS_SpriteOp",256| 000000b0 2b 31 30 2c 73 70 72 73 2c 22 3c 46 72 6f 67 73 |+10,sprs,"<Frogs| 000000c0 24 44 69 72 3e 2e 46 72 6f 67 73 22 0d 00 3c 44 |$Dir>.Frogs"..<D| 000000d0 c8 99 20 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 |.. "OS_SpriteOp"| 000000e0 2c 32 35 36 2b 31 36 2c 73 70 72 73 2c 22 62 67 |,256+16,sprs,"bg| 000000f0 22 2c 30 2c 31 33 30 30 2c 30 2c 31 33 30 34 2c |",0,1300,0,1304,| 00000100 34 3a 6f 78 25 3d 31 33 30 30 3a 6f 79 25 3d 30 |4:ox%=1300:oy%=0| 00000110 0d 00 46 0e 54 25 3d b3 28 34 30 30 30 29 0d 00 |..F.T%=.(4000)..| 00000120 50 08 46 25 3d a3 0d 00 5a 0f 43 25 3d 30 3a 58 |P.F%=...Z.C%=0:X| 00000130 25 3d 2d 33 32 0d 00 64 05 f5 0d 00 6e 24 c8 99 |%=-32..d....n$..| 00000140 20 22 57 69 6d 70 5f 50 6f 6c 6c 22 2c 2c 70 6f | "Wimp_Poll",,po| 00000150 6c 6c 62 6c 6b 20 b8 20 61 63 74 69 6f 6e 0d 00 |llblk . action..| 00000160 78 23 e7 20 61 63 74 69 6f 6e 3d 31 37 20 80 20 |x#. action=17 . | 00000170 70 6f 6c 6c 62 6c 6b 21 31 36 3d 30 20 8c 20 c8 |pollblk!16=0 . .| 00000180 98 0d 00 82 13 e7 20 46 25 20 8c 20 f2 66 72 6f |...... F% . .fro| 00000190 67 3a fd 30 0d 00 8c 09 54 25 2d 3d 31 0d 00 96 |g:.0....T%-=1...| 000001a0 1c e7 20 54 25 3d 30 20 8c 20 46 25 3d b9 3a 54 |.. T%=0 . F%=.:T| 000001b0 25 3d b3 28 34 30 30 30 29 0d 00 a0 06 fd 30 0d |%=.(4000).....0.| 000001c0 00 aa 05 3a 0d 00 b4 0b dd 20 f2 66 72 6f 67 0d |...:..... .frog.| 000001d0 00 be 0a 58 25 2b 3d 31 36 0d 00 c8 23 e7 20 58 |...X%+=16...#. X| 000001e0 25 3e 3d 31 33 30 30 20 8c 20 46 25 3d a3 3a 58 |%>=1300 . F%=.:X| 000001f0 25 3d 2d 33 32 3a 43 25 3d 30 3a e1 0d 00 d2 0c |%=-32:C%=0:.....| 00000200 e7 20 43 25 3d 30 20 8c 0d 00 dc 0e f2 72 65 73 |. C%=0 ......res| 00000210 74 6f 72 65 62 67 0d 00 e6 1f f2 64 69 73 70 66 |torebg.....dispf| 00000220 72 6f 67 28 22 66 72 6f 67 73 69 74 22 2c 58 25 |rog("frogsit",X%| 00000230 2b 38 2c 30 29 0d 00 f0 05 cd 0d 00 fa 13 e7 20 |+8,0).......... | 00000240 43 25 3e 30 20 80 20 43 25 3c 34 20 8c 0d 01 04 |C%>0 . C%<4 ....| 00000250 0a 58 25 2d 3d 31 36 0d 01 0e 05 cd 0d 01 18 13 |.X%-=16.........| 00000260 e7 20 43 25 3e 33 20 80 20 43 25 3c 37 20 8c 0d |. C%>3 . C%<7 ..| 00000270 01 22 0e f2 72 65 73 74 6f 72 65 62 67 0d 01 2c |."..restorebg..,| 00000280 24 f2 64 69 73 70 66 72 6f 67 28 22 66 72 6f 67 |$.dispfrog("frog| 00000290 75 70 22 2c 58 25 2c 28 43 25 2d 33 29 2a 32 34 |up",X%,(C%-3)*24| 000002a0 29 0d 01 36 05 cd 0d 01 40 14 e7 20 43 25 3e 36 |)..6....@.. C%>6| 000002b0 20 80 20 43 25 3c 31 30 20 8c 0d 01 4a 0e f2 72 | . C%<10 ...J..r| 000002c0 65 73 74 6f 72 65 62 67 0d 01 54 27 f2 64 69 73 |estorebg..T'.dis| 000002d0 70 66 72 6f 67 28 22 66 72 6f 67 64 6f 77 6e 22 |pfrog("frogdown"| 000002e0 2c 58 25 2c 28 31 30 2d 43 25 29 2a 32 34 29 0d |,X%,(10-C%)*24).| 000002f0 01 5e 05 cd 0d 01 68 09 43 25 2b 3d 31 0d 01 72 |.^....h.C%+=1..r| 00000300 13 e7 20 43 25 3e 3d 31 30 20 8c 20 43 25 3d 30 |.. C%>=10 . C%=0| 00000310 0d 01 7c 14 e3 20 59 25 3d 30 b8 32 3a c8 96 3a |..|.. Y%=0.2:..:| 00000320 ed 20 59 25 0d 01 86 05 e1 0d 01 90 05 3a 0d 01 |. Y%.........:..| 00000330 9a 10 dd 20 f2 72 65 73 74 6f 72 65 62 67 0d 01 |... .restorebg..| 00000340 a4 2c c8 99 22 4f 53 5f 53 70 72 69 74 65 4f 70 |.,.."OS_SpriteOp| 00000350 22 2c 32 35 36 2b 33 34 2c 73 70 72 73 2c 22 62 |",256+34,sprs,"b| 00000360 67 22 2c 6f 78 25 2c 6f 79 25 0d 01 ae 05 e1 0d |g",ox%,oy%......| 00000370 01 b8 05 3a 0d 01 c2 19 dd 20 f2 64 69 73 70 66 |...:..... .dispf| 00000380 72 6f 67 28 41 24 2c 78 25 2c 79 25 29 0d 01 cc |rog(A$,x%,y%)...| 00000390 13 6f 78 25 3d 78 25 2d 34 3a 6f 79 25 3d 79 25 |.ox%=x%-4:oy%=y%| 000003a0 0d 01 d6 3b c8 99 20 22 4f 53 5f 53 70 72 69 74 |...;.. "OS_Sprit| 000003b0 65 4f 70 22 2c 32 35 36 2b 31 36 2c 73 70 72 73 |eOp",256+16,sprs| 000003c0 2c 22 62 67 22 2c 30 2c 78 25 2d 34 2c 79 25 2c |,"bg",0,x%-4,y%,| 000003d0 78 25 2b 39 36 2c 79 25 2b 39 36 0d 01 e0 3b c8 |x%+96,y%+96...;.| 000003e0 99 20 22 57 69 6d 70 5f 52 65 61 64 50 69 78 54 |. "Wimp_ReadPixT| 000003f0 72 61 6e 73 22 2c 32 35 36 2c 73 70 72 73 2c 41 |rans",256,sprs,A| 00000400 24 2c 2c 2c 2c 73 63 62 6c 6b 25 2c 63 74 72 61 |$,,,,scblk%,ctra| 00000410 6e 73 62 6c 6b 25 0d 01 ea 3d c8 99 20 22 4f 53 |nsblk%...=.. "OS| 00000420 5f 53 70 72 69 74 65 4f 70 22 2c 32 35 36 2b 35 |_SpriteOp",256+5| 00000430 32 2c 73 70 72 73 2c 41 24 2c 78 25 2c 79 25 2c |2,sprs,A$,x%,y%,| 00000440 38 2c 73 63 62 6c 6b 25 2c 63 74 72 61 6e 73 62 |8,scblk%,ctransb| 00000450 6c 6b 25 0d 01 f4 05 e1 0d ff |lk%.......| 0000045a