home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib01.dsk / LOW-RES SHAPEWRITER.int < prev    next >
Text File  |  2023-02-26  |  3KB  |  57 lines

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