home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nibble Magazine
/
nib01.dsk
/
LOW-RES SHAPEWRITER.int
< prev
next >
Wrap
Text File
|
2023-02-26
|
3KB
|
57 lines
0 POKE 204,0: POKE 205,16: POKE 74,0: POKE 75,16
2 PRINT "<CTRL-D>";"BLOADLOW RES SHAPE ASSY LANG"
3 TEXT :REM INSERT CONTROL-D BETWEEN QUOTES IN LINE 2
4 REM *************************
5 REM ** LOW-RES SHAPEWRITER **
6 REM ** MICRO-SPARC INC. **
7 REM ** P.O. BOX 325 **
8 REM ** LINCOLN, MASS 01773 **
9 REM ** COPYRIGHT 1979 **
10 REM ** ALL RIGHTS RESERVED **
11 REM *************************
12 REM << VERSION 1.1 AUTO LOADING >>
13 PRINT "":PT=1
20 CALL -936:VTAB 5:TAB 4:PRINT "** LOW RESOLUTION SHAPEWRITER **":VTAB 6:TAB 4:PRINT " << VERSION 1.1 >>":TAB 3:PRINT "<< INCLUDES AUTO-LOAD >>"
21 PRINT :PRINT "THIS PROGRAM ALLOWS YOU TO USE THE KEY-":PRINT "BOARD TO CREATE LO-RES GRAPHIC SHAPES."
22 PRINT :PRINT "U=UP D=DOWN R=RIGHT L=LEFT F=FINISH"
24 PRINT :PRINT "YOU CAN TURN PLOT ON/OFF BY PRESSING P."
25 PRINT :PRINT "AFTER ENTERING THE SHAPE, THE PROGRAM":PRINT "GIVES INSTRUCTIONS FOR SAVING IT, AS "
27 PRINT "WELL AS THE ADDRESS OF THE SHAPE FOR ":PRINT "USE IN YOUR OWN PROGRAM."
29 PRINT :PRINT "ENTER STARTING ADDRESS IN DECIMAL":PRINT "(RECOMMENDED: 2304 STARTS SHAPE":INPUT "AT HEX $900) :",LOC:ST=LOC
30 REM
31 TEXT :CALL -936:VTAB 5:PRINT "TRY TO KEEP YOUR SHAPE WITHIN A 10X10":PRINT "GRID. GOING OUTSIDE THE GRID WILL"
32 PRINT "CAUSE AN ERROR IN ATTEMPTING TO SCAN ":PRINT "THE SHAPE IN LINES 705 AND 710":INPUT "HIT RETURN TO BEGIN ",XX$:GR
33 XD=15:YD=15:PLOT X,Y:XE=XD:YE=YD
34 CALL -936
35 VTAB 21:PRINT "U=UP D=DOWN R=RIGHT L=LEFT F=FINISH"
510 K= PEEK (-16384):IF K<128 THEN 510
515 POKE -16368,0
520 IF K= ASC("U") THEN GOSUB 1000
530 IF K= ASC("D") THEN GOSUB 1100
540 IF K= ASC("R") THEN GOSUB 1200
550 IF K= ASC("L") THEN GOSUB 1300
560 IF K= ASC("P") THEN PT=-PT
595 IF K= ASC("F") THEN 700
600 IF XD<0 THEN XD=0:IF XD>30 THEN XD=30:IF YD<0 THEN YD=0:IF YD>30 THEN YD=30
605 COLOR= 6:PLOT XD,YD:IF PT<0 THEN COLOR= 0:PLOT XE,YE:XE=XD:YE=YD
650 VTAB 22:IF PT>0 THEN PRINT "PLOT ON ":IF PT<0 THEN PRINT "PLOT OFF":GOTO 510
700 POKE LOC,0:LOC=LOC+1: POKE LOC,0
702 CALL -936:PRINT "SHAPE COMPLETED. TO SAVE ON DISK, USE:":PRINT "BSAVE (NAME) ,A";ST;" ,L";LOC-ST
705 FOR Y=15 TO 25 STEP 5:H=ST/256:L=ST MOD 256: POKE 2051,L: POKE 2052,H
706 POKE 2048,162
710 FOR X=12 TO 25: POKE 8,0: POKE 5,XOLD: POKE 6,YOLD: POKE 2048,162:CALL 2048
730 POKE 5,X: POKE 6,Y: POKE 8,221: POKE 2048,162:CALL 2048:XOLD=X:YOLD=Y
750 NEXT X,Y
752 PRINT "SHAPE ADDRESS: LO=";L;" HI=";H
755 VTAB 24:INPUT "ENTER 1=(NEW SHAPE) 2=(END)",E:IF E=2 THEN 760:CALL -936:GOTO 29
760 CALL -936:PRINT "NOW YOU CAN 'BSAVE (NAME), A";ST;" ,L";LOC-ST
765 PRINT "MEMORY ADDRESS: LO= ";L;" HI= ";H:END
1000 IF PT>0 THEN 1050: POKE LOC,1:LOC=LOC+1:YD=YD-1:RETURN
1050 POKE LOC,10:LOC=LOC+1:YD=YD-1:RETURN
1100 IF PT>0 THEN 1150: POKE LOC,2:LOC=LOC+1:YD=YD+1:RETURN
1150 POKE LOC,11:LOC=LOC+1:YD=YD+1:RETURN
1200 IF PT>0 THEN 1250: POKE LOC,3:LOC=LOC+1:XD=XD+1:RETURN
1250 POKE LOC,12:LOC=LOC+1:XD=XD+1:RETURN
1300 IF PT>0 THEN 1350: POKE LOC,4:LOC=LOC+1:XD=XD-1:RETURN
1350 POKE LOC,13:LOC=LOC+1:XD=XD-1:RETURN