Home » Personal collection » Commodore tapes » Commodore_64 » drawer_tr_tape01a_d60_c64_tape.wav » 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 tapes » Commodore_64 » drawer_tr_tape01a_d60_c64_tape.wav |
| Filename: | bounce |
| Read OK: | ✔ |
| File size: | 061B bytes |
| Load address: | 0801 |
| Exec address: | 0000 |
File contents
1 REM *******************
2 REM * BOUNCE *
3 REM *******************
4 REM * BY DOMINIC FORD *
5 REM *******************
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)
70 FORR=0TO62:READVA:POKER+16320,VA:NEXT
80 FORR=2040TO2047
90 POKER,255:NEXT
100 FORR=1TO8:POKEVC+R+38,R:NEXT
110 FORR=0TO7
120 POKER*2+1+VC,INT(RND(1)*170)+50
130 POKER*2+VC,INT(RND(1)*200)+55:NEXT
140 POKE VC+21,255
150 IF 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 IF PEEK(V)=255 AND EX=0 THEN POKEV,0:POKEVC+16,PEEK(VC+16)+2^SP
240 IF PEEK(V)=0 AND EX<>0 THEN POKE V,255:POKEVC+16,PEEK(VC+16)-EX:GOTO 290
250 POKEV,PEEK(V)+XS(SP):IF P=1 THEN P=0:GOTO 250
260 IF PEEK(V)<26 AND EX=0 THEN XS(SP)=1:P=1:GOTO250
270 IF PEEK(V)>45 AND EX<>0 THEN XS(SP)=-1:P=1:GOTO 250
280 GOSUB1000:IF CO<>0 THEN XS(SP)=-XS(SP):P=1:GOTO 250
290 POKEV+1,PEEK(V+1)+YS(SP):IF P=1 THEN P=0:GOTO 290
300 IF PEEK(V+1)>230 THEN YS(SP)=-1:P=1:GOTO 290
310 IF PEEK(V+1)<50 THEN YS(SP)=1:P=1:GOTO 290
320 GOSUB1000:IF CO<>0 THEN YS(SP)=-YS(SP):P=1:GOTO 290
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 � ******************* i � * BY DOMINIC FORD * � � ******************* � � * 1ST JUNE 1993 * � � ******************* � � � ��(147);�(30);:�53280,9:�53281,0:�56295,5:SP��1 �R�1�199:�"WOOZY";:�:�"WOOZ"; 2 �2023,25:VC�53248:�VC�21,0 Q ( �VC�23,0:�VC�29,0:�VC�16,0 r 2 �VC�28,0:�VC�27,0:R��(VC�30) � <