Home » Personal collection » Commodore disks » disk50a2_progs1.d64 » bounce

bounce

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 » Personal collection » Commodore disks » disk50a2_progs1.d64
Filename: bounce
Read OK:
File size: 0601 bytes
Load address: 0801
Exec address: 0000
File contents
     1 REM *******************
     2 REM *     BOUNCE      *
     4 REM * BY DOMINIC FORD *
     6 REM *  1ST JUNE 1993  *
     7 REM *******************
     8 REM
    10 PRINTCHR$(147);CHR$(30);:POKE53280,9:POKE53281,0:POKE56295,5:SP=-1
    20 FORR=1TO199:PRINT"WOOZY";:NEXT:PRINT"WOOZ";
    30 POKE2023,25:VC=53248:POKEVC+21,0
    40 POKEVC+23,0:POKEVC+29,0:POKEVC+16,0
    50 POKEVC+28,0:POKEVC+27,0:R=PEEK(VC+30)
    60 DIMXS(7),YS(7),BP(7,1)
    70 FORR=0TO62:READVA:POKER+16320,VA:NEXT
    80 FORR=2040TO2047
    90 POKER,255:NEXT
   100 FORR=1TO8:POKEVC+R+38,R:NEXT:POKEVC+21,255
   110 FL=0:FORR=0TO7
   120 BP(R,0)=INT(RND(1)*170)+50:POKER*2+1+VC,BP(R,0)
   130 BP(R,1)=INT(RND(1)*200)+55:POKER*2+VC,BP(R,1):NEXT:POKEVC+30,0
   140 FORR=0TO7:POKER*2+1+VC,BP(R,0)
   145 POKER*2+VC,BP(R,1):NEXT
   150 REMIF PEEK(VC+30)<>0 THEN 110
   160 POKEVC+21,0:FORR=0TO7
   170 XS(R)=INT(RND(1)*2) AND 1
   180 YS(R)=INT(RND(1)*2) AND 1
   190 IF XS(R)=0 THEN XS(R)=-1
   200 IF YS(R)=0 THEN YS(R)=-1
   210 NEXT:POKEVC+21,255
   220 FORSP=0TO7:V=VC+2*SP:EX=PEEK(VC+16) AND (2^SP)
   230 IFPEEK(V)=255ANDEX=0ANDXS(SP)=1THENPOKEV,0:POKEVC+16,PEEK(VC+16)+2^SP:EX=-1
   240 IFPEEK(V)=0ANDEX>0ANDXS(SP)=-1THENPOKEV,255:POKEVC+16,PEEK(VC+16)-EX:EX=-1
   250 POKEV,PEEK(V)+XS(SP)
   260 IF PEEK(V)<26 AND EX=0 THEN XS(SP)=1
   270 IF PEEK(V)>45 AND EX<>0 THEN XS(SP)=-1
   280 GOSUB1000:IF CO<>0 THEN XS(SP)=-XS(SP)
   290 POKEV+1,PEEK(V+1)+YS(SP)
   300 IF PEEK(V+1)>230 THEN YS(SP)=-1
   310 IF PEEK(V+1)<50 THEN YS(SP)=1
   320 GOSUB1000:IF CO<>0 THEN YS(SP)=-YS(SP)
   330 NEXT:GOTO 220
   340 DATA 0,127,0,1,255,192,7,255,224
   350 DATA 15,255,240,31,255,248,63,255,252
   360 DATA 63,255,252,127,255,254,127,255,254
   370 DATA 127,255,254,127,255,254,127,255,254
   380 DATA 127,255,254,127,255,254,63,255,252
   390 DATA 63,255,252,31,255,248,31,255,248
   400 DATA 15,255,240,7,255,224,1,255,128
  1000 IF SP=-1 THEN CO=PEEK(VC+30):RETURN
  1010 CO=PEEK(VC+30) AND (2^SP)
  1020 CO=PEEK(VC+30) AND (2^SP)
  1030 RETURN

� *******************5� *     BOUNCE      *O� * BY DOMINIC FORD *i� *  1ST JUNE 1993  *�� *******************���
��(147);�(30);:�53280,9:�53281,0:�56295,5:SP��1��R�1�199:�"WOOZY";:�:�"WOOZ";��2023,25:VC�53248:�VC�21,0	(�VC�23,0:�VC�29,0:�VC�16,0>	2�VC�28,0:�VC�27,0:R��(VC�30)W	<�XS(7),YS(7),BP(7,1)u	F�R�0�62:�VA:�R�16320,VA:��	P�R�2040�2047�	Z�R,255:��	d�R�1�8:�VC�R�38,R:�:�VC�21,255�	nFL�0:�R�0�7�	xBP(R,0)��(�(1)�170)�50:�R�2�1�VC,BP(R,0))
�BP(R,1)��(�(1)�200)�55:�R�2�VC,BP(R,1):�:�VC�30,0F
��R�0�7:�R�2�1�VC,BP(R,0)\
��R�2�VC,BP(R,1):�|
��IF PEEK(VC+30)<>0 THEN 110�
��VC�21,0:�R�0�7�
�XS(R)��(�(1)�2) � 1�
�YS(R)��(�(1)�2) � 1�
�� XS(R)�0 � XS(R)��1�
�� YS(R)�0 � YS(R)��1��:�VC�21,255.��SP�0�7:V�VC�2�SP:EX��(VC�16) � (2�SP)j���(V)�255�EX�0�XS(SP)�1��V,0:�VC�16,�(VC�16)�2�SP:EX��1����(V)�0�EX�0�XS(SP)��1��V,255:�VC�16,�(VC�16)�EX:EX��1���V,�(V)�XS(SP)�� �(V)�26 � EX�0 � XS(SP)�1�� �(V)�45 � EX��0 � XS(SP)��1�1000:� CO��0 � XS(SP)��XS(SP)4"�V�1,�(V�1)�YS(SP)Q,� �(V�1)�230 � YS(SP)��1l6� �(V�1)�50 � YS(SP)�1�@�1000:� CO��0 � YS(SP)��YS(SP)�J�:� 220�T� 0,127,0,1,255,192,7,255,224�^� 15,255,240,31,255,248,63,255,252

h� 63,255,252,127,255,254,127,255,2547
r� 127,255,254,127,255,254,127,255,254`
|� 127,255,254,127,255,254,63,255,252�
�� 63,255,252,31,255,248,31,255,248�
�� 15,255,240,7,255,224,1,255,128�
�� SP��1 � CO��(VC�30):��
�CO��(VC�30) � (2�SP)�
�CO��(VC�30) � (2�SP)�
[HA@. *******************@5HB@. *     bounce      *@oHD@. * by dominic ford *@IHF@. *  1st june 1993  *@.HG@. *******************@.HH@.@.HJ@..(147);.(30);:.53280,9:.53281,0:.56295,5:sp..1@.HT@.r.1.199:."woozy";:.:."wooz";@.H.@.2023,25:vc.53248:.vc.21,0@]I(@.vc.23,0:.vc.29,0:.vc.16,0@>I2@.vc.28,0:.vc.27,0:r..(vc.30)@wI<@.xs(7),ys(7),bp(7,1)@UIf@.r.0.62:.va:.r.16320,va:.@.Ip@.r.2040.2047@.Iz@.r,255:.@.ID@.r.1.8:.vc.r.38,r:.:.vc.21,255@.IN@fl.0:.r.0.7@.IX@bp(r,0)..(.(1).170).50:.r.2.1.vc,bp(r,0)@)J.@bp(r,1)..(.(1).200).55:.r.2.vc,bp(r,1):.:.vc.30,0@fJ.@.r.0.7:.r.2.1.vc,bp(r,0)@£J.@.r.2.vc,bp(r,1):.@.J.@.if peek(vc+30)<>0 then 110@.J.@.vc.21,0:.r.0.7@.J.@xs(r)..(.(1).2) . 1@.J.@ys(r)..(.(1).2) . 1@.J.@. xs(r).0 . xs(r)..1@.J.@. ys(r).0 . ys(r)..1@CK.@.:.vc.21,255@.K.@.sp.0.7:v.vc.2.sp:ex..(vc.16) . (2.sp)@JK.@..(v).255.ex.0.xs(sp).1..v,0:.vc.16,.(vc.16).2.sp:ex..1@.K.@..(v).0.ex.0.xs(sp)..1..v,255:.vc.16,.(vc.16).ex:ex..1@.K.@.v,.(v).xs(sp)@.KDA. .(v).26 . ex.0 . xs(sp).1@.KNA. .(v).45 . ex..0 . xs(sp)..1@]LXA.1000:. co..0 . xs(sp)..xs(sp)@4L"A.v.1,.(v.1).ys(sp)@qL,A. .(v.1).230 . ys(sp)..1@LL6A. .(v.1).50 . ys(sp).1@.L@A.1000:. co..0 . ys(sp)..ys(sp)@.LjA.:. 220@.LtA. 0,127,0,1,255,192,7,255,224@.L.A. 15,255,240,31,255,248,63,255,252@MMHA. 63,255,252,127,255,254,127,255,254@7MRA. 127,255,254,127,255,254,127,255,254@.M.A. 127,255,254,127,255,254,63,255,252@.M.A. 63,255,252,31,255,248,31,255,248@.M.A. 15,255,240,7,255,224,1,255,128@.M.C. sp..1 . co..(vc.30):.@.M.Cco..(vc.30) . (2.sp)@.M.Cco..(vc.30) . (2.sp)@@NFD.@@@
00000000  1b 08 01 00 8f 20 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a  |..... **********|
00000010  2a 2a 2a 2a 2a 2a 2a 2a  2a 00 35 08 02 00 8f 20  |*********.5.... |
00000020  2a 20 20 20 20 20 42 4f  55 4e 43 45 20 20 20 20  |*     BOUNCE    |
00000030  20 20 2a 00 4f 08 04 00  8f 20 2a 20 42 59 20 44  |  *.O.... * BY D|
00000040  4f 4d 49 4e 49 43 20 46  4f 52 44 20 2a 00 69 08  |OMINIC FORD *.i.|
00000050  06 00 8f 20 2a 20 20 31  53 54 20 4a 55 4e 45 20  |... *  1ST JUNE |
00000060  31 39 39 33 20 20 2a 00  83 08 07 00 8f 20 2a 2a  |1993  *...... **|
00000070  2a 2a 2a 2a 2a 2a 2a 2a  2a 2a 2a 2a 2a 2a 2a 2a  |****************|
00000080  2a 00 89 08 08 00 8f 00  bd 08 0a 00 99 c7 28 31  |*.............(1|
00000090  34 37 29 3b c7 28 33 30  29 3b 3a 97 35 33 32 38  |47);.(30);:.5328|
000000a0  30 2c 39 3a 97 35 33 32  38 31 2c 30 3a 97 35 36  |0,9:.53281,0:.56|
000000b0  32 39 35 2c 35 3a 53 50  b2 ab 31 00 df 08 14 00  |295,5:SP..1.....|
000000c0  81 52 b2 31 a4 31 39 39  3a 99 22 57 4f 4f 5a 59  |.R.1.199:."WOOZY|
000000d0  22 3b 3a 82 3a 99 22 57  4f 4f 5a 22 3b 00 fe 08  |";:.:."WOOZ";...|
000000e0  1e 00 97 32 30 32 33 2c  32 35 3a 56 43 b2 35 33  |...2023,25:VC.53|
000000f0  32 34 38 3a 97 56 43 aa  32 31 2c 30 00 1d 09 28  |248:.VC.21,0...(|
00000100  00 97 56 43 aa 32 33 2c  30 3a 97 56 43 aa 32 39  |..VC.23,0:.VC.29|
00000110  2c 30 3a 97 56 43 aa 31  36 2c 30 00 3e 09 32 00  |,0:.VC.16,0.>.2.|
00000120  97 56 43 aa 32 38 2c 30  3a 97 56 43 aa 32 37 2c  |.VC.28,0:.VC.27,|
00000130  30 3a 52 b2 c2 28 56 43  aa 33 30 29 00 57 09 3c  |0:R..(VC.30).W.<|
00000140  00 86 58 53 28 37 29 2c  59 53 28 37 29 2c 42 50  |..XS(7),YS(7),BP|
00000150  28 37 2c 31 29 00 75 09  46 00 81 52 b2 30 a4 36  |(7,1).u.F..R.0.6|
00000160  32 3a 87 56 41 3a 97 52  aa 31 36 33 32 30 2c 56  |2:.VA:.R.16320,V|
00000170  41 3a 82 00 86 09 50 00  81 52 b2 32 30 34 30 a4  |A:....P..R.2040.|
00000180  32 30 34 37 00 93 09 5a  00 97 52 2c 32 35 35 3a  |2047...Z..R,255:|
00000190  82 00 b6 09 64 00 81 52  b2 31 a4 38 3a 97 56 43  |....d..R.1.8:.VC|
000001a0  aa 52 aa 33 38 2c 52 3a  82 3a 97 56 43 aa 32 31  |.R.38,R:.:.VC.21|
000001b0  2c 32 35 35 00 c6 09 6e  00 46 4c b2 30 3a 81 52  |,255...n.FL.0:.R|
000001c0  b2 30 a4 37 00 f3 09 78  00 42 50 28 52 2c 30 29  |.0.7...x.BP(R,0)|
000001d0  b2 b5 28 bb 28 31 29 ac  31 37 30 29 aa 35 30 3a  |..(.(1).170).50:|
000001e0  97 52 ac 32 aa 31 aa 56  43 2c 42 50 28 52 2c 30  |.R.2.1.VC,BP(R,0|
000001f0  29 00 29 0a 82 00 42 50  28 52 2c 31 29 b2 b5 28  |).)...BP(R,1)..(|
00000200  bb 28 31 29 ac 32 30 30  29 aa 35 35 3a 97 52 ac  |.(1).200).55:.R.|
00000210  32 aa 56 43 2c 42 50 28  52 2c 31 29 3a 82 3a 97  |2.VC,BP(R,1):.:.|
00000220  56 43 aa 33 30 2c 30 00  46 0a 8c 00 81 52 b2 30  |VC.30,0.F....R.0|
00000230  a4 37 3a 97 52 ac 32 aa  31 aa 56 43 2c 42 50 28  |.7:.R.2.1.VC,BP(|
00000240  52 2c 30 29 00 5c 0a 91  00 97 52 ac 32 aa 56 43  |R,0).\....R.2.VC|
00000250  2c 42 50 28 52 2c 31 29  3a 82 00 7c 0a 96 00 8f  |,BP(R,1):..|....|
00000260  49 46 20 50 45 45 4b 28  56 43 2b 33 30 29 3c 3e  |IF PEEK(VC+30)<>|
00000270  30 20 54 48 45 4e 20 31  31 30 00 90 0a a0 00 97  |0 THEN 110......|
00000280  56 43 aa 32 31 2c 30 3a  81 52 b2 30 a4 37 00 a8  |VC.21,0:.R.0.7..|
00000290  0a aa 00 58 53 28 52 29  b2 b5 28 bb 28 31 29 ac  |...XS(R)..(.(1).|
000002a0  32 29 20 af 20 31 00 c0  0a b4 00 59 53 28 52 29  |2) . 1.....YS(R)|
000002b0  b2 b5 28 bb 28 31 29 ac  32 29 20 af 20 31 00 d9  |..(.(1).2) . 1..|
000002c0  0a be 00 8b 20 58 53 28  52 29 b2 30 20 a7 20 58  |.... XS(R).0 . X|
000002d0  53 28 52 29 b2 ab 31 00  f2 0a c8 00 8b 20 59 53  |S(R)..1...... YS|
000002e0  28 52 29 b2 30 20 a7 20  59 53 28 52 29 b2 ab 31  |(R).0 . YS(R)..1|
000002f0  00 03 0b d2 00 82 3a 97  56 43 aa 32 31 2c 32 35  |......:.VC.21,25|
00000300  35 00 2e 0b dc 00 81 53  50 b2 30 a4 37 3a 56 b2  |5......SP.0.7:V.|
00000310  56 43 aa 32 ac 53 50 3a  45 58 b2 c2 28 56 43 aa  |VC.2.SP:EX..(VC.|
00000320  31 36 29 20 af 20 28 32  ae 53 50 29 00 6a 0b e6  |16) . (2.SP).j..|
00000330  00 8b c2 28 56 29 b2 32  35 35 af 45 58 b2 30 af  |...(V).255.EX.0.|
00000340  58 53 28 53 50 29 b2 31  a7 97 56 2c 30 3a 97 56  |XS(SP).1..V,0:.V|
00000350  43 aa 31 36 2c c2 28 56  43 aa 31 36 29 aa 32 ae  |C.16,.(VC.16).2.|
00000360  53 50 3a 45 58 b2 ab 31  00 a5 0b f0 00 8b c2 28  |SP:EX..1.......(|
00000370  56 29 b2 30 af 45 58 b1  30 af 58 53 28 53 50 29  |V).0.EX.0.XS(SP)|
00000380  b2 ab 31 a7 97 56 2c 32  35 35 3a 97 56 43 aa 31  |..1..V,255:.VC.1|
00000390  36 2c c2 28 56 43 aa 31  36 29 ab 45 58 3a 45 58  |6,.(VC.16).EX:EX|
000003a0  b2 ab 31 00 b8 0b fa 00  97 56 2c c2 28 56 29 aa  |..1......V,.(V).|
000003b0  58 53 28 53 50 29 00 d8  0b 04 01 8b 20 c2 28 56  |XS(SP)...... .(V|
000003c0  29 b3 32 36 20 af 20 45  58 b2 30 20 a7 20 58 53  |).26 . EX.0 . XS|
000003d0  28 53 50 29 b2 31 00 fa  0b 0e 01 8b 20 c2 28 56  |(SP).1...... .(V|
000003e0  29 b1 34 35 20 af 20 45  58 b3 b1 30 20 a7 20 58  |).45 . EX..0 . X|
000003f0  53 28 53 50 29 b2 ab 31  00 1d 0c 18 01 8d 31 30  |S(SP)..1......10|
00000400  30 30 3a 8b 20 43 4f b3  b1 30 20 a7 20 58 53 28  |00:. CO..0 . XS(|
00000410  53 50 29 b2 ab 58 53 28  53 50 29 00 34 0c 22 01  |SP)..XS(SP).4.".|
00000420  97 56 aa 31 2c c2 28 56  aa 31 29 aa 59 53 28 53  |.V.1,.(V.1).YS(S|
00000430  50 29 00 51 0c 2c 01 8b  20 c2 28 56 aa 31 29 b1  |P).Q.,.. .(V.1).|
00000440  32 33 30 20 a7 20 59 53  28 53 50 29 b2 ab 31 00  |230 . YS(SP)..1.|
00000450  6c 0c 36 01 8b 20 c2 28  56 aa 31 29 b3 35 30 20  |l.6.. .(V.1).50 |
00000460  a7 20 59 53 28 53 50 29  b2 31 00 8f 0c 40 01 8d  |. YS(SP).1...@..|
00000470  31 30 30 30 3a 8b 20 43  4f b3 b1 30 20 a7 20 59  |1000:. CO..0 . Y|
00000480  53 28 53 50 29 b2 ab 59  53 28 53 50 29 00 9b 0c  |S(SP)..YS(SP)...|
00000490  4a 01 82 3a 89 20 32 32  30 00 bd 0c 54 01 83 20  |J..:. 220...T.. |
000004a0  30 2c 31 32 37 2c 30 2c  31 2c 32 35 35 2c 31 39  |0,127,0,1,255,19|
000004b0  32 2c 37 2c 32 35 35 2c  32 32 34 00 e4 0c 5e 01  |2,7,255,224...^.|
000004c0  83 20 31 35 2c 32 35 35  2c 32 34 30 2c 33 31 2c  |. 15,255,240,31,|
000004d0  32 35 35 2c 32 34 38 2c  36 33 2c 32 35 35 2c 32  |255,248,63,255,2|
000004e0  35 32 00 0d 0d 68 01 83  20 36 33 2c 32 35 35 2c  |52...h.. 63,255,|
000004f0  32 35 32 2c 31 32 37 2c  32 35 35 2c 32 35 34 2c  |252,127,255,254,|
00000500  31 32 37 2c 32 35 35 2c  32 35 34 00 37 0d 72 01  |127,255,254.7.r.|
00000510  83 20 31 32 37 2c 32 35  35 2c 32 35 34 2c 31 32  |. 127,255,254,12|
00000520  37 2c 32 35 35 2c 32 35  34 2c 31 32 37 2c 32 35  |7,255,254,127,25|
00000530  35 2c 32 35 34 00 60 0d  7c 01 83 20 31 32 37 2c  |5,254.`.|.. 127,|
00000540  32 35 35 2c 32 35 34 2c  31 32 37 2c 32 35 35 2c  |255,254,127,255,|
00000550  32 35 34 2c 36 33 2c 32  35 35 2c 32 35 32 00 87  |254,63,255,252..|
00000560  0d 86 01 83 20 36 33 2c  32 35 35 2c 32 35 32 2c  |.... 63,255,252,|
00000570  33 31 2c 32 35 35 2c 32  34 38 2c 33 31 2c 32 35  |31,255,248,31,25|
00000580  35 2c 32 34 38 00 ac 0d  90 01 83 20 31 35 2c 32  |5,248...... 15,2|
00000590  35 35 2c 32 34 30 2c 37  2c 32 35 35 2c 32 32 34  |55,240,7,255,224|
000005a0  2c 31 2c 32 35 35 2c 31  32 38 00 c8 0d e8 03 8b  |,1,255,128......|
000005b0  20 53 50 b2 ab 31 20 a7  20 43 4f b2 c2 28 56 43  | SP..1 . CO..(VC|
000005c0  aa 33 30 29 3a 8e 00 e1  0d f2 03 43 4f b2 c2 28  |.30):......CO..(|
000005d0  56 43 aa 33 30 29 20 af  20 28 32 ae 53 50 29 00  |VC.30) . (2.SP).|
000005e0  fa 0d fc 03 43 4f b2 c2  28 56 43 aa 33 30 29 20  |....CO..(VC.30) |
000005f0  af 20 28 32 ae 53 50 29  00 00 0e 06 04 8e 00 00  |. (2.SP)........|
00000600  00                                                |.|
00000601