Compucolor.org – Virtual Media

Listing of file='8P6.BAS;01' on disk='vmedia/color_graphics_2_suits-sector.ccvf'

5 REM  PROGRAM 8.6
6 REM  MOVE A "*" ACROSS THE SCREEN
9
10 PLOT 15:REM  SMALL CHARACTERS
19
20 PLOT 6,63* RND (1)+ 1:REM  RANDOM COLOR
30 PLOT 12,27,24:REM  ERASE SCREEN & SET TO PAGE MODE
39
40 FOR J= 1TO 300:REM  300 RANDOM CHARACTERS
50   X= 64* RND (1)
60   Y= 32* RND (1)
70   COLR= 63* RND (1)+ 1
80   CHAR= 95* RND (1)+ 32:REM  RANDOM ASCII CHARACTER
90   PLOT 6,COLR,3,X,Y,CHAR:REM  PRINT THE CHARACTER
100 NEXT
109
110 PLOT 3,64,0:REM  HIDE CURSOR
119
120 Y= INT (32* RND (1)):REM  PICK A RANDOM LINE
130 SC= 28672+ 128* Y:REM  SCREEN RAM AT START OF THAT LINE
139
140 C1= PEEK (SC):REM  GET CHARACTER THERE
150 RA= PEEK (SC+ 1):REM  GET ITS CCI CODE
159
160 POKE SC,42:REM  DISPLAY THE "*"
170 POKE SC+ 1,1:REM  MAKE IT RED ON BLACK
179
180 FOR X= 1TO 63:REM FOR EACH CHARACTER POSITION ON THE LINE..
190   C2= PEEK (SC+ X+ X):REM  GET NEXT CHARACTER
200   R2= PEEK (SC+ X+ X+ 1):REM  GET ITS CCI
209
210   POKE SC+ X+ X,42:REM  DISPLAY THE "*" AT THE NEW SPOT
220   POKE SC+ X+ X+ 1,1:REM  MAKE IT RED
229
230   POKE SC+ X+ X- 2,C1:REM  PUT BACK PREVIOUS CHARACTER
240   POKE SC+ X+ X- 1,R1:REM  PUT BACK ITS CCI CODE
249
250   C1= C2:R1= R2:REM  NEW BECOMES OLD
260 NEXT
269
270 POKE SC+ 126,C1:REM  PUT BACK VERY LAST CHARACTER
280 POKE SC+ 127,R1:REM  PUT BACK ITS CCI CODE
289
290 GOTO 20:REM  REPEAT