Grafix

Products: Grafix, GRAPHIX
Date: 1982
Type: Cassette
Platform(s): TS 1000

Content

Appears On

Related Products

Draw complex images and save them on tape or put them in your own program.
Image processor. No more tedious number punching to “draw” on the screen. Features: transferable images, image mixer, image reverser, up...

Related Articles

Related Content

Image Gallery

Grafix

Source Code

   1 GOTO 100
   2 IF A$="" THEN LET X=0
   3 RETURN 
   4 LET Z$(J)=D$(J)
   5 RETURN 
   6 LET Z$=B$
   7 RETURN 
   8 LET A$=Z$
   9 RETURN 
  10 LET W$=""
  11 RETURN 
 100 DIM Z$(704)
 110 LET A=1
 120 LET X$=""
 130 LET Z=0
 200 GOSUB 8900
 210 GOSUB X*30+1000
 220 IF X=227 THEN STOP 
 230 IF X=216 AND Z=1 THEN LET Z=2
 240 IF X=216 AND Z=0 THEN LET Z=1
 250 IF X=226 THEN GOTO 730
 490 IF Z<>1 AND X$>"" THEN LET Z$(A TO A+LEN X$-1)=X$
 500 CLS 
 510 PRINT Z$
 520 LET B=INT ((A-1)/32)
 530 IF X<>119 THEN PRINT AT 21,0;CHR$ (B+28);",";CHR$ (A-B*32+27);" "
 540 IF Z=1 THEN PRINT AT B,A-B*32-1;X$
 550 IF Z=2 THEN LET Z=1
 590 GOTO 200
 730 PRINT AT 21,0;"INPUT PROGRAM NAME "
 740 INPUT X$
 750 SAVE X$
 760 GOSUB 4538
 770 GOTO 500
\n2890 LET X$=CHR$ X
\n2899 RETURN 
\n4360 GOSUB 4470
\n4370 IF A>32 THEN LET A=A-32
\n4379 RETURN 
\n4390 GOSUB 4470
\n4400 IF A+L<674 THEN LET A=A+32
\n4409 RETURN 
\n4420 GOSUB 4470
\n4430 IF A>L THEN LET A=A-L
\n4439 RETURN 
\n4450 GOSUB 4470
\n4460 IF A<706-2*L THEN LET A=A+L
\n4469 RETURN 
\n4470 LET L=LEN X$
\n4475 IF L=0 OR Z=1 THEN LET L=1
\n4479 RETURN 
\n4480 GOTO 8700
\n4510 LET Y$="0123456789ABCDEFGHIJKLMNOPQRSTUV"
\n4512 PRINT AT 0,0;Y$;AT 21,0;Y$
\n4514 FOR J=1 TO 21
\n4516 LET Y$=CHR$ (J+28)
\n4518 PRINT AT J,0;Y$;AT J,31;Y$
\n4520 NEXT J
\n4522 PRINT AT 21,0;"INPUT CO-ORDS "
\n4524 INPUT Y$
\n4526 IF Y$="" THEN RETURN 
\n4528 LET A=(CODE Y$-28)*32+CODE Y$(2)-27
\n4529 RETURN 
\n4538 LET X=119
\n4540 LET X$=""
\n4599 RETURN 
\n4630 IF Z=1 THEN LET Z=0
\n7480 RETURN 
\n7510 LET Y$=""
\n7512 FOR J=1 TO 704
\n7514 LET X=CODE Z$(J)
\n7516 IF X<128 THEN GOTO 7520
\n7518 IF X>127 THEN GOTO 7530
\n7520 LET Z$(J)=CHR$ (X+128)
\n7525 NEXT J
\n7529 GOTO 7536
\n7530 IF X=192 THEN LET X=267
\n7532 LET Z$(J)=CHR$ (X-128)
\n7535 NEXT J
\n7536 LET X=119
\n7539 RETURN 
\n7540 PRINT AT 21,0;"MIX PRINT "
\n7542 GOSUB 8900
\n7544 IF X<38 OR X>60 THEN RETURN 
\n7546 POKE 16529,X
\n7548 LET B=X
\n7550 GOSUB 2
\n7552 IF X=0 THEN GOTO 7565
\n7554 POKE 16563,X
\n7556 FOR J=1 TO 704
\n7558 IF Z$(J)=" " THEN GOSUB 4
\n7560 NEXT J
\n7562 GOTO 4538
\n7565 PRINT AT 21,0;CHR$ B;"$ NOT ALLOCATED "
\n7567 GOSUB 8900
\n7568 LET X=0
\n7569 RETURN 
\n7570 GOSUB 7580
\n7572 FOR J=1 TO 704
\n7574 LET Z$(J)=CHR$ PEEK (32000+J)
\n7576 NEXT J
\n7579 RETURN 
\n7580 IF PEEK 16388+256*PEEK 16389<>32000 THEN GOTO 7590
\n7589 RETURN 
\n7590 PRINT AT 21,0;"RAMTOP <> 32000 "
\n7595 STOP 
\n7600 GOSUB 7580
\n7602 FOR J=1 TO 704
\n7604 POKE 32000+J,CODE Z$(J)
\n7606 NEXT J
\n7609 RETURN 
\n7630 PRINT AT 21,0;"INPUT GRAPHIC TO BE REPLACED "
\n7632 INPUT X$
\n7634 CLS 
\n7636 PRINT Z$
\n7638 PRINT AT 21,0;"INPUT NEW GRAPHIC "
\n7640 INPUT Y$
\n7642 FOR J=1 TO 704
\n7644 IF Z$(J)=X$ THEN LET Z$(J)=Y$
\n7646 NEXT J
\n7649 GOTO 4538
\n7660 PRINT AT 21,0;"PRINT "
\n7662 GOSUB 8900
\n7664 IF X<38 OR X>60 THEN RETURN 
\n7666 POKE 16529,X
\n7668 LET B=X
\n7670 GOSUB 2
\n7672 IF X=0 THEN GOTO 7565
\n7674 POKE 16583,X
\n7676 LET X=119
\n7679 GOTO 6
\n7690 LET B=A
\n7691 PRINT AT 21,0;"INPUT DIRECTION "
\n7692 LET X$=""
\n7694 GOSUB 8900
\n7696 IF X<112 OR X>115 THEN GOTO 8910
\n7700 LET A=100
\n7702 LET L=1
\n7704 GOSUB X*30+1000
\n7706 IF A=68 THEN LET Z$=Z$(33 TO )+Z$(1 TO 32)
\n7708 IF A=132 THEN LET Z$=Z$(673 TO )+Z$(1 TO 672)
\n7710 IF A=99 THEN LET Z$=Z$(2 TO )+Z$(1)
\n7712 IF A=101 THEN LET Z$=Z$(704)+Z$(1 TO 703)
\n7713 CLS 
\n7714 PRINT Z$
\n7719 GOTO 7691
\n7720 LET X$="\' \ '\ .\. \: \ :\.:\:.\:'\':\.'\'.\##\@@\ '\' \. \ .\ :\: \:.\.:\':\:'\'.\.'\@@\##"
\n7721 LET Y$=""
\n7722 FOR B=0 TO 21
\n7723 FOR J=32 TO 1 STEP -1
\n7724 LET Y$=Y$+Z$(32*B+J)
\n7725 LET X=CODE Y$(LEN Y$)
\n7726 IF X>0 AND X<9 AND X<>3 OR X>128 AND X<137 AND X<>131 THEN GOSUB 7740
\n7727 NEXT J
\n7728 NEXT B
\n7729 LET Z$=Y$
\n7730 LET Y$=""
\n7731 LET X$=""
\n7732 LET X=119
\n7739 RETURN 
\n7740 FOR K=15 TO 28
\n7741 IF Y$(LEN Y$)=X$(K) THEN GOTO 7745
\n7742 NEXT K
\n7744 RETURN 
\n7745 LET Y$(LEN Y$)=X$(K-14)
\n7749 RETURN 
\n7750 PRINT AT 21,0;"INPUT FILE NAME "
\n7752 GOSUB 8900
\n7754 IF X<38 OR X>60 THEN RETURN 
\n7756 POKE 16529,X
\n7758 LET B=X
\n7760 GOSUB 2
\n7762 IF X=0 THEN GOTO 7770
\n7764 PRINT AT 21,0;"WARNING: ";CHR$ X;"$ IN USE "
\n7766 GOSUB 8900
\n7768 IF X<>B THEN RETURN 
\n7770 POKE 16597,B
\n7772 LET X$=""
\n7774 LET X=119
\n7779 GOTO 8
\n7810 RETURN 
\n7840 DIM Z$(704)
\n7849 GOTO 4540
\n7870 PRINT AT 21,0;"REFS TO BE CLEARED (OR ""ALL"")"
\n7872 INPUT X$
\n7874 IF X$="ALL" THEN LET X$="ABCDEFGHIJKLMNOPQRSTUVW"
\n7876 FOR J=1 TO LEN X$
\n7878 POKE 16614,CODE X$(J)
\n7880 GOSUB 10
\n7882 NEXT J
\n7889 GOTO 4540
\n8700 GOSUB 8900
\n8710 IF X=121 THEN RETURN 
\n8720 IF X=116 THEN GOTO 8800
\n8730 IF X<64 THEN GOTO 8790
\n8740 LET X$="\' \ '\ .\. \: \..\''\ :% \.:\:.\:'\':\.'\'.\##\~~\,,\!!\;;\@@"+CHR$ 117+" AND THEN TO "+CHR$ 114+CHR$ 113+CHR$ 112+CHR$ 115+CHR$ 119+""" OR STEP <=<>>= STOP LPRINT SLOW FAST LLIST **"
\n8750 FOR J=22 TO 42
\n8760 IF X=CODE X$(J) THEN GOTO 8780
\n8770 NEXT J
\n8779 GOTO 4540
\n8780 LET X$=X$(J-21)
\n8785 LET X=0
\n8789 RETURN 
\n8790 LET X$=CHR$ (X+128)
\n8799 RETURN 
\n8800 INPUT X$
\n8809 RETURN 
\n8900 PAUSE 40000
\n8901 POKE 16437,255
\n8902 LET X=CODE INKEY$
\n8909 RETURN 
\n8910 LET A=B
\n8919 RETURN 
\n9000 REM COPYRIGHT N.GODWIN 1982

People

No people associated with this content.

Scroll to Top