41020 FOR QL = 0 TO 19:MS$(QL) = "": NEXT :MS = 0: REM miss=0
41070 FOR QL = 0 TO 19
41071 EX = 0
41072 SB = QL: GOSUB 49000
41080 GOSUB 41500: REM question
41086 IF EX THEN QL = 19
41090 NEXT QL
41091 IF EX THEN 41100
41092 REM results!
41094 IF NOT MS THEN CALL OBOX,12,12,16,8:OUT$ = "You got them all right!": GOSUB 51000: GOSUB 55000: PRINT " Press a key.": GET K$: GOTO 41100
41096 CALL OBOX,2,2,38,22
41097 ON MS <19 GOSUB 41200: FOR QL = 0 TO MS -1: PRINT SPC( (18 - LEN(MS$(QL))/2))MS$(QL): NEXT : PRINT CHR$(20): VTAB 1: HTAB 13: PRINT "Items you missed:": REM Jay's on ms<19
41098 PR$ = "Press a key.": GOSUB 50000: GET K$: PRINT CHR$(20) CHR$(12)
41100 CALL CBOX:EX = 0: RETURN
41200 FOR QL = 1 TO (20 -MS)/2: PRINT : NEXT : RETURN
41500 REM <CTRL-0x0a>eng/lat ques
41510 CALL BOX,2,2,38,22
41520 GOSUB 52000
41530 CALL BOX,3,7,36,8
41540 ON M2 GOSUB 41800,41810
41550 GOSUB 51000
41552 IF M2 = 2 THEN OUT$ = " " +PR$(QU(QL)): PRINT : GOSUB 52200
51060 P$ = MID$ (OUT$,X,Z -X +1): IF PEEK(36) + LEN(P$) +1 > PEEK(33) THEN PRINT : PRINT " ";: IF J >0 THEN PRINT " ";
51070 PRINT P$;:X = Z +1
51080 NEXT Z
51090 IF PEEK(36) +Z -X +1 > PEEK(33) THEN PRINT : PRINT " ";: IF J >0 THEN PRINT " ";
51100 PRINT MID$ (OUT$,X, LEN(OUT$) -X +1);: IF PEEK(37) +1 < > PEEK(35) THEN PRINT
51110 RETURN
52000 CALL BOX,3,3,36,3: PRINT " Jim Weiler's Q & D "LINGO$" Tutor": RETURN
52200 FOR Q1 = 1 TO LEN(OUT$):A$ = MID$ (OUT$,Q1,1): IF A$ < >"{" AND A$ < >"|" AND A$ < >"~" AND A$ < >"#" AND A$ < >"$" AND A$ < >"%" AND A$ < >"*" THEN 52300
52210 PRINT CHR$(8);: SPEED= 252: NORMAL
52300 PRINT A$;: SPEED= 255: INVERSE : NEXT : RETURN
53000 REM <CTRL-0x0a>exit vfy<CTRL-0x0a>
53010 CALL OBOX,12,12,16,8
53020 OUT$ = "Do you really want to exit the quiz? (Y/N)": GOSUB 51000
53025 PR$ = "Press Y or N": GOSUB 50000
53030 GET K$
53040 IF K$ < >"Y" AND K$ < >"y" AND K$ < >"N" AND K$ < >"n" THEN CALL BOX,12,12,16,8: GOTO 53020
53050 IF K$ = "Y" OR K$ = "y" THEN 53070
53060 EX = 0
53070 CALL CBOX: RETURN
55000 REM <CTRL-0x0a>win<CTRL-0x0a>
55010 D = 5
55015 P$ = "213191171161144128114108108"
55018 FOR ZY = 1 TO 3: FOR ZZ = 1 TO LEN(P$) STEP 3:P = VAL( MID$ (P$,ZZ,3)): GOSUB 60000: NEXT : NEXT
55030 RETURN
59000 REM <CTRL-0x0a>input<CTRL-0x0a>
59020 CALL PEEK(121) + PEEK(122) *256 +32,IN$: REM GET COS LEN SIN l EXP DEL DEL INPUT DIM , USR COLOR= <CTRL-0x01> GR ROT= COLOR= <CTRL-0x02> VTAB PLOT RIGHT$ LEN SHLOAD SQR` SHLOAD SQR``
59030 RETURN
60000 CALL PEEK(121) + PEEK(122) *256 +32,P,D: REM GET COS g EXP R CHR$ ONERR P PLOT TAN GET GET COS g EXP R CHR$ ONERR P PLOT ATN GET PLOT 0 TAB( GR MID$ MID$ = <CTRL-0x05> OR ATN GET <UNKNOWN TOKEN><CTRL-0x13> * = <CTRL-0x05> RESTORE TAN GET = <UNKNOWN TOKEN> RIGHT$<CTRL-0x01> = MID$ IF TAN GET = PEEK````
60010 RETURN : REM hummy
61000 CALL PEEK(121) + PEEK(122) *256 +28: REM 8 <CTRL-0x1f><UNKNOWN TOKEN> GOSUB <CTRL-0x02> HGR2 <CTRL-0x01>` IF ^ TAB( IF ) TAB( <CTRL-0x09> PLOT ) TAB( `
61010 RETURN : REM mono
62000 CALL PEEK(121) + PEEK(122) *256 +28: REM 8 <CTRL-0x1f><UNKNOWN TOKEN> GOSUB <CTRL-0x02> HGR2 <CTRL-0x01>` IF _ TAB( IF ) TAB( ) SIN PLOT ) TAB( `
62010 RETURN : REM color
62096 PRINT CHR$(20) CHR$(12)
62900 REM error
62902 PRINT CHR$(4)"close"
62905 CALL OBOX,5,10,30,3: PRINT "Fatal error. Press a key.": GET K$: CALL CBOX