Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 0 print "{clear}"chr$(8)chr$(142);:poke 53280,0:poke 53281,0:gosub 63992:for i=0 to 24:poke x,160:poke y,160
- 1 poke 54272+x,11:poke 54272+y,11:x=x+40:y=y+40:next:x=x1:y=x1:x=x+(rnd(0)*37)
- 2 p(0)=1024+x+y*40:for i=s to 0 step -1:poke p(i),87:poke 54272+p(i),s(i):next:if x=>38 then x1=-1
- 3 if x<=2 then x1=1
- 4 if y=>23 then y1=-1
- 5 if y<=1 then y1=1
- 6 print"{home}{right}"d$(c)left$(a$,38)"{home}"d$(0)d$(c)left$(b$,38);:a$=right$(a$,253)+left$(a$,1):x=x+x1:y=y+y1:c=c+c1
- 7 b$=right$(b$,253)+left$(b$,1):if c=>4.5 then c1=-.5
- 8 if c<=1 then c1=.5
- 9 if s<4 then s=s+1
- 10 for i=4 to 1 step -1:if p(i-1)<>0 then p(i)=p(i-1)
- 11 next:for i=1375 to 0 step -1:next
- 12 wait 53265,128,128:goto 2
- 15 :
- 100 rem this has been written with cbm prg studio v2.9.0 by authur jordison
- 101 rem for the commodore 64, timed for the cmd supercpu @ 20mhz
- 102 rem line 0 clears the screen, sets petscii graphics mode and should also disable shift + c= key
- 103 rem the screen and border is set to black before going to sub routine at 63992.
- 104 rem lines 63992 through to 63999 (highest line number for cbm basic v2) sets up the variables used
- 105 rem used in the main loop from lines 2 throught to 12 as follows: d$ is used as colours for the scrolly text
- 106 rem except for d$(0), which is used to set the cursor to the bottom line to print the bottom scrolly
- 107 rem the array p is used to tract the previous positions of the ball, all initialised to zero
- 108 rem the array s is used as screen colours for the balls 'trail', from white to black, ie, the last
- 109 rem ball in the trail the same colour of the screen so it disappears. the string a$ is used for the
- 110 rem top scrolly text, and b$ is used for the bottom scrolly text. both scrollys are 254 characters long
- 111 rem i think. x and y is set to the 0th and 39th column of the screen, x1 and y1 are initialised to 1
- 112 rem c is used to count through the colours for the scrolly text (and back again) and c1 will be changed
- 113 rem to change c to count up or down. s will count up to 5 (and no higher), so the trail is maximum of 5
- 114 rem and i is initialised to zero before return. one return there is a reverse character outputted to
- 115 rem the 0th and 39th column, which is then coloured dark grey. x and y and then initialised, and the x
- 116 rem has a number added to it between 0 and 36 (I think) to set a different starting point for each time
- 117 rem the program is run. line 2, p(0) is the current ball position, then there is a step through from the
- 118 rem current ball to zero to output each ball (i.e., the trail); each ball is outputted with the colour
- 119 rem added as appropriate to add the trail. there are then checks through to line 5 so that the ball does
- 120 rem go out of bounds. line 6 and 7 outputs the scrolly texts and shuffles each string one character
- 121 rem line 7 (and line 8) also checks the colour bounds for the colour roll on the scrollys, either upwards
- 122 rem or downwards. line 9 counts up to the maximum number of the trail. line 10 tracks the balls movements
- 123 rem and puts the last positions into the p array. line 11 and 12 is simply a pause before it loops back to
- 124 rem line 2. you don't need lines 15 through to 125. ---== DONKEYSOFT MMXIV ==---
- 125 :
- 63992 dim d$(4):dim s(4):dim p(4):p(0)=0:p(1)=0:p(2)=0:p(3)=0:p(4)=0:s(0)=1:s(1)=15:s(2)=12:s(3)=11:s(4)=0:d$(0)="{home}{down*24}{right}":d$(1)="{dark gray}":d$(2)="{gray}":d$(3)="{light gray}":d$(4)="{white}"
- 63993 a$="hi. this is the 2nd basic demo that i have written. it is timed to run on the su"
- 63994 a$=a$+"percpu so may be slow @ 1mhz. this program uses the same logic as a sinclair zx8"
- 63995 a$=a$+"1 game called 'bounce' that i wrote a while back. i may as well do a version fo"
- 63996 a$=a$+"r the c64, eh? ":b$="ut it is 100% basic, the 2nd release in my attempt to write 50 "
- 63997 b$=b$+"basic programs for the 50th anniversary of the language. twitter me @shaunbeb"
- 63998 b$=b$+"bers. boing! well, it's not quite the amiga bouncing ball demo, nor the c128 on"
- 63999 b$=b$+"e that is on the 1750 reu disk, b":x=1024:y=1063:x1=1:y1=x1:c=.5:c1=1:s=0:i=s:return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement