Compucolor.org – Virtual Media

Listing of file='EDTINS.BAS;01' on disk='vmedia/chip_23-sector.ccvf'

100 GOTO 2160:REM  LOAD NO-ECHO PATCH
110 REM   **  SCREEN EDITOR V1.2  MARCH 21,1981
120 REM   **
130 REM   **  JOHN R. BELL
140 REM   **  12 KIMBALL DRIVE
150 REM   **  ROCHESTER,NEW YORK  14623
160 REM   **  PHONE  (716)-475-1412
170 REM   **
180 POKE  33247,31:REM  TURN ECHO OFF
190 PLOT  14,6,6,12
200 PLOT  3,21,4
210 PRINT "SCREEN  EDITOR"
220 PLOT  3,64,0:PLOT  15,6,4
230 FOR  J= 1 TO  500:NEXT  J
240 PLOT  3,21,8
250 PRINT "BY JOHN R. BELL"
260 PLOT  3,64,0:PLOT  14,6,5
270 FOR  J= 1 TO  500:NEXT  J
280 PLOT  3,21,20
290 PRINT "INSTRUCTIONS? (Y/N)":PLOT  3,64,0
300 K= PEEK (33252):IF  K= 0 THEN 300
310 IF  K= 46 THEN 2140
320 IF  K= 57 THEN 340
330 GOTO 300
340 PLOT  12,14,6,1
350 PLOT  3,25,2
360 PRINT "INSTRUCTIONS"
370 PLOT  15,6,6:PLOT  3,5,8
380 PRINT "THIS PROGRAM IS INTENDED TO HELP YOU DRAW PRETTY PICTURES"
390 PRINT TAB( 5)"ON THE COMPUCOLOR II. A FANCY DISPLAY OR TWO CAN JAZZ"
400 PRINT TAB( 5)"UP ANY PROGRAM AND REALLY DAZZLE YOUR FRIENDS. OR YOU CAN"
410 PRINT TAB( 5)"JUST DRAW PICTURES FOR THE FUN OF IT!!. SINCE THE"
420 PRINT TAB( 5)"COMPUCOLOR'S GOT IT, FLAUNT IT !"
430 PRINT :PRINT :PRINT
440 PRINT "RIGHT,UP,"
450 PRINT "LEFT,DOWN";
460 PRINT " ARROW KEYS"
470 PLOT  15,6,2
480 PLOT  3,21,16
490 PRINT "MOVES CURSOR IN THE INDICATED DIRECTION."
500 PLOT  3,21,17
510 PRINT  "CURSOR WILL NOT MOVE UNLESS ONE OF THE"
520 PRINT TAB( 21)"ARROW KEYS IS PRESSED OR UNLESS THE"
530 PRINT TAB( 21)"AUTO ADVANCE MODE IS TURNED ON."
540 PRINT :PRINT
550 PRINT "HOME";
560 PRINT TAB( 21)"SENDS CURSOR TO THE HOME POSITION."
570 PRINT :PRINT
580 PRINT "RETURN";
590 PRINT TAB( 21)"RETURNS CURSOR TO ITS LAST POSITION."
600 PRINT TAB( 21)"ESPECIALLY HELPFUL IF HOME WAS PRESSED"
610 PRINT TAB( 21)"ACCIDENTALLY."
620 GOSUB 1990
630 PRINT "AUTO";
640 PRINT TAB( 21)"AUTO ADVANCE MODE. MOVES CURSOR RIGHT ONE"
650 PRINT TAB( 21)"POSITION AFTER EVERY KEY PRESSED. PRESSING"
660 PRINT TAB( 21)"AUTO AGAIN TURNS IT OFF. NOTE: IF AUTO"
670 PRINT TAB( 21)"IS ON AND UP OR DOWN ARROW IS USED,"
680 PRINT TAB( 21)"CURSOR WILL GO IN A DIAGONAL DIRECTION."
690 PRINT :PRINT
700 PRINT "CHARACTER KEYS";
710 PRINT TAB( 21)"EVERY CHARACTER IN THE CHARACTER SET CAN"
720 PRINT TAB( 21)"BE PRINTED."
730 PRINT :PRINT
740 PRINT "BG ON/FLG ON";
750 PRINT TAB( 21)"IF FOLLOWED BY A COLORED KEY (P-W),SETS"
760 PRINT TAB( 21)"THE BACKGROUND TO THAT COLOR. IF FOLLOWED"
770 PRINT TAB( 21)"BY A SPACE, SETS THE FLAG ON SO THAT
780 PRINT TAB( 21)"FLAG ON CHARACTERS CAN BE USED."
790 PRINT :PRINT
800 PRINT "FG ON/FLG OFF";
810 PRINT TAB( 21)"IF FOLLOWED BY A COLORED KEY (P-W), SETS"
820 PRINT TAB( 21)"THE FOREGROUND TO THAT COLOR. IF FOLLOWED"
830 PRINT TAB( 21)"BY A SPACE, SETS THE FLAG OFF SO THAT FLAG"
840 PRINT TAB( 21)"OFF CHARACTERS CAN BE USED."
850 GOSUB 1990
860 PRINT "A7 ON";
870 PRINT TAB( 21)"SETS DOUBLE HEIGHT CHARACTERS."
880 PRINT :PRINT
890 PRINT "BLINK ON";
900 PRINT TAB( 21)"SETS BLINKING FOREGROUND."
910 PRINT :PRINT
920 PRINT "BL/A7 OFF";
930 PRINT TAB( 21)"CANCELS BLINKING AND DOUBLE HEIGHT CHARS."
940 PRINT :PRINT
950 PRINT "(ESC)";
960 PRINT TAB( 21)"ENDS PROGRAM. SAVES SCREEN IF THAT OPTION"
970 PRINT TAB( 21)"WAS SELECTED."
980 PRINT :PRINT
990 PRINT "TAB 1,2,3, OR 4";
1000 PRINT TAB( 21)"CLEARS OFF CORNER OF SCREEN AND SAVES THE"
1010 PRINT " ";
1020 PRINT TAB( 21)"PICTURE THAT WAS THERE. TAB FOLLOWED BY"
1030 PRINT "b    a      b    a";
1040 PRINT TAB( 21)"1 CLEARS OFF THE UPPER LEFT CORNER, 2"
1050 PRINT "b 1  a      b 2  a";
1060 PRINT TAB( 21)"CLEARS THE UPPER RIGHT, 3 CLEARS THE LOWER"
1070 PRINT "beeee        eeeea";
1080 PRINT TAB( 21)"LEFT, AND 4 CLEARS THE LOWER RIGHT. TAB"
1090 PRINT "b                a";
1100 PRINT TAB( 21)"AGAIN WILL RESTORE THE CLEARED CORNER."
1110 PRINT "b                a"
1120 PRINT "b        a"
1130 PRINT "b 3  a      b 4  a"
1140 PRINT "b    a      b    a"
1150 PRINT " eeeeeeeeeeeeeeee "
1160 GOSUB 1990
1170 PRINT "ERASE LINE";
1180 PRINT TAB( 21)"ENTERS CHARACTER PLOT MODE. AUTOMATICALLY"
1190 PRINT TAB( 21)"CLEARS OFF A CORNER TO WORK IN UNLESS ONE"
1200 PRINT TAB( 4)"1-AF-16";
1210 PRINT TAB( 21)"IS ALREADY CLEARED. CHARACTER IS PLOTTED"
1220 PRINT TAB( 4)"2-BG-32";
1230 PRINT TAB( 21)"AT CURRENT CURSOR POSITION. CHARACTER CAN"
1240 PRINT TAB( 4)"4-CH-64";
1250 PRINT TAB( 21)"BE SPECIFIED BY ENTERING THE NUMBER(FROM 0"
1260 PRINT TAB( 4)"8-DI-128";
1270 PRINT TAB( 21)"TO 254) OR BY USING THE LETTERS A-I TO"
1280 PRINT TAB( 21)"SPECIFY WHICH BLOCKS ARE DESIRED. A"
1290 PRINT TAB( 21)"REPRESENTATION OF THE CHARACTER PLOT WITH"
1300 PRINT TAB( 21)"LETTERS IS PROVIDED. NOTE THAT THERE IS NO"
1310 PRINT TAB( 21)"LETTER 'E' USED BECAUSE IN THIS MODE 'E'"
1320 PRINT TAB( 21)"IS ALWAYS USED TO ESCAPE THE MODE."
1330 PRINT :GOSUB 1450
1340 GOSUB 1990
1350 PRINT :PRINT
1360 PRINT "ERASE PAGE";
1370 PRINT TAB( 21)"ENTERS VECTOR PLOT MODE. AUTOMATICALLY"
1380 PRINT TAB( 21)"CLEARS OFF A CORNER TO WORK IN UNLESS ONE"
1390 PRINT TAB( 21)"IS ALREADY CLEARED. BE SURE NOT TO PLOT"
1400 PRINT TAB( 21)"YOUR VECTOR INTO THE CORNER YOU'RE"
1410 PRINT TAB( 21)"WORKING IN."
1420 PRINT :PRINT
1430 GOSUB 1450
1440 GOTO 1570
1450 PRINT TAB( 8)"BOTH VECTOR AND CHARACTER PLOT MODES USE THE SAME"
1460 PRINT TAB( 8)"COLOR SETTING ROUTINE. BLINKING CAN BE SET,ENTER IN"
1470 PRINT TAB( 8)"A COLORED KEY (P-W) FOR BACKGROUND AND FOREGROUND."
1480 PRINT TAB( 8)"PRESSING RETURN WILL RETAIN THE PREVIOUS COLOR."
1490 PRINT TAB( 8)"BOTH PLOT MODES CAN BE TERMINATED AT ANY TIME BY"
1500 PRINT TAB( 8)"PRESSING E. BOTH VECTOR MODES USE THE SAME NUMBER"
1510 PRINT TAB( 8)"ENTERING ROUTINE. WHEN ENTERING IN ONE OR TWO DIGITS,"
1520 PRINT TAB( 8)"HIT RETURN TO START PROCESSING. IF A THIRD DIGIT IS"
1530 PRINT TAB( 8)"ENTERED, IT IS ACCEPTED AND ACTS AS A CARRIAGE"
1540 PRINT TAB( 8)"RETURN. TO CORRECT MISTAKES, ENTER 'E' TO START"
1550 PRINT TAB( 8)"OVER AGAIN. VECTOR PLOT MODE HAS A CORRECTION MODE."
1560 RETURN
1570 GOSUB 1990
1580 PRINT "CONTROL (CRT)";
1590 PRINT TAB( 21)"DISPLAYS CURSOR X&Y ADDRESS, ASCII CODE,"
1600 PRINT TAB( 21)"AND COLOR STATUS AT CURSOR LOCATION.ALSO"
1610 PRINT TAB( 21)"GIVES X&Y ADDRESSES IN VECTOR PLOT FORM"
1620 PRINT TAB( 21)"(128 X 128 ). CLEARS OFF A CORNER OF THE"
1630 PRINT TAB( 21)"SCREEN UNLESS ONE IS ALREADY CLEARED."
1640 PRINT :PRINT
1650 PRINT "CONTROL [";
1660 PRINT TAB( 21)"STORES CHARACTER AND COLOR STATUS OF"
1670 PRINT TAB( 21)"CURRENT CURSOR POSITION."
1680 PRINT :PRINT
1690 PRINT "CONTROL ]";
1700 PRINT TAB( 21)"PRINTS STORED CHARACTER AND COLOR STATUS"
1710 PRINT TAB( 21)"AT CURRENT CURSOR POSITION."
1720 GOSUB 1990
1730 PRINT "CONTROL ^";
1740 PRINT TAB( 20)"ENTERS FILL MODE. CONTROL ^ FOLLOWED BY C"
1750 PRINT "C,S,B";
1760 PRINT TAB( 20)"FILLS THE SCREEN BETWEEN TWO LIKE CHARACTERS"
1770 PLOT  3,0,7:PRINT "RIGHT,UP,";
1780 PRINT TAB( 20)"WITH THE SAME CHARACTER.CONTROL ^ FOLLOWED"
1790 PRINT "LEFT,DOWN,";
1800 PRINT TAB( 20)"BY S DOES THE SAME WITH THE COLOR STATUS. B"
1810 PRINT "ARROW KEYS,";
1820 PRINT TAB( 20)"DOES BOTH. ARROW KEYS FOLLOW THE LETTER TO
1830 PRINT "HOME";
1840 PRINT TAB( 20)"INDICATE THE DIRECTION OF THE FILL. HOME"
1850 PRINT TAB( 20)"FILLS A BOX WITH THE CHARACTER AND/OR COLOR"
1860 PRINT TAB( 20)"STATUS IF THE CURSOR (WITH MATCHING CHAR-"
1870 PRINT TAB( 20)"ACTER AND COLOR STATUS) IS AT THE INTERSEC-"
1880 PRINT TAB( 20)"TION OF 4 POINTS ON THE BOX OUTLINE. IF YOU"
1890 PRINT TAB( 20)"OUTLINE THE ENTIRE BOX,AND PLACE THE CURSOR"
1900 PRINT TAB( 20)"WITH CHARACTER AND COLOR STATUS WITHIN THE"
1910 PRINT TAB( 20)"BOX,IT WILL FILL UP JUST FINE.
1920 PRINT :PRINT
1930 PLOT  14,6,1
1940 PLOT  3,17,22
1950 PRINT "CREATE A MASTERPIECE TODAY!"
1960 PLOT  15,6,2
1970 ZG= 1
1980 GOSUB 1990
1990 PLOT  3,18,29
2000 PRINT "PRESS RETURN TO CONTINUE."
2010 PRINT TAB( 18)"PRESS E TO START EDITING."
2020 PLOT  3,64,0
2030 K= PEEK (33252):IF  K= 0 THEN 2030
2040 IF  K= 93 AND  ZG= 1 THEN 2140
2050 IF  K= 93 THEN 2080
2060 IF  K= 37 THEN 2140
2070 GOTO 2030
2080 PLOT  12,14,3,24,1
2090 PLOT  6,1
2100 PRINT "INSTRUCTIONS"
2110 PLOT  15
2120 PRINT :PRINT
2130 RETURN
2140 LOAD  "EDIT":RUN
2150 END
2160 DATA  245,175,50,255,129,241,201
2170 GOSUB 2280:RESTORE 2160
2180 IF  TM> 65528 THEN TM= TM- 7:GOTO 2220
2190 FOR  J= 1 TO  7 :READ  D
2200 IF  D< > PEEK (TM+ J) THEN J= 7:TM= TM- 7
2210 NEXT
2220 RESTORE 2160
2230 FOR  J= 1 TO  7:READ  D:POKE  TM+ J,D:NEXT
2240 Z= TM+ 1:AD= 33222:GOSUB 2270:POKE  33221,195
2250 Z= TM:AD= ER:GOSUB 2270
2260 CLEAR  50:GOTO 180
2270 ZZ= INT (Z/ 256):POKE  AD,Z- 256* ZZ:POKE  AD+ 1,ZZ:RETURN
2280 ER= 32940:TM= 256* PEEK (ER+ 1)+ PEEK (ER):RETURN
2290 REM  * FOR NO-ECHO, POKE 33247,31
2300 REM  * TO RETURN TO ECHO,POKE 33247,12 (AN
2310 REM  * INPUT STATEMENT OR THE END OF THE
2320 REM  * PROGRAM WILL ALSO RETURN TO ECHO