3000 REM ********************************* 3010 REM ** INTER2.BAS ** 3020 REM ********************************* 3030 filename$="INTER2.BAS" : GOTO 2290 16000 PRINT cls$:PRINT "Escape Codes":filename$="INTER2.BAS" 16010 PRINT "************* " 16020 PRINT:PRINT: 16030 PRINT "This section covers Escape Code commands as they affect screen display" 16050 PRINT:PRINT:PRINT 16100 GOSUB 40050 16110 PRINT cls$:TYPE INTER.G 16120 GOSUB 40150 16130 ON code GOTO 16190,16190,16110,16110,2290,2290 16190 PRINT cls$ 16200 PRINT "Question; How does one devise a program to illustrate 'escape codes'" 16210 PRINT 16220 PRINT "Answer ; With some difficulty, because these codes can drastically" 16230 PRINT " alter the screen display. I hope that the method adopted will" 16240 PRINT " be informative and interesting. Please work this section through" 16250 PRINT " from beginning to end or you could finish with a weird display" 16260 PRINT:PRINT " This program contains a number of commands based on escape codes.The command is " 16270 PRINT "shown, together with a statement of it's effect on the screen display. All you" 16280 PRINT "need to do is to read the text, and each time the program halts to press any key" 16290 PRINT "to restart it. No prompt will be given so as not to detract from the program. " 16300 PRINT "******************************************************************************" 16310 GOSUB 16800 16320 PRINT:PRINT "Let's start by clearing the screen " 16330 PRINT :PRINT"The command is :- PRINT CHR$(27)+"CHR$(34)"E"CHR$(34) 16340 GOSUB 16800 16350 PRINT CHR$(27)+"E" 16360 GOSUB 16800 16370 PRINT "And now 'Home' the cursor (Top left-hand corner) 16380 PRINT :PRINT"The command is :- PRINT CHR$(27)+"CHR$(34)"H"CHR$(34) 16390 GOSUB 16800 16400 PRINT CHR$(27)+"H" 16410 GOSUB 16800 16420 PRINT "Here is a code to erase from the cursor to the end of the page." 16430 PRINT:PRINT"The command is :- PRINT CHR$(27)+"CHR$(34)"J"CHR$(34) 16440 GOSUB 16800 16450 PRINT CHR$(27)+"J" 16460 GOSUB 16800 16470 PRINT " This code will turn on (enable) the status line. Look at the bottom right-hand corner 16480 PRINT:PRINT"The command is :- PRINT CHR$(27)+"CHR$(34)"1"CHR$(34) 16490 GOSUB 16800 16500 PRINT CHR$(27)+"1" 16510 PRINT 16520 PRINT " and this one will disable it (turn it off) 16530 PRINT:PRINT"The command is :- PRINT CHR$(27)+"CHR$(34)"0"CHR$(34) 16540 GOSUB 16800 16550 PRINT CHR$(27)+"0" 16560 PRINT "This code alters the size of the 'viewport'":GOSUB 16800 16570 PRINT "PRINT CHR$(27)+"CHR$(34)"X"CHR$(34)"+CHR$(32+5)+CHR$(32+20)+CHR$(20-1+32)+CHR$(60-1+32)" 16580 PRINT CHR$(27)+"E" 16590 PRINT CHR$(27)+"X"+CHR$(32+5)+CHR$(32+20)+CHR$(20-1+32)+CHR$(60-1+32) 16600 FOR a= 1 TO 8 16610 PRINT "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" 16620 NEXT 16630 PRINT "and this code puts it back to it's full size" 16640 GOSUB 16800 16650 PRINT CHR$(27)+"E"+CHR$(27)+"H" 16660 PRINT CHR$(27)+"X"+CHR$(32)+CHR$(32)+CHR$(32-1+32)+CHR$(90-1+32) 16670 PRINT" PRINT CHR$(27)+"CHR$(34)"X"CHR$(34)"+CHR$(32)+CHR$(32)+CHR$(32-1+32)+CHR$(90-1+32)" 16680 FOR a=1 TO 10 16690 PRINT "###########################################################################################" 16700 NEXT 16710 PRINT "This code changes the screen colour to light green" 16720 PRINT" PRINT CHR$(27)+"CHR$(34)"b"CHR$(34)"+"CHR$(34)63 CHR$(34) 16730 GOSUB 16800 16740 PRINT CHR$(27)+"b"+" 63 " 16750 PRINT "and back again" 16760 PRINT :PRINT "PRINT CHR$(27)+"CHR$(34)"b"CHR$(34) 16770 GOSUB 16800 16780 PRINT CHR$(27)+"b" 16790 GOTO 16830 16800 PRINT:REM **** subroutine for pausing program **** 16810 WHILE INKEY$="":WEND 16820 RETURN 16830 PRINT cls$ 16840 PRINT CHR$(27)+"r" 16850 PRINT "As you can see, everything is now underlined. We are in underline mode " 16860 PRINT:PRINT "The code to do this is :-" 16870 PRINT:PRINT "PRINT chr$(27)+"CHR$(34)"r"CHR$(34) 16880 PRINT:PRINT "and to cancel underline mode we use :- 16890 PRINT CHR$(27)+"u" 16900 PRINT:PRINT "PRINT chr$(27)+"CHR$(34)"u"CHR$(34) 16910 GOSUB 16800 16920 PRINT "another trick is to enter 'reverse video' mode which looks like this " 16930 revson$=CHR$(27)+"p": revsoff$=CHR$(27)+"q" 16940 PRINT:PRINT revson$" PRINT CHR$(27)+"CHR$(34)"p"CHR$(34)"is the command to enter reverse video" 16950 PRINT:PRINT"and PRINT chr$(27)+"CHR$(34)"q"CHR$(34)"is the command to turn it off" revsoff$ 16960 PRINT:PRINT "Reverse video does not always have to be used with text although it's " 16970 PRINT "obvious use is to emphasise text. It can be used to reverse spaces as well" 16980 PRINT:PRINT TAB(25)revson$ " "revsoff$ 16990 PRINT TAB(25)revson$ " "revsoff$ 17000 GOSUB 16800 17010 PRINT cls$ 17020 PRINT CHR$(27)+"x" 17030 PRINT "Earlier we looked at a method of changing the size of the viewport" 17040 PRINT "to any reasonable size, but there is also a simpler code for changing" 17050 PRINT "the viewport to 24 rows x 80 columns, which is a standard adopted for" 17060 PRINT "many computers, and a further code to change back to the more " 17070 PRINT "generous 32 rows x 90 columns of your PCW." 17080 PRINT: PRINT "The code for a 24 x 80 screen is :- 17090 PRINT: PRINT "PRINT CHR$(27)+"CHR$(34)"x"CHR$(34) 17100 GOSUB 16800 17110 PRINT: PRINT "Although you may not have noticed, this command was given directly after" 17120 PRINT "the screen was cleared and we are already in 24 x 80 format : The command to " 17130 PRINT "return to 32 x 90 format is :- PRINT CHR$(27)+"CHR$(34)"y"CHR$(34) 17140 GOSUB 16800 17150 PRINT CHR$(27)+"y" 17160 PRINT "We are now back in the PCW standard screen size - 32 rows x 90 columns" 17170 PRINT "When either of these commands is used it also clears the screen, leaving " 17180 PRINT "the cursor position unaffected. 17190 PRINT "Changing the viewport size by the earlier method does not clear the screen." 17200 GOSUB 16800 17210 PRINT cls$ 17220 PRINT "We are nearly at the end of our investigation into escape codes and I hope" 17230 PRINT "that you have enjoyed the demonstration. But before we leave ESCAPE CODES" 17240 PRINT "there are some which involve the cursor. we can for example turn it off by -" 17250 PRINT "PRINT CHR$(27)+"CHR$(34)"f"CHR$(34);" AND turn it ON again by :-" 17260 PRINT "PRINT CHR$(27)+"CHR$(34)"e"CHR$(34)" Let's try it :- ":GOSUB 16800 17270 PRINT CHR$(27)+"f":PRINT "off ......... and" :GOSUB 16800:PRINT CHR$(27)+"e": PRINT "on again ........." 17280 GOSUB 16800 17290 PRINT:PRINT "You may have wondered how to put characters anywhere on the screen. " 17300 PRINT "This is done by the command :- 17310 PRINT "PRINT CHR$(27)+"CHR$(34)"Y"CHR$(34)"+CHR$(r+32)+CHR$(c+32)"CHR$(34)"Hello"CHR$(34) 17320 PRINT "Where r = row(0 to 32), c = column(0 to 90) and Hello is the message to be printed" 17330 PRINT "Since this will overprint anything already at the location some interesting" 17340 PRINT "effects are possible. Let's try something ! 17350 GOSUB 16800 17360 PRINT CHR$(27)+"Y"+CHR$(4+32)+CHR$(25+32)revson$" " revsoff$ 17370 PRINT CHR$(27)+"Y"+CHR$(5+32)+CHR$(25+32)revson$" " revsoff$ 17380 PRINT CHR$(27)+"Y"+CHR$(6+32)+CHR$(25+32)revson$" " revsoff$ 17390 GOSUB 16800 17400 PRINT CHR$(27)+"Y"+CHR$(5+32)+CHR$(29+32) "TEXT POSITIONING DEMO" 17410 GOSUB 16800 17420 PRINT cls$ 17430 PRINT "Finally a way of moving printing up a line - use either :- 17440 PRINT "PRINT CHR$(27)+"CHR$(34)"A"CHR$(34) "or" 17450 PRINT "PRINT CHR$(27)+"CHR$(34)"I"CHR$(34) 17460 GOSUB 16800 17470 PRINT "Hello" 17480 PRINT TAB(30)CHR$(27)+"A" "world" 17490 PRINT "The word 'world' was moved up from the line below 'Hello'; sometimes useful" 17500 PRINT "when tabulating. Don't take my word, check it when you LIST this section" 17600 GOSUB 40110 17610 PRINT "If you wish you can LIST this section by pressing [STOP] then typing " 17620 PRINT "LIST 16000-17900, but you will need to control the scrolling with the f5 key" 17630 PRINT "Alternatively, you could list it in sections ;say LIST 16000-16250, then" 17640 PRINT "LIST 16250-16500,etc. Remember also the LLIST command which allows you to" 17650 PRINT "make a copy of any program section or single line for study." 17660 PRINT "OR.......... 17670 GOSUB 40150 17680 ON code GOTO 18000,18000,16000,16000,2500,2500 18000 PRINT cls$:PRINT "Jumps and subroutines": filename$="INTER2.BAS " 18010 PRINT "*********************" 18020 PRINT:PRINT: 18030 PRINT "This section covers the following commands " 18040 PRINT:PRINT "GOTO","GOSUB...RETURN",,"IF...THEN...ELSE","ON...GOTO/GOSUB","ERROR","RESUME" 18050 PRINT:PRINT:PRINT 18100 GOSUB 40050 18110 PRINT cls$:TYPE INTER.H 18120 GOSUB 40150 18130 ON code GOTO 20000,20000,18110,18110,2290,2290 20000 PRINT cls$:PRINT "Using the printer" : filename$= "INTER2.BAS" 20010 PRINT "******************" 20020 PRINT:PRINT: 20030 PRINT "This section covers the following commands " 20040 PRINT:PRINT"LLIST","LPRINT","WIDTH LPRINT", "ESCAPE CODES" 20050 PRINT:PRINT:PRINT 20100 GOSUB 40050 20110 PRINT cls$: TYPE INTER.I 20120 GOSUB 40150 20130 ON code GOTO 20190,20190,20110,20110,2290,2290 20190 PRINT cls$ 20210 PRINT "Before running this section make sure that you have paper in the printer" 20220 PRINT "========================================================================" 20230 PRINT :PRINT" There follows several programs to demonstrate the wide range" 20240 PRINT "of commands available for controlling the printer from BASIC" 20250 PRINT "Please follow this section in sequence or you could get some puzzling effects" 20260 PRINT :PRINT "This first part illustrates the various typestyles available " 20270 GOSUB 40110: GOSUB 21810:WIDTH LPRINT 80 :GOSUB 20520 20280 GOSUB 21810 20290 PRINT:INPUT "Pica, Elite, Condensed or Proportionally Spaced-Type p,e,c or s..... ",size$ 20300 code=INSTR(1,"pPeEcCsS",size$) 20310 IF code =0 THEN 20290 20320 IF code =1 OR code =2 THEN size$="Pica" 20330 IF code =3 OR code =4 THEN size$="Elite" 20340 IF code =5 OR code =6 THEN size$="Condensed" 20350 IF code =7 OR code =8 THEN size$="Proportionally spaced" 20360 ON code GOSUB 20370,20370,21380,21380,21420,21420,21550,21550 20370 INPUT "Normal width or Large width - Type n or l......",width$ 20380 IF width$="L"OR width$="l" THEN GOSUB 21460 20390 IF width$="l" OR width$="L" THEN width$= "/Enlarged"ELSE width$="/Normal width" 20400 INPUT "Upright or Italic- Type u or i.....",slant$ 20410 IF slant$="i" OR slant$="I" THEN GOSUB 21400 20420 IF slant$="i" OR slant$="I" THEN slant$= "/Italic "ELSE slant$="/Upright" 20430 INPUT "Draft,High quality,Bold or doUblestrike - Type d, h, b or u ......",qual$ 20440 code =INSTR(1,"dDhHbBuU",qual$) 20450 IF code = 1 OR code =2 THEN qual$="/Draft " 20460 IF code = 3 OR code =4 THEN qual$="/High quality " 20470 IF code = 5 OR code =6 THEN qual$="/Bold " 20480 IF code = 7 OR code =8 THEN qual$="/Doublestrike " 20490 ON code GOSUB 21630,21630,21620,21620,21480,21480,21500,21500 20500 LPRINT :LPRINT "The parameters chosen are:- ";size$;width$;slant$;qual$ 20510 GOSUB 20520: GOTO 20530 20520 LPRINT "This is a test sentence. 1234567890 . THIS IS A TEST SENTENCE. ": RETURN 20530 INPUT "Do you want to try another example ? y/n ", a$ 20540 IF a$="y" OR a$="Y" THEN 20280 20550 IF a$="n" OR a$="N" THEN 20560 ELSE 20530 20560 GOSUB 21810: GOSUB 40110 20570 PRINT "There are two other forms of typestyle, Superscript and subscript" 20580 PRINT "Superscript is set in the upper half of the line; Subscript in the lower" 20590 PRINT "They might be useful sometime maybe in a maths prog. or as shown later" 20600 GOSUB 21520 : LPRINT "This is SUPERscript ";: REM GOSUB 21160 20610 GOSUB 21530 : LPRINT "This is SUBscript ";: GOSUB 21540 20620 LPRINT "Compared with PICA " 20630 GOSUB 40110:PRINT cls$:GOSUB 21810 20640 PRINT "Now follows a demonstration of Mixed Mode printing . When asked please" 20650 PRINT "type one of the following numbers to obtain various print combinations" 20660 PRINT :PRINT "0,1,2,4,9,10,17,18,20,22,32,33,34,36,40,41,42,49,50,52" 20670 PRINT "You can print any number within reason abut the above are the significant ones" 20680 PRINT :INPUT "Please type a number as directed above.........", x 20690 LPRINT CHR$(27)+"!"+CHR$(x);:LPRINT "MIXED MODE _ You chose number "x 20700 INPUT "Do you want another example ? y/n ......",a$ 20710 IF a$="y" OR a$="Y"THEN 20680 20720 IF a$="n" OR a$="N" THEN 20730 ELSE 20700 20730 GOSUB 21810 20740 PRINT"The next programs in this section demonstrate such things as printing width" 20750 PRINT", margins, line feed, and back space. 20760 PRINT: INPUT "What width in characters do you want (20 to 80)..........", w 20770 IF w>80 OR w<20 THEN 20810 20780 WIDTH LPRINT w 20790 LPRINT "This is to show how the width of text can be controlled by the WIDTH LPRINT COMMAND ******************************************************************************* 20800 PRINT"Try again if you wish !. Otherwise type a number over 80":GOTO 20760 20810 WIDTH LPRINT 80 20820 PRINT :PRINT " SET MARGINS " 20830 PRINT: INPUT " Set left-hand margin 0 to 30 ", n 20840 IF n<0 THEN 20900 20850 PRINT: INPUT " Set right-hand margin 40 to 80 ", r 20860 GOSUB 21660: GOSUB 21670 20870 LPRINT "This is to show that the width of margins can be controlled from within BASIC ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" 20880 PRINT "To quit this program type -1 against the left-hand margin question" 20890 GOTO 20820 20895 PRINT cls$ 20900 PRINT "And now, changing line spacings from BASIC. We can select lines " 20910 PRINT "6, 8, or 10 lines per inch by fixed commands or line spacing can be" 20920 PRINT "varied from zero to about one inch by commands with variables" 20930 GOSUB 21810 20940 LPRINT:LPRINT "6 Lines per inch":LPRINT: GOSUB 21700:GOSUB 20970 20950 LPRINT "8 Lines per inch":LPRINT: GOSUB 21680: GOSUB 20970 20960 LPRINT "10 lines per inch": LPRINT: GOSUB 21690: GOSUB 20970:GOTO 20980 20970 FOR c=1 TO 3: LPRINT " A short text to demonstrate line spacings": NEXT: RETURN 20980 ' 20990 ' 21000 PRINT:PRINT "Is this a use for Superscript ? - use it with a close line spacing !" 21010 n=15 : GOSUB 21710 : GOSUB 21520 21020 LPRINT:FOR c=1 TO 6 : LPRINT " How's this for economical use of paper ?":NEXT 21030 GOSUB 21810 21040 PRINT "Try different line spacings for yourself - type in a number between 0 and 255" 21050 INPUT "line spacing is your number/216 in inches (216=1 inch,108 =1/2 inch etc,)",n 21055 IF n<0 OR n>255 THEN PRINT "A number between 0 and 255 please": GOTO 21050 21060 GOSUB 21710 21070 LPRINT:FOR c= 1 TO 6 : LPRINT "THIS IS AN EXPERIMENT ON LINE SPACINGS":NEXT 21080 INPUT "Do you want to try another example ? y/n ", a$ 21090 IF a$="y" OR a$="Y" THEN 21040 21100 IF a$="n" OR a$="N" THEN 21110 ELSE 21080 21110 PRINT cls$ : PRINT " And finally a demonstration of paper feeding. To see it at " 21120 PRINT "it's best (if you are using A4 cut sheets) reset the paper to the top " 21130 PRINT : PRINT "Each time you press [RETURN] the paper will advance by the amount " 21150 PRINT "that you specify. The distance advanced is YOUR NUMBER/216 in inches " 21160 PRINT:INPUT "Type a number between 0 and 255.......", n 21170 IF n<0 OR n>255 THEN PRINT " A number between 0 and 255 please ": GOTO 21160 21180 GOSUB 21790 21190 INPUT "Do you want to try another example ? y/n ", a$ 21200 IF a$="y" OR a$="Y" THEN 21160 21210 IF a$="n" OR a$="N" THEN 21220 ELSE 21190 21220 ' 21230 ' 21240 PRINT cls$ 21250 PRINT" To demonstrate all of the permutations in the way that the printer can " 21260 PRINT"be controlled from BASIC would have been boring, but I hope that this program" 21270 PRINT"has covered most of the useful requirements. Please list it to see the" 21280 PRINT "commands which produce the various effects and some ideas on how to use them" 21290 PRINT: PRINT "To list the whole program on screen press [STOP] then type LIST 20000 -21990" 21300 PRINT:PRINT "To list to printer type LLIST 20000-21990" 21310 PRINT:PRINT "To list only the command codes for reference type LLIST 21380-21900" 21320 PRINT:PRINT "If you run the program out of sequence by using GOTO's you can get" 21330 PRINT "some odd results, because each code when called by GOSUB remains in force " 21340 PRINT "until cancelled. You can call commands in DIRECT MODE by typing GOSUB commands" 21350 PRINT " A good one to remember is GOSUB 21810....... Return to default " 21360 ' 21361 PRINT:PRINT: GOSUB 40150 21362 ON code GOTO 22000,22000,20110,20110,2290,2290 21370 END 21380 LPRINT CHR$(27)+"M" ;:RETURN: REM Change to ELITE typestyle (12 cpi) 21390 LPRINT CHR$(27)+"P" ;:RETURN: REM Return to PICA (10cpi) 21400 LPRINT CHR$(27)+"4" ;:RETURN: REM Change to ITALIC 21410 LPRINT CHR$(27)+"5" ;:RETURN: REM Return to upright 21420 LPRINT CHR$(27)+CHR$(15) ;:RETURN: REM Select CONDENSED (17cpi) 21430 LPRINT CHR$(27)+CHR$(18) ;:RETURN: REM Return to PICA (10cpi) 21440 LPRINT CHR$(27)+CHR$(14);:RETURN: REM Select ENLARGED (Doubles cpi) 21450 LPRINT CHR$(27)+CHR$(20) ;:RETURN: REM Cancel ENLARGED 21460 LPRINT CHR$(27)+"W"+CHR$(1);:RETURN: REM Select ENLARGED (Doubles cpi) 21470 LPRINT CHR$(27)+"W"+CHR$(0) ;:RETURN: REM Cancel ENLARGED 21480 LPRINT CHR$(27)+"E" ;:RETURN: REM Select BOLD text 21490 LPRINT CHR$(27)+"F" ;:RETURN: REM Cancel BOLD text 21500 LPRINT CHR$(27)+"G" ;: RETURN:REM Select DOUBLE STRIKE 21510 LPRINT CHR$(27)+"H" ;: RETURN:REM Cancel DOUBLE STRIKE 21520 LPRINT CHR$(27)+"S"+CHR$(0) ;: RETURN:REM Select SUPERSCRIPT 21530 LPRINT CHR$(27)+"S"+CHR$(1) ;: RETURN:REM Select SUBSCRIPT 21540 LPRINT CHR$(27)+"T" ;: RETURN:REM Cancel SUPERSCRIPT or SUBSCRIPT 21550 LPRINT CHR$(27)+"p"+CHR$(1) ;: RETURN:REM Select PROPORTIONAL spacing 21560 LPRINT CHR$(27)+"p"+CHR$(0) ;: RETURN:REM Return to PICA 21570 LPRINT CHR$(27)+"-1" ;: RETURN:REM Select UNDERLINE 21580 LPRINT CHR$(27)+"-0" ;: RETURN:REM Cancel UNDERLINE 21590 LPRINT CHR$(27)+"X" ;: RETURN:REMSelect ZERO with SLASH 21600 LPRINT CHR$(27)+"o" ;: RETURN:REM Select ZERO without SLASH 21610 LPRINT CHR$(27)+"R"+ CHR$(n) ;: RETURN:REM Select NATIONAL CHARACTER SET 21620 LPRINT CHR$(27)+"x"+CHR$(1) ;: RETURN:REM Select HIGH QUALITY 21630 LPRINT CHR$(27)+"x"+CHR$(0) ;: RETURN:REM Select DRAFT QUALITY 21640 LPRINT CHR$(27)+"c" ;: RETURN:REM Select CONTINUOUS PAPER 21650 LPRINT CHR$(27)+"$" ;: RETURN:REM Select SINGLE SHEETS 21660 LPRINT CHR$(27)+"l"+ CHR$(n) ;: RETURN:REM Set LEFT MARGIN 21670 LPRINT CHR$(27)+"Q"+ CHR$(r) ;: RETURN:REM Set RIGHT MARGIN 21680 LPRINT CHR$(27)+"0" ;: RETURN:REM Set LINE SPACING 1/8in apart 21690 LPRINT CHR$(27)+"1" ;: RETURN:REM 1/12 in apart 21700 LPRINT CHR$(27)+"2" ;: RETURN:REM 1/6in apart 21710 LPRINT CHR$(27)+"3"+CHR$(n) ;: RETURN:REM Lines n/216in apart where n=0 to 255 21720 LPRINT CHR$(27)+"A"+CHR$(n) ;: RETURN:REM n/72in apart where n=0 to 85 21730 LPRINT CHR$(27)+"C"+CHR$(n);:RETURN:REMSet PAGE LENGTH in lines (n=1 TO 127) 21740 LPRINT CHR$(27)+"C"+"0"+CHR$(n) ;: RETURN:REM Set PAGE LENGTH in inches 21750 LPRINT CHR$(27)+"N"+CHR$(n) ;: RETURN:REM Set GAP (n=1 to 127) 21760 LPRINT CHR$(27)+"O" ;: RETURN:REM Cancel previous GAP instruction 21770 LPRINT CHR$(27)+"8" ;: RETURN:REM PAPER END DETECTION OFF 21780 LPRINT CHR$(27)+"9" ;: RETURN:REM ON 21790 LPRINT CHR$(27)+"J"+CHR$(n) ;: RETURN:REM To ADVANCE THE PAPER 21810 LPRINT CHR$(27)+"@";:RETURN: REM Return to default 21820 LPRINT CHR$(27)+CHR$(8);:RETURN:REM BACKSPACE 22000 PRINT cls$:PRINT "Combining BASIC files":filename$ = "INTER2.BAS" 22010 PRINT "**********************" 22020 PRINT:PRINT: 22030 PRINT "This section covers the following commands " 22040 PRINT:PRINT "CHAIN","CHAIN MERGE","MERGE","COMMON","MEMORY","CLEAR","HIMEM","FRE" 22050 PRINT:PRINT:PRINT 22100 GOSUB 40050 22110 PRINT cls$:TYPE INTER.J 22120 GOSUB 40150 22130 ON code GOTO 24000,24000,22110,22110,2290,2290 24000 REM 24110 PRINT cls$:TYPE INDEX.ASC 24120 GOSUB 40150 24130 ON code GOTO 24190,24190,24110,24110,2290,2290 24190 PRINT "END OF INTER2.BAS _ Press any key to return to section menu " 24200 WHILE INKEY$="":WEND:GOTO 2290 31360 PRINT:PRINT 39990 END OF INTER2.BAS _ Press any key to return to section menu " 24200 WHILE INKEY$="":WEND:GOTO 2290 31360 PRINT:PRINT