Color Plot

Author(s): Joseph Reigada
Publication: Syntax
Pub Details: Syntax/Syntax ZX80 v5 n6 (Volume 5, Issue 6)
Date: June 1984
Pages: 9

Use this program for drawing lines or circles anywhere on the screen. If you use a joystick, you can move, change color, and draw circles all at once. If you use your keyboard, you can only enter one command at a time. RUN the program and push k for help.

   1 REM  color plot
2 REM © Joseph D Reigada 1984
3 REM [address omitted]
4 REM [address omitted]
5 REM [address omitted]
7 CLS
8 LET b=5: LET c=0: LET i=0: LET p=9: LET x=127: LET y=87
9 GO SUB 100
10 IF STICK (1,2)=1 OR INKEY$="q" THEN LET y=y+1
12 IF STICK (1,2)=2 OR INKEY$="z" THEN LET y=y-1
14 IF STICK (1,2)=8 OR INKEY$="p" THEN LET x=x+1
16 IF STICK (1,2)=4 OR INKEY$="i" THEN LET x=x-1
18 IF STICK (1,2)=9 OR INKEY$="o" THEN LET y=y+1: IF STICK (1,2)=9 OR INKEY$="o" THEN LET x=x+1
20 IF STICK (1,2)=10 OR INKEY$="a" THEN LET x=x+1: IF STICK (1,2)=10 OR INKEY$="a" THEN LET y=y-1
22 IF STICK (1,2)=6 OR INKEY$="u" THEN LET y=y-1: IF STICK (1,2)=6 OR INKEY$="u" THEN LET x=x-1
24 IF STICK (1,2)=5 OR INKEY$="1" THEN LET x=x-1: IF STICK (1,2)=5 OR INKEY$="1" THEN LET y=y+1
26 IF INKEY$="6" THEN LET c=c-1: IF c<=1 THEN LET c=1
28 IF INKEY$="7" THEN LET c=c+1: IF c>=80 THEN LET c=80
30 IF INKEY$="6" OR INKEY$="7" THEN BEEP .125,(c-35)
32 IF STICK (2,2)=1 OR INKEY$="x" THEN GO SUB 100
34 IF INKEY$="b" THEN GO SUB 150
36 IF INKEY$="E" THEN GO TO 96
38 IF INKEY$="h" THEN CIRCLE x,y,c: BEEP .125,-23
40 IF INKEY$="k" THEN GO SUB 70
42 IF INKEY$="s" THEN GO SUB 200
44 IF INKEY$="v" THEN GO TO 7
46 IF INKEY$="c" THEN GO SUB 300
48 IF y>=168 THEN LET y=168
50 IF y<=0 THEN LET y=0
52 IF x>=255 THEN LET x=255
54 IF x<=0 THEN LET x=0
56 IF STICK (1,2)=0 THEN GO TO 60
58 BEEP .0007,49
60 BORDER b: PAPER p: INK i
62 IF i=8 THEN GO TO 10
64 PLOT x,y: IF INKEY$="w" THEN DRAW x,y
65 IF INKEY$="w" THEN BEEP .125,-47
66 ON ERR GO TO 10
68 GO TO 10
69 STOP
70 PRINT AT 2,0;"Commands for color plot.": PRINT "COPY THEM DOWN!": PRINT
72 PRINT "b= BORDER COLOR";"- Direction Keys"
74 PRINT "c= COPY": PRINT "E= EXIT"," ↑ /"
76 PRINT "h= CIRCLE "," 1 q o"
78 PRINT "s= SAVE"," <-i p->"
80 PRINT "v= CLEAR SCREEN"," u z a"
82 PRINT "w= DRAW"," / ";: OVER 1: PRINT "v";AT 11,24;"!";: OVER 0: PRINT " "
84 PRINT "x= INK COLOR": PRINT " (ink button on joystick)"
86 PRINT "6= CIRCLE DECREASE": PRINT "7= CIRCLE INCREASE"
88 PRINT "Color 8= NO PLOT": PRINT : PRINT "All commands but exit use lower case.": PRINT : PRINT "**USE RIGHT HAND JOYSTICK PORT**"
89 BEEP .125,13
90 RETURN
95 STOP
96 ON ERR RESET
97 BEEP .5,-23: BEEP .5,-35
99 STOP
100 LET i=i+1: IF i=10 THEN LET i=0
110 PRINT AT 0,0;"Ink Color:";i;"-Press k for commands": BEEP .125,49
120 PAPER 9: INK i
130 RETURN
149 STOP
150 LET b=b+1
160 IF b>=8 THEN LET b=0
170 BEEP .125,25
180 BORDER b
190 RETURN
199 STOP
200 FLASH 1: IF INKEY$="s" THEN PRINT AT 0,12;" Enter name ": FLASH 0
205 DIM s$(10)
210 INPUT s$
220 IF s$="" THEN GO TO 210
230 PRINT AT 0,12;" Name: ";s$;" "
240 SAVE s$SCREEN$
250 GO TO 110
299 STOP
300 FLASH 1: PRINT AT 0,12;" Copying "
310 PAUSE 50
320 COPY
330 FLASH 0: PRINT AT 0,12;" Copy complete "
340 PAUSE 50
350 GO TO 110
399 STOP
SYNTACTIC SUM: 17029, TS2068

Note: Type-in program listings on this website use ZMAKEBAS notation for graphics characters.