2000 REM ******************************************************
2010 REM **    INTMENU - Menu for file INTER1 and INTER2     **
2020 REM ******************************************************
2030 filename$="INTMENU": cls$=CHR$(27)+"E"+CHR$(27)+"H"
2090 PRINT cls$
2100 DEF FN posn$(x,y)=CHR$(27)+"Y"+CHR$(32+y)+CHR$(32+x): REM position cursor
2110 FOR a=1 TO 10: x= INT(90*RND(1)): y=INT(30*RND(1))
2120 PRINT FN posn$(x,y) " WELCOME TO INTER.BAS ":NEXT
2130 FOR a =1 TO 100:x=INT(90*RND(1)):y=INT(30*RND(1)) : PRINT FN posn$(x,y) "*":NEXT
2140 FOR a = 1 TO 300:x=INT(90*RND(1)):y=INT(30*RND(1)):PRINT FN posn$(x,y) ".": NEXT
2145 PRINT cls$
2150 PRINT FN posn$(15,0)" W E L C O M E   TO THE INTERMEDIATE SECTION OF THE COURSE"
2160 PRINT FN posn$(15,1)" *********************************************************"
2170 PRINT: PRINT
2180 PRINT "In this part of the course we are going into things a little more deeply"
2190 PRINT "You can go to any section shown on the menu which follows by typing "
2200 PRINT "it's reference letter. There is no need to complete one section before"
2210 PRINT "starting another - you can return at any time. Use the INDEX section to "
2220 PRINT "locate specific keywords.
2230 PRINT
2240 PRINT "The section is in two files which are called and loaded as required ."
2250 PRINT "The separation is shown by a dotted line. When you cross the dotted line"
2260 PRINT "a message appears 'LOADING; please wait'; The reason for this is explained"
2270 PRINT "in section j. To keep waiting time down try to avoid crossing the line too often"
2280 GOSUB 40100 
2290 PRINT cls$: PRINT TAB(15)rvson$"                                                          "rvsoff$
2300 PRINT TAB(15)rvson$"  BASTUTOR INTERMEDIATE - Further Study of Mallard Basic  "rvsoff$:PRINT 
2310 PRINT:PRINT TAB(25) "a) General commands for Program Creation "
2320 PRINT:PRINT TAB(25) "b) Mathematics "
2330 PRINT:PRINT TAB(25) "c) String Manipulation "
2340 PRINT:PRINT TAB(25) "d) More on Variables "
2350 PRINT:PRINT TAB(25) "e) Further work on Loops"
2360 PRINT:PRINT TAB(25) "f) Tables and Arrays "
2370 PRINT "              _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _  "
2380 PRINT:PRINT TAB(25) "g) Escape Codes "
2390 PRINT:PRINT TAB(25) "h) Jumps and subroutines "
2400 PRINT:PRINT TAB(25) "i) Using the printer "
2410 PRINT:PRINT TAB(25) "j) Combining BASIC files "
2420 PRINT:PRINT TAB(25) "k) INDEX "
2425 PRINT:PRINT TAB(25) "l) Return to main menu "
2430 PRINT:PRINT "Type the reference letter of your chosen subject"
2440 select$=INKEY$
2450 select$= UPPER$(select$)
2460 IF select$="" THEN 2440
2470 code = INSTR(1,"ABCDEFGHIJKL",select$)
2480 IF code = 0 THEN PRINT cls$:PRINT "Please press a letter key a to l ":GOTO 2310
2490 ON code GOTO 2500,2510,2520,2530,2540,2550,2560,2580,2590,2600,2610,10
2500 IF filename$="INTER1.BAS" THEN 4000 ELSE 2650
2510 IF filename$="INTER1.BAS" THEN 6000 ELSE 2650
2520 IF filename$="INTER1.BAS" THEN 8000 ELSE 2650
2530 IF filename$="INTER1.BAS" THEN 10000 ELSE 2650
2540 IF filename$="INTER1.BAS" THEN 12000 ELSE 2650
2550 IF filename$="INTER1.BAS" THEN 14000 ELSE 2650
2560 IF filename$="INTER2.BAS" THEN 16000 ELSE 2640
2580 IF filename$="INTER2.BAS" THEN 18000 ELSE 2640
2590 IF filename$="INTER2.BAS" THEN 20000 ELSE 2640
2600 IF filename$="INTER2.BAS" THEN 22000 ELSE 2640
2610 IF filename$="INTER2.BAS" THEN 24000 ELSE 2640
2620 ON code GOTO 4000,6000,8000,10000,12000,14000,16000,18000,20000,22000,24000
2640 DEF FN posn$(x,y)=CHR$(27)+"Y"+CHR$(32+y)+CHR$(32+x): REM position cursor
2645 PRINT FN posn$(60,30) rvson$" LOADING - please wait "rvsoff$: CHAIN MERGE "INTER2", 3000, ALL, DELETE 3000-30000
2650 DEF FN posn$(x,y)=CHR$(27)+"Y"+CHR$(32+y)+CHR$(32+x): REM position cursor
2655 PRINT FN posn$(60,30) rvson$" LOADING - please wait "rvsoff$: CHAIN MERGE "INTER1", 3000, ALL, DELETE 3000-30000
cursor
2655 PRINT FN posn$(6