--- title: "Language Usage" id: 51911 type: "computer_media" slug: "language-usage-2" url: "http://localhost/computer_media/language-usage-2/" markdown_url: "http://localhost/computer_media/language-usage-2.md" published_at: "2023-08-16T01:42:21+00:00" modified_at: "2026-04-03T07:59:12+00:00" author: "David Anderson" featured_image: url: "http://localhost/wp-content/uploads/2022/04/20230809-041332.jpg" excerpt: "A three-part grammar drill covering pronoun agreement, irregular verbs, and homonyms, with a real-time clock, score tracking, and a password-protected timed test mode." category: - name: "Archived Media" slug: "archived-media" taxonomy: "category" url: "http://localhost/category/archived-media/" post_tag: - name: "Downloadable" slug: "downloadable" taxonomy: "post_tag" url: "http://localhost/tag/downloadable/" - name: "Timex Computer Corporation" slug: "timex-computer-corporation" taxonomy: "post_tag" url: "http://localhost/tag/timex-computer-corporation/" - name: "TS 1000" slug: "ts1000" taxonomy: "post_tag" url: "http://localhost/tag/ts1000/" model: - name: "Timex/Sinclair 1000" slug: "ts-1000" taxonomy: "model" url: "http://localhost/model/ts-1000/" genre: - name: "Education" slug: "education" taxonomy: "genre" url: "http://localhost/type/education/" media_type: "Cassette" download_url: "https://archive.org/download/timex-sinclair-software-archive/LanguageUsage (1983)(Timex)(US)(TS1000)(Cassette).zip" mediadate: "1983" producer_company: - id: 11401 title: "Timex Computer Corporation" type: "company" url: "http://localhost/company/timex-computer-corporation/" related_products: - id: 13078 title: "Language Usage" type: "product" url: "http://localhost/product/language-usage/" media_type_tags: "Education" --- Language Usage is a three-part educational BASIC program that drills grammar rules including subject-verb agreement, double negatives, pronoun usage, irregular verb forms, and homonyms, spanning Parts I, II, and III saved as separate files (“LAN1”, “LAN2”, “LAN3”). Each part presents four-line sentences on screen and asks the student to identify which line contains a grammatical error (Part I) or choose the correct word from two options (Parts II and III). The program uses a notable numeric-alias system throughout, initializing single-letter variables (U=1, T=2, H=3, F=4, V=5, X=6, S=7, E=8, IX=9, W=10, C=100, K=500) via PI/PI arithmetic so that line-number targets in GO TO and GO SUB statements are expressed as arithmetic expressions rather than literal numbers. A real-time timer is implemented by polling PEEK 16437 (the ZX81 frame counter) and accumulating elapsed time in fractional minutes, displaying a running MM:SS clock for timed test modes. Score tracking uses DIM arrays for per-category wrong answers, and the program supports four modes: practice pass 1, practice pass 2, timed test pass 1, and timed test pass 2. *** ## Program Analysis ### Program Structure The listing comprises three independent but structurally identical program files, each saved under a different name (“LAN1”, “LAN2”, “LAN3”) and each covering a distinct set of grammar topics. Part I addresses double negatives, subject-verb agreement, and pronoun usage. Part II covers the may/can distinction, irregular verb forms, and consistency of tense. Part III handles homonyms, lay/lie, set/sit, and among/between. Each part shares the same high-level architecture: 1. Line 1: `GOTO 1000` — title/splash sequence. 2. Lines 1000–1199: Title screen with SCROLL-based animation, menu presentation, and mode selection. 3. Lines 1200–1268/1259: `DIM K$(…)` — loads the grammar-rule strings used for on-screen rule display. 4. Lines 1269–1399: Sets array `C(N)` to indicate how many sub-lines each rule covers, and `NP` for total question count. 5. Lines 1330–1390: Displays the “RULES COVERED” screen. 6. Lines 1400–1495: Timed test entry with “LAN” password check. 7. Lines 1500–1550: Box-drawing subroutine driven by `F$` coordinates. 8. Lines 1814–1899: Initialization subroutine — zeroes all counters and dimensions arrays. 9. Lines 1900–1999: Constant-setup subroutine; also calls initialization and directions. 10. Lines 2000–3xxx/5xxx: Question data and main question loop. 11. Lines 5000–5020: End-of-session routing — cycles through practice pass 1 → practice pass 2 → timed test pass 1 → timed test pass 2 → results. 12. Lines 5100–5104: Four-line SCROLL subroutine. 13. Lines 6000–6010: `CLEAR`, `SAVE`, `RUN`. ### Numeric Alias System One of the most prominent techniques in all three parts is the use of short variable names as integer aliases, initialized once in the subroutine at line 1900. All arithmetic is built on `U=PI/PI` (=1), with each subsequent alias adding 1: | Variable | Value | Variable | Value | | --- | --- | --- | --- | | `U` | 1 | `W` | 10 | | `T` | 2 | `C` | 100 | | `H` | 3 | `K` | 500 | | `F` | 4 | `O` | 0 | | `V` | 5 | `T0` | 20 | | `X` | 6 | `TT` | 22 | | `S` | 7 | `H0` | 30 | | `E` | 8 | `FT` | 14 | | `IX` | 9 | `C0` (Parts II/III) | 500 | Every `GOTO` and `GOSUB` target is written as an arithmetic expression using these aliases, e.g. `GOSUB K*H/T` = `GOSUB 750`, `GOTO T*K` = `GOTO 1000`, `GOSUB X*X*W` = `GOSUB 360`. This serves both as a memory-saving technique (expressions sharing already-loaded variable values) and as a mild obfuscation. Parts II and III introduce `C0` (= `K` = 500) as a second alias to distinguish it from the array name `C()`, since Part II reuses `K` for 500 but adds `C0=C*W` at line 1914. ### Question Data Encoding in A$ Each question is encoded as a single string `A$` whose leading characters are positional metadata. For Part I, the string begins with a two-digit row, two-digit column, and other layout parameters parsed with `VAL A$(U TO T)`, `VAL A$(H TO F)`, etc. For Parts II and III, an extended header encodes screen positions for both choice words, the display subroutine number, and which word is correct. The question text then follows inline. The display subroutines (lines 6–43 in each part) decode this header using `VAL` on substrings and jump to the appropriate layout routine via `GOSUB VAL A$(W+S TO W+E)`. Different layout subroutines handle cases where one or both words wrap, are parenthesized, or split across lines. ### Real-Time Timer The timer subroutine at lines 100–145 polls `PEEK 16437` (the system frame counter) to detect frame advances. Each detected tick increments `TIME` by `0.071111` (approximately 1/14 of a second, since the counter ticks at roughly 50 Hz but is sampled at display rate). When `TIME - TIME0 >= 1/6` of a minute (i.e. about 10 seconds), the displayed MM:SS is updated. The timer only runs when `E1` or `E2` is set (timed-test modes), and it executes inside the keypress-wait loop so no separate interrupt mechanism is needed. ### Mode and Session Flags Four boolean flags control program flow: - `P1`: Practice pass 1 active. - `P2`: Practice pass 2 active. - `E1`: Timed test pass 1 active. - `E2`: Timed test pass 2 active. At the end-of-session handler (line 5000 onward), the program cycles: if `P1` just finished, it sets `P2=1`; if `E1` just finished, it sets `E2=1`; otherwise it goes to results. The timed test requires the user to type “LAN” as a code at the entry screen (line 1445/1448), preventing accidental entry. ### Score Tracking Per-category wrong-answer counts are stored in `DIM Q(N)` where N matches `CON` (the current grammar category, 1–5 depending on the part). Global counters `NWRONG` and `NWRONG1` track total errors and first-attempt errors respectively. Results screens (line 300+) display per-category scores as fractions and percentages, computed inline with `INT (C*R(N)/denominator)` where `C=100` converts to a percentage. ### Box-Drawing Subroutine The subroutine at lines 1500–1550 draws a decorative border box using block graphics characters. It reads four two-digit coordinate fields from the string `F$` (top row `P`, bottom row `B`, left column `L`, right column `R`) and draws the top/bottom edges with `▀▀▀▀`/`▄▄▄▄`, side edges with `▌`/`▐`, and corners with `▛▜▙▟`. It is called via `GOSUB K*H/T` (= GOSUB 750) after setting `F$` to the desired coordinates. ### String Array for Rules Text Grammar rule text is stored in a fixed-width string array `K$(N, width)` dimensioned with enough rows for all rule lines. Each part uses different dimensions: Part I uses `DIM K$(21, 30)`, Part II `DIM K$(23, 29)`, Part III `DIM K$(22, 29)`. Individual rule lines are assigned by index and printed sequentially. The `C(N)` array stores how many sub-lines follow each rule header, allowing the display loop (lines 1340–1355) to print as many continuation lines as needed. ### Notable Techniques and Anomalies - In Part III, the strings `E$` and `H$` hold conjugation-pair data (e.g. `"(LAY LIE)(LAID LAY)…"` and `"(AMONG BETWEEN)"`) that are sliced inline into question `A$` strings, avoiding repetition of common word pairs. - The SLOW/FAST switching around keypress loops (lines 79–86, 100–145) is idiomatic: SLOW mode is entered to allow display refresh, FAST is restored once a key is detected. - Part I uses `G$="4 (NO ERRORS)"` as the label for choice 4, allowing a “no error” option; Parts II and III use a two-choice model only. - Line 9998 in Parts II and III (`PRINT PEEK 16412+256*PEEK 16413-16384`) is a developer diagnostic that prints the size of the BASIC program in bytes; it is not reachable in normal execution. - The `WRONG` flag prevents double-counting: if a question was already answered wrong on first attempt, the second-attempt wrong counter is not incremented again. - Part I line 1090 prints copyright text at `AT T0,T` (row 20), while Part III prints it at line 1092 — minor layout differences between parts reflecting independent editing. - In Part II lines 1517–1518 and 1537–1538, the box-drawing subroutine checks `INKEY$` for “F” or “S” mid-loop to allow switching between FAST and SLOW display speed — a feature absent from Parts I and III. ## Source Code ``` 1 GOTO 1000 2 CLS 3 IF NOT E1+P1+E2+P2 THEN GOSUB C*E 4 IF E1+E2 THEN PRINT AT U,W+V;"TIME USED ";MIN;":";SEC 5 LET F$="4 (NO ERRORS)" 6 IF NP-NLEFT>=H AND CN<>V THEN GOTO E 7 PRINT AT W,S;"SELECT THE LINE";AT W+T,V;"WHICH HAS AN ERROR" 9 PRINT AT W+X,O;"1 ";A$(X TO VAL A$(U TO T));AT W+S,O;"2 ";A$(VAL A$(U TO T)+U TO VAL A$(H TO F));AT W+E,O;"3 ";A$(VAL A$(H TO F)+U TO );AT W+IX,O;G$ 10 IF CON<>T THEN GOSUB H0 12 SLOW 13 GOSUB C 14 GOSUB C*T 15 IF DONE<>U THEN GOTO T0+X 16 IF CON<>T THEN GOSUB W*F 17 RETURN 27 GOTO W+H 30 LET D=C(CN) 31 LET C(CN)=H 33 IF CON=F THEN LET C(CN)=F 34 RETURN 40 LET C(CN)=D 41 RETURN 79 SLOW 80 IF INKEY$ <>"" THEN GOTO E*W 81 IF INKEY$ ="" THEN GOTO E*W+U 86 LET C$=INKEY$ 87 FAST 89 IF C$=CHR$ (C+W+E) THEN RUN K+C 90 LET LL=O 91 RETURN 100 SLOW 101 IF INKEY$ <>"" THEN GOTO C+U 102 LET C$="" 103 IF INKEY$ <>"" THEN LET C$=INKEY$ 104 IF C$<>"" THEN GOTO C+C/T 105 IF NOT E1+E2 THEN GOTO C+T 110 LET T2=PEEK 16437 115 LET TICK=(T2<>T1) 120 IF NOT TICK THEN GOTO C+T 125 LET T1=T2 130 LET TIME=TIME+.071111 135 IF TIME-TIME0A$(V) THEN RETURN 160 LET IK=U 162 RETURN 180 IF CON=T THEN GOSUB C*E+C/T 181 IF IK=U THEN GOTO K/F 182 GOTO C*T+U 200 GOTO C+W*E 201 IF NOT E1+E2 THEN GOTO T*C+F 202 LET NWRONG=NWRONG+U 203 GOTO 272 204 IF WRONG=U THEN GOTO T*C+H0 205 LET F$=J$ 206 IF C(CN)<=V THEN LET F$(F TO F)=STR$ (C(CN)+F) 207 IF C(CN)>V THEN LET F$(H TO F)=STR$ (C(CN)+F) 216 GOSUB K*H/T 217 PRINT AT C(CN)+V,O;S$;S$;S$;S$;S$ 218 PRINT AT U,U;"THE RULE IS --- ";L$;AT T,U;K$(CN);AT C(CN)+H,U;" ";L$;Q$;AT C(CN),U;L$;L$;AT C(CN)+H,W+U;"[T][R][Y] [A][G][A][I][N]" 219 FOR N=T TO X 220 PRINT AT N+U,U; 221 IF CN=E AND N>T THEN PRINT AT N+T,U; 222 IF C(CN)>=N THEN PRINT K$(CN+N-U) 223 NEXT N 224 LET DONE=O 225 LET NWRONG1=NWRONG1+U 226 LET WRONG=U 227 IF CON=T THEN GOSUB 860 229 RETURN 230 PRINT AT C(CN)+H,X;"█[T][H][E]█[E][R][R][O][R]█[I][S]█[I][N]█[L][I][N][E]█";CHR$ (156+VAL (A$(V)));"█"; 237 LET NWRONG=NWRONG+U 238 IF CON THEN LET Q(CON)=Q(CON)+U 240 GOTO 265 250 IF NOT E1+E2 THEN GOTO 255 252 GOTO 273 255 CLS 256 LET F$="07110920" 257 GOSUB K*H/T 258 PRINT AT IX,W+T;"[C][O][R][R][E][C][T]" 259 LET F$="15170427" 260 GOSUB K*H/T 261 PRINT AT W+X,X;NP-NLEFT+U;" DONE; ";NLEFT-U;" TO GO"; 265 GOSUB X*X*W 270 LET WRONG=O 271 GOTO 273 272 LET Q(CON)=Q(CON)+U 273 LET DONE=U 275 LET NLEFT=NLEFT-U 276 IF NLEFT=O THEN GOTO K*V 277 IF CON=T THEN GOSUB E*C+W*X 280 RETURN 300 CLS 305 IF P2+E2 THEN GOTO H*C+W+V 306 LET F$="03200427" 307 GOSUB K*H/T 311 PRINT AT V,S;"YOUR SCORE CARD",AT IX,V;NP-NWRONG1;" RIGHT ON FIRST TRY",AT W+U,V;NWRONG1-NWRONG;" RIGHT ON SECOND TRY",AT W+H,V;NWRONG;" WRONG " 312 GOSUB X*X*W 313 RUN K+C 315 LET F$="00200031" 316 GOSUB K*H/T 317 IF NOT P2 THEN GOTO 322 318 LET NWRONG=NWRONG1 319 PRINT AT U,F;"PRACTICE" 322 IF E2 THEN PRINT AT T0-U,T;"TIME USED: ";MIN;":";SEC 324 PRINT AT T,T;"TEST RESULTS";AT U,T0+S;"PER-";TAB W+IX;"SCORE CENT";AT S,T;"DBL. NEGATIVES";TAB W+E;R(U);TAB T0+U;"OF ";T;TAB T0+E;INT C*R(U)/T; 325 PRINT AT F,T;"SUBJECT/VERB";TAB W+E;R(T);TAB T0+U;"OF ";E;TAB T0+E;INT (C*R(T)/E);TAB T;"AGREEMENT" 327 PRINT AT IX,T;"PRONOUNS AS";TAB W+E;R(H);TAB T0+U;"OF ";T;TAB T0+E;INT C*R(H)/T;TAB T;"SUBJECTS" 329 PRINT AT W+T,T;"PRONOUNS AS";TAB W+E;R(F);TAB T0+U;"OF ";T;TAB T0+E;INT C*R(F)/T;TAB T;"OBJECTS" 330 PRINT AT W+V,T;"PRONOUNS AND";TAB W+E;R(V);TAB T0+U;"OF ";T;TAB T0+E;INT C*R(V)/T;TAB T;"ANTECEDENTS" 332 PRINT AT W+E,S;"TOTAL:";TAB W+E;W+X-NWRONG;TAB T0+U;"OF ";W+X;TAB T0+E;INT (C*(W+X-NWRONG)/(W+X)) 334 GOSUB X*X*W 340 RUN K+C 360 PRINT AT T0+U,X;"[P][R][E][S][S]█[C]█[T][O]█[C][O][N][T][I][N][U][E]" 362 GOSUB E*W-U 365 RETURN 700 CLS 710 RETURN 800 LET F$="00020031" 801 LET UU=U 802 IF CON=T THEN GOSUB E*C+W*V 804 LET F$(F TO F)=STR$ (C(CN)+UU) 810 GOSUB K*H/T 820 PRINT AT U,U;K$(CN) 825 FOR N=T TO X 828 IF CN=E AND N>=H THEN GOTO 832 830 IF C(CN)>=N THEN PRINT AT N,U;K$(CN+N-U) 831 GOTO 834 832 IF C(CN)>=N THEN PRINT AT N+U,U;K$(CN+N-U) 834 NEXT N 835 IF CON=T THEN GOSUB E*C+W*X 840 RETURN 850 LET D1=CN 851 LET K$(W+U)=K$(D1) 852 LET CN=E 853 LET D2=C(E) 854 LET C(E)=F 855 LET UU=T 856 RETURN 860 LET K$(W+U)=K$(F+W) 861 LET CN=D1 862 LET C(E)=D2 863 RETURN 900 CLS 905 LET F$="01200229" 910 GOSUB K*H/T 915 PRINT AT T,W+U;"DIRECTIONS",AT F,F;"(1) YOU WILL BE GIVEN",TAB E;"FOUR LINES OF WORDS",AT S,F;"(2) FIND THE LINE THAT",TAB E;"HAS AN ERROR IN IT" 930 PRINT AT W,F;"(3) PUSH THE NUMBER",TAB E;"OF THAT LINE",AT FT,F;"WORDS BEGINNING WITH",TAB F;"CAPITALS APPEAR AS";TAB F;"FOLLOWS:",AT W+E,E;"[M]R. [M]RS. [G]EORGE" 934 GOSUB X*X*W 935 RETURN 1000 CLS 1003 FAST 1010 GOSUB 1900 1011 SLOW 1012 SCROLL 1014 PRINT TAB H;"LANGUAGE USAGE" 1016 GOSUB K*V+C+U 1018 PRINT TAB T0;"MASTER" 1020 GOSUB K*V+C 1053 LET F$="12160019" 1054 GOSUB K*H/T 1055 LET F$="15191728" 1056 GOSUB K*H/T 1057 PRINT AT W+V,T0-U;"▜";AT W+X,T0-H;"▙";AT W+V,H0-U;"TM" 1058 SCROLL 1059 SCROLL 1074 PRINT TAB W+T;"PART I" 1075 SCROLL 1076 SCROLL 1083 PRINT TAB S;"GRADES 4 THRU 12" 1085 GOSUB K*V+C 1089 PRINT TAB T;"SOFTWARE FOR EXCELLENCE" 1090 PRINT AT T0,T;"COPYRIGHT 1982 BY" 1094 SCROLL 1095 PAUSE H*C 1100 FAST 1101 GOSUB 1900 1102 GOSUB T*K-E*W 1105 CLS 1107 LET F$="00190031" 1110 GOSUB K*H/T 1112 LET Z$="▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀" 1114 PRINT AT T,V;"LANGUAGE USAGE PART I";AT F,U;Z$;Z$;TAB U;"PREPARATION - RULES";TAB U;"▀▀▀▀▀▀";Z$;AT S,U;"1 SUBJECT/VERB AGREEMENT";TAB U;"2 DOUBLE NEGATIVES";TAB U;"3 PRONOUNS AS SUBJECTS";TAB U;"4 PRONOUNS AS OBJECTS";TAB U;"5 PRONOUN/ANTECEDENT AGREEMENT";AT W+H,U;Z$;Z$;TAB U;"TRAINING CAMP";TAB U;Z$;AT W+S,U;"6 TEST PRACTICE",TAB U;"7 TIMED TEST" 1120 PRINT AT T0,S;"[C][H][O][O][S][E]█[A]█[N][U][M][B][E][R]" 1125 GOSUB T*K-C*T 1126 LET LL=U 1130 GOSUB E*W-U 1132 LET L=CODE C$-T*W-E 1135 IF LS THEN GOTO K+C+H0 1140 IF L<=V THEN GOTO 1158 1141 FAST 1142 GOTO 1134+H*L 1152 LET P1=U 1153 LET NP=W+E 1154 GOTO T*K 1155 LET E1=U 1156 LET NP=W+E 1157 GOTO K+C*F 1158 LET CON=L 1159 IF L=U THEN LET CON=T 1160 IF L=T THEN LET CON=U 1162 GOTO 1269 1200 DIM K$(T0+V,H0) 1214 LET K$(U)="DO NOT USE MORE THAN ONE" 1216 LET K$(T)="NEGATIVE IN A CLAUSE" 1218 LET K$(H)="([I] CANNOT GET NOTHING DONE.)" 1220 LET K$(F)=" REMEMBER THAT ADVERBS SUCH" 1222 LET K$(V)=" AS HARDLY, BARELY, SCARCELY," 1224 LET K$(X)=" ETC. ARE NEGATIVES" 1226 LET K$(S)="SUBJECT/VERB AGREEMENT--" 1228 LET K$(E)="A VERB MUST AGREE WITH" 1230 LET K$(IX)="ITS SUBJECT IN NUMBER" 1232 LET K$(W)="WATCH OUT FOR" 1234 LET K$(W+U)=" CONTRACTIONS" 1236 LET K$(W+T)=" SUBJECTS COMING AFTER VERBS" 1238 LET K$(W+H)=" DISTRACTING PHRASES" 1240 LET K$(W+F)=" CONTRACTIONS" 1242 LET K$(W+V)=" COMPOUND SUBJECTS" 1244 LET K$(W+X)="WHEN A PRONOUN IS THE [S][U][B][J][E][C][T]" 1246 LET K$(W+S)="OF A VERB, USE THE SUBJECTIVE" 1248 LET K$(W+E)="FORM" 1254 LET K$(T0-U)="WHEN A PRONOUN IS THE [O][B][J][E][C][T]" 1256 LET K$(T0)="OF A VERB OR PREPOSITION, USE" 1257 LET K$(T0+U)="THE OBJECTIVE FORM " 1259 LET K$(T0+T)=" ([M]ARSHA CALLED [T][H][E][M].)" 1261 LET K$(T0+H)="A PRONOUN MUST AGREE WITH" 1262 LET K$(T0+F)="ITS ANTECEDENT IN NUMBER," 1263 LET K$(T0+V)="GENDER, AND PERSON" 1268 RETURN 1269 GOSUB T*IX*C 1270 IF CON<>U THEN GOTO 1280 1272 LET C(U)=H 1273 LET C(F)=H 1275 LET NP=T 1276 GOTO 1330 1280 IF CON<>T THEN GOTO 1291 1281 LET C(S)=U 1282 LET C(E)=H 1283 LET C(W+U)=U 1284 LET C(W+T)=U 1285 LET C(W+H)=U 1287 LET C(W+V)=U 1289 LET NP=E 1290 GOTO 1330 1291 IF CON<>H THEN GOTO 1305 1292 LET C(W+X)=H 1294 LET NP=T 1298 GOTO 1330 1305 IF CON<>F THEN GOTO 1310 1306 LET C(T0-U)=F 1308 LET NP=T 1309 GOTO 1330 1310 IF CON<>V THEN GOTO 1330 1311 LET C(T0+H)=H 1313 LET NP=T 1314 GOTO 1330 1317 LET B$="EXAMPLE - ERROR IN " 1318 LET A$="[E]VERY BOY TO [H][I][S] POST." 1319 PRINT AT W+U,U;"I. ";B$;TAB TT+U;"[N][U][M][B][E][R]";AT W+H,F;A$;AT W+H,W+S;"[T][H][E][I][R] POST.";AT W+X,W+U;"-CORRECT-";AT W+E,V;A$ 1320 GOSUB X*X*W 1321 SLOW 1325 PRINT AT W+U,U;"II. ";B$;TAB TT+T;"[G][E][N][D][E][R] ";AT W+H,F;A$;AT W+H,W+S;"[H][E][R] POST. ";AT W+X,W+U;"-CORRECT-";AT W+E,V;A$ 1326 GOSUB X*X*W 1327 SLOW 1328 PRINT AT W+U,U;"III. ";B$;TAB TT+H;"[P][E][R][S][O][N]";AT W+H,F;A$;AT W+H,W+S;"[Y][O][U][R] POST.";AT W+X,W+U;"-CORRECT-";AT W+E,V;A$ 1329 RETURN 1330 CLS 1335 LET F$="00200031" 1336 GOSUB K*H/T 1337 PRINT AT U,E;"RULES COVERED",TAB U;Z$;Z$; 1338 LET M=S 1339 GOSUB 1360 1340 FOR N=U TO H0-U 1341 IF NOT C(N) THEN GOTO 1355 1342 IF N=E THEN LET M=M+U 1344 PRINT AT M,U;K$(N) 1345 FOR L=T TO X 1346 IF C(N)H AND CON<>F THEN GOTO 1387 1381 PRINT AT W+T,F;"SUBJECTIVE OBJECTIVE";AT W+H,E;"I ........... ME";TAB E;"WE .......... US";TAB S;"YOU ......... YOU";TAB X;"HE,SHE ..... HIM,HER",TAB S;"THEY ....... THEM",TAB H;"WHO,WHOEVER . WHOM,WHOMEVER" 1382 IF CON=H THEN PRINT AT W+T,F;"[S][U][B][J][E][C][T][I][V][E]" 1383 IF CON=F THEN PRINT AT W+T,T0-U;"[O][B][J][E][C][T][I][V][E]" 1387 GOSUB X*X*W 1390 GOTO T*K 1400 FAST 1405 CLS 1410 PRINT AT H,W;"▛▀▀▀▀▀▀▀▀▀▀▜";TAB W;"▌TIMED TEST▐";TAB W;"▙▄▄▄▄▄▄▄▄▄▄▟" 1420 PRINT AT E,F;" TO START THE TEST";AT W,V;"TYPE THE CODE LETTERS";AT W+T,F;" THENPRESS ENTER" 1430 SLOW 1443 INPUT C$ 1445 IF C$="LAN" THEN GOTO 1470 1450 PRINT AT T0,E;"[S][O][R][R][Y]█[W][R][O][N][G]█[C][O][D][E]" 1451 FOR N=U TO V*W 1452 NEXT N 1455 GOTO C+K 1470 LET E1=U 1495 GOTO T*K 1500 LET P=VAL F$(U TO T) 1505 LET B=VAL F$(H TO F) 1507 LET L=VAL F$(V TO X) 1510 LET R=VAL F$(S TO E) 1514 FOR N=L TO R STEP F 1515 PRINT AT P,N;"▀▀▀▀"; 1516 PRINT AT B,N;"▄▄▄▄"; 1520 NEXT N 1530 FOR N=P TO B 1535 PRINT AT N,L;"▌";AT N,R;"▐"; 1540 NEXT N 1545 PRINT AT P,L;"▛";AT P,R;"▜";AT B,L;"▙";AT B,R;"▟"; 1550 RETURN 1814 LET E1=O 1815 LET E2=O 1820 LET P1=O 1821 LET P2=O 1822 LET TD=C 1823 LET LL=O 1825 DIM R(V) 1830 DIM C(H0-U) 1836 DIM Q(V) 1841 LET NWRONG=O 1842 LET TIME=O 1843 LET NWRONG1=O 1844 LET MIN=O 1845 LET SEC=O 1850 LET TIME0=-U 1860 LET T2=O 1870 LET T1=O 1890 LET WRONG=O 1899 RETURN 1900 LET U=PI/PI 1901 LET T=U+U 1902 LET H=T+U 1903 LET F=H+U 1904 LET V=F+U 1905 LET X=V+U 1906 LET S=X+U 1907 LET E=S+U 1908 LET IX=E+U 1909 LET W=V+V 1910 LET C=W*W 1911 LET K=C*W 1912 LET O=U-U 1913 LET T0=W*T 1914 LET TT=T0+T 1916 LET H0=H*W 1917 LET FT=W+F 1918 LET J$="00050031" 1919 LET L$=" " 1920 LET Q$=L$+L$ 1921 LET S$=Q$+Q$ 1995 GOSUB K+T*C 1996 GOSUB T*K-T*C 1999 RETURN 2000 FAST 2001 LET UP=T*K+S*W 2003 LET CN=U 2004 LET NLEFT=NP 2005 LET CON=U 2007 LET G$="4 (NO ERRORS)" 2008 GOSUB IX*C 2200 LET CON=U 2201 LET CN=U 2209 IF NOT P1+C(CN) THEN GOTO 2220 2210 LET A$="29512[T]HE MAPS ARE SO WRINKLEDTHAT WE CANNOT MAKE NOSENSE OUT OF THEM." 2215 GOSUB T 2229 IF NOT P2 THEN GOTO 2240 2230 LET A$="23421[I]T DOESN▘T MAKE NOSENSE TO PUT WAX ONA RUSTY CAR." 2235 GOSUB T 2249 IF NOT C(CN) THEN GOTO 2260 2250 LET A$="27501[D]EBBIE CAN▘T HARDLY BEEXPECTED TO GET A FIRSTCHAIR IN THE BAND THIS YEAR." 2255 GOSUB T 2269 IF NOT E2 THEN GOTO 2280 2270 LET A$="28541[I] CANNOT ACCEPT NO MORECHECKS FOR ITEMS PURCHASEDAT THE STORE." 2275 GOSUB T 2289 IF NOT E1 THEN GOTO 2300 2290 LET A$="24434[I]T DOESN▘T MAKE ANYDIFFERENCE WHO GOESFIRST IN THIS CONTEST." 2295 GOSUB T 2300 LET CON=T 2301 LET CN=W+U 2309 IF NOT P1+C(CN) THEN GOTO 2320 2310 LET A$="21361[T]HERE▘S THE BOYSWHO TOOK MY HATAND GLOVES." 2315 GOSUB T 2329 IF NOT P2 THEN GOTO 2340 2330 LET A$="24401[W]HERE▘S THE RABBITSYOU SAID YOU HADCAUGHT?" 2335 GOSUB T 2349 IF NOT C(CN) THEN GOTO 2360 2350 LET A$="25431[D]ON▘T SHE CARE ABOUTTHE COMPLAINTS SHEHAS BEEN RECEIVING?" 2355 GOSUB T 2369 IF NOT E2 THEN GOTO 2380 2370 LET A$="28523[T]HIS ALGEBRA PROBLEM ISVERY HARD TO FIGURE OUT.[I]T DON▘T MAKE SENSE." 2375 GOSUB T 2389 IF NOT E1 THEN GOTO 2400 2390 LET A$="23404[W]HERE▘S THE FUNNY-LOOKING COAT WITHTHREE SLEEVES?" 2395 GOSUB T 2401 LET CN=W+T 2409 IF NOT P1+C(CN) THEN GOTO 2420 2410 LET A$="16274[H]ERE ARE MYKEYS FOR MYNEW AUTOMOBILE." 2415 GOSUB T 2429 IF NOT P2 THEN GOTO 2440 2430 LET A$="19341[W]HERE IS [H]ARRYAND [L]OUISE THISEVENING?" 2435 GOSUB T 2449 IF NOT C(CN) THEN GOTO 2460 2450 LET A$="17312[S]HOULD WE GOWHERE THERE ISTWO MOVIE THEATERS?" 2455 GOSUB T 2469 IF NOT E2 THEN GOTO 2480 2470 LET A$="22371[T]HERE IS AT LEASTTWO REASONS FORMY ASKING." 2475 GOSUB T 2489 IF NOT E1 THEN GOTO 2500 2490 LET A$="25424[H]ERE IS THE BEST ONEOF THE NEW MOVIESTHIS YEAR." 2495 GOSUB T 2501 LET CN=W+H 2509 IF NOT P1+C(CN) THEN GOTO 2520 2510 LET A$="26452[O]NE OF THE [B]OY [S]COUTSARE LOOKING FOR THETRAIL MARKINGS." 2515 GOSUB T 2529 IF NOT P2 THEN GOTO 2540 2530 LET A$="26451[T]HREE HOURS▘ WORK AREALL [I] AM ABLE TO DOTHIS AFTERNOON." 2535 GOSUB T 2549 IF NOT C(CN) THEN GOTO 2560 2550 LET A$="25422[T]HE PAIL OF CHERRIESARE READY TO TAKETO THE MARKET." 2555 GOSUB T 2569 IF NOT E2 THEN GOTO 2580 2570 LET A$="23422[S]IX MONTHS▘ EFFORTARE INVOLVED IN THEPAINTING OF THAT BOAT." 2575 GOSUB T 2589 IF NOT E1 THEN GOTO 2600 2590 LET A$="27484[W]HEN YOU GET A MINUTE,THE HAMPER OF CLOTHESIS READY TO GO UPSTAIRS." 2595 GOSUB T 2701 LET CN=W+V 2709 IF NOT P1+C(CN) THEN GOTO 2720 2710 LET A$="26471[M]IKE AND [P]AT IS GOINGWITH ME TO THE COUNTYFAIR THIS [S]ATURDAY." 2715 GOSUB T 2729 IF NOT P2 THEN GOTO 2740 2730 LET A$="23441[I]S THE DOG AND THECAT ABLE TO GET ALONGIN AN AUTOMOBILE?" 2735 GOSUB T 2749 IF NOT C(CN) THEN GOTO 2760 2750 LET A$="28492[A]FTER THE CLASS, EITHER[A]LICE OR [M]ARGARET AREGOING TO TAKE MY BOOKS." 2755 GOSUB T 2769 IF NOT E2 THEN GOTO 2780 2770 LET A$="21481[I]N THE BOOK IS ACOLORFUL PICTURE FROM [M]AINEAND A BRIEF HISTORY." 2775 GOSUB T 2789 IF NOT E1 THEN GOTO 2800 2790 LET A$="27474[E]ITHER THE [G]REY OR THE[B]LUE IS GOING TO WINTHE FOOTBALL GAME." 2795 GOSUB T 2800 LET CON=H 2801 LET CN=W+X 2809 IF NOT P1+C(CN) THEN GOTO 2820 2810 LET A$="17291[F]RANK AND MEARE GOING TOTHE POOL." 2815 GOSUB T 2829 IF NOT P2 THEN GOTO 2840 2830 LET A$="23434[S]HE AND [T]ERRI WERETHE BEST PAINTERS INTHE COMMUNITY." 2835 GOSUB T 2849 IF NOT C(CN) THEN GOTO 2860 2850 LET A$="19342[F]OR THE PRIZESUS GIRLS HAD TOWIN OR PLACE EACH TIME." 2855 GOSUB T 2869 IF NOT E2 THEN GOTO 2880 2870 LET A$="25411[W]HOMEVER GOES SHOULDBE OUR VERY BESTREPRESENTATIVE." 2875 GOSUB T 2889 IF NOT E1 THEN GOTO 2900 2890 LET A$="22364[W]ILL EITHER HE ORSHE BE ABLE TOMEET THE DEADLINE?" 2895 GOSUB T 2900 LET CON=F 2901 LET CN=T0-U 2909 IF NOT P1+C(CN) THEN GOTO 2920 2910 LET A$="23493[T]HERE SHOULD BE NOREASON FOR ANY DIFFERENCESTO OCCUR BETWEEN YOU AND [I]." 2915 GOSUB T 2929 IF NOT P2 THEN GOTO 2940 2930 LET A$="28473[W]ILL YOUR OLDER BROTHERBE ABLE TO ACT AS ACHAPERON FOR YOU AND [I]?" 2935 GOSUB T 2949 IF NOT C(CN) THEN GOTO 2960 2950 LET A$="28493[A]LL OF THE DONUTS WHICHWE COOKED WERE SHAREDWITH [S]ARA AND SHE." 2955 GOSUB T 2969 IF NOT E2 THEN GOTO 2980 2970 LET A$="29552[I]F WE TAKE ALL THE MONEYSAVED BY YOU AND HE, A NEWCAR COULD BE PURCHASED." 2975 GOSUB T 2989 IF NOT E1 THEN GOTO 3000 2990 LET A$="29524[J]UST BETWEEN YOU AND ME,[I] DO NOT THINK OUR POORTEAM HAS A CHANCE." 2995 GOSUB T 3000 LET CON=V 3001 LET CN=T0+H 3009 IF NOT P1+C(CN) THEN GOTO 3020 3010 LET A$="23434[T]HE DOG APPEARS TOFIND HIS BONES AFTERHE BURIES THEM." 3015 GOSUB T 3029 IF NOT P2 THEN GOTO 3040 3030 LET A$="23403[B]OTH THE [B]LUE TEAMAND THE [G]REY TEAMWON ITS GAMES." 3035 GOSUB T 3049 IF NOT C(CN) THEN GOTO 3060 3050 LET A$="23402[E]ITHER [P]AUL OR [S]AMHAS THEIR NUMBERSREVERSED." 3055 GOSUB T 3069 IF NOT E2 THEN GOTO 3080 3070 LET A$="23414[J]ACK AND [M]ARY SHOWEXCELLENT POISE INTHEIR ACTING ROLES." 3075 GOSUB T 3089 IF NOT E1 THEN GOTO K*V 3090 LET A$="23423[N]EITHER CHERRY NORSTRAWBERRY HAS LOSTTHEIR FLAVOR." 3095 GOSUB T 5000 IF P1<>U THEN GOTO 5005 5001 LET P1=O 5002 LET P2=U 5004 GOTO T*K+C 5005 IF E1<>U THEN GOTO 5030 5006 LET E1=O 5007 LET E2=U 5008 GOTO T*K+C 5030 LET R=W+X-NWRONG 5032 LET R(U)=T-Q(U) 5034 LET R(T)=E-Q(T) 5036 LET R(H)=T-Q(H) 5038 LET R(F)=T-Q(F) 5040 LET R(V)=T-Q(V) 5044 GOTO C*H 5100 SCROLL 5101 SCROLL 5102 SCROLL 5103 SCROLL 5104 RETURN 6000 CLEAR 6005 SAVE "LAN[1]" 6010 RUN 1 GOTO 1000 6 PRINT AT W+F,O;A$(TT TO (VAL A$(U TO T)));A$(VAL A$(H TO F) TO VAL A$(V TO X));A$(VAL A$(S TO E) TO VAL A$(IX TO W));AT W+V,O;A$(VAL A$(W+U TO W+T) TO ) 7 RETURN 9 PRINT AT W+F,O;A$(TT TO VAL A$(IX TO W));AT W+V,VAL A$(W+H TO W+F);"1";AT W+V,VAL A$(W+V TO W+X);"2";AT W+S,O;A$(VAL A$(W+U TO W+T) TO ) 10 RETURN 12 PRINT AT W+F,O;A$(TT TO (VAL A$(U TO T)));AT W+X,O;A$(VAL A$(H TO F) TO );AT W+S,VAL (A$(W+H TO W+F));"1";TAB VAL (A$(W+V TO W+X));"2" 13 LET X$=A$(VAL A$(S TO E) TO VAL A$(IX TO W)) 14 RETURN 15 PRINT AT W+F,O;A$(TT TO (VAL A$(U TO T)));AT W+V,O;A$(VAL A$(H TO F) TO VAL A$(V TO X));A$(VAL A$(S TO E) TO VAL A$(IX TO W));A$(VAL A$(W+U TO W+T) TO ) 17 RETURN 18 PRINT AT W+F,O;A$(TT TO (VAL A$(U TO T)));AT W+X,O;"(";A$(VAL A$(H TO F) TO );AT W+S,VAL (A$(W+H TO W+F));"1";TAB VAL (A$(W+V TO W+X));"2" 20 RETURN 21 PRINT AT W+F,O;A$(TT TO VAL A$(V TO X));")";AT W+V,VAL A$(W+H TO W+F);"1";AT W+V,VAL A$(W+V TO W+X);"2";AT W+S,O;A$(VAL A$(S TO E) TO ) 22 RETURN 24 PRINT AT W+F,O;A$(TT TO VAL A$(U TO T));A$(VAL A$(H TO F) TO VAL (A$(V TO X)));AT W+V,O;A$(VAL A$(S TO E) TO ) 25 RETURN 27 PRINT AT W+F,O;"(";A$(VAL A$(H TO F) TO VAL A$(IX TO W));AT W+V,VAL A$(W+H TO W+F);"1";AT W+V,VAL A$(W+V TO W+X);"2";AT W+S,O;A$(VAL A$(W+U TO W+T) TO ) 28 RETURN 30 PRINT AT W+F,O;A$(VAL A$(H TO F) TO VAL A$(V TO X));A$(VAL A$(S TO E) TO VAL A$(IX TO W));AT W+V,O;A$(VAL A$(W+U TO W+T) TO ) 31 RETURN 33 PRINT AT W+F,O;A$(TT TO (VAL A$(U TO T)));AT W+V,O;A$(VAL A$(S TO E) TO VAL A$(IX TO W));A$(VAL A$(W+U TO W+T) TO ) 34 LET X$=A$(VAL A$(S TO E) TO VAL A$(IX TO W)) 35 RETURN 36 PRINT AT W+F,O;A$(TT TO VAL A$(IX TO W));AT W+V,VAL A$(W+H TO W+F);"1";AT W+V,VAL A$(W+V TO W+X);"2";AT W+S,O;A$(VAL A$(W+U TO W+T) TO ) 37 RETURN 39 PRINT AT W+F,O;A$(TT TO VAL A$(U TO T));A$(VAL A$(H TO F) TO VAL (A$(V TO X)));AT W+V,O;A$(VAL A$(W+U TO W+T) TO ) 40 RETURN 42 PRINT AT W+F,O;A$(TT TO VAL A$(IX TO W));AT W+V,VAL A$(W+H TO W+F);"1";AT W+V,VAL A$(W+V TO W+X);"2";AT W+S,O;A$(VAL A$(W+U TO W+T) TO ) 43 RETURN 79 SLOW 80 IF INKEY$ <>"" THEN GOTO E*W 82 IF INKEY$ ="" THEN GOTO E*W+T 83 FAST 84 LET C$=INKEY$ 85 IF C$=CHR$ 118 THEN GOTO K+C 86 RETURN 100 SLOW 101 IF INKEY$ <>"" THEN GOTO C+U 102 LET C$="" 103 IF INKEY$ <>"" THEN LET C$=INKEY$ 104 IF C$<>"" THEN GOTO C+C/T 105 IF NOT E1+E2 THEN GOTO C+T 110 LET T2=PEEK 16437 115 LET TICK=(T2<>T1) 120 IF NOT TICK THEN GOTO C+T 125 LET T1=T2 130 LET TIME=TIME+.071111 135 IF TIME-TIME0A$(TT-U) THEN RETURN 160 LET IK=U 162 RETURN 200 IF IK=U THEN GOTO K/F 201 IF NOT E1+E2 THEN GOTO T*C+F 202 LET NWRONG=NWRONG+U 203 GOTO 272 204 CLS 205 LET WRONG=U 206 GOSUB VAL A$(T0-U TO T0) 207 PRINT AT E,O;"THE CORRECT WORD IS...";AT W,(T0-U-LEN X$)/T;"-";X$;"-" 208 GOSUB E*C 220 GOSUB X*X*W 233 FAST 234 LET DONE=U 235 LET NWRONG1=NWRONG1+U 237 LET NWRONG=NWRONG+U 238 IF CON THEN LET Q(CON)=Q(CON)+U 240 GOTO 270 250 IF NOT E1+E2 THEN GOTO 255 252 GOTO 273 255 CLS 256 LET F$="07110920" 257 GOSUB K*H/T 258 PRINT AT IX,W+T;"[C][O][R][R][E][C][T]" 259 LET F$="15170427" 260 GOSUB K*H/T 261 PRINT AT W+X,X;NP-NLEFT+U;" DONE; ";NLEFT-U;" TO GO" 265 GOSUB X*X*W 270 LET WRONG=O 271 GOTO 273 272 LET Q(CON)=Q(CON)+U 273 LET DONE=U 275 LET NLEFT=NLEFT-U 276 IF NLEFT=O THEN GOTO K*V 280 RETURN 300 CLS 302 LET A$=" OUT OF " 305 IF E1+E2+P1+P2 THEN GOTO 315 306 LET F$="03200427" 307 GOSUB K*H/T 311 PRINT AT V,S;"YOUR SCORE CARD",AT IX,IX;NP-NWRONG1;AT IX,W+T;" RIGHT",AT W+H,IX;NWRONG;AT W+H,W+T;" WRONG " 312 GOSUB X*X*W 313 GOTO K+C 320 LET F$="00200031" 321 GOSUB K*H/T 322 FAST 323 PRINT AT T,W;"TEST RESULTS";AT F,W+X;"SCORE";TAB T0+F;"PERCENT"; 324 IF P1+P2 THEN PRINT AT U,W+T;"PRACTICE" 325 PRINT AT W+T,T;"MAY AND CAN";TAB W+F;R(U);A$;T;TAB T0+S;INT (C*R(U)/T) 327 PRINT AT IX,T;"IRREGULAR";TAB T;"VERB FORMS";TAB W+F;R(T);A$;F;TAB T0+S;INT (C*R(T)/F) 329 PRINT AT X,T;"CONSISTENCY";TAB T;"OF TENSE";TAB W+F;R(H);A$;T;TAB T0+S;INT (C*R(H)/T) 332 PRINT AT W+V,H;"TOTAL";TAB W+F;E-NWRONG;A$;E;TAB T0+S;INT (C*(E-NWRONG)/E+.5) 333 IF E1+E2 THEN PRINT AT T0-U,E;"TIME USED ";MIN;":";SEC 334 GOSUB X*X*W 340 GOTO K+C 360 PRINT AT T0+U,X;"[P][R][E][S][S]█[C]█[T][O]█[C][O][N][T][I][N][U][E]" 362 GOSUB E*W-U 365 RETURN 700 CLS 710 RETURN 800 LET F$="00050031" 805 IF CON=U THEN PRINT AT U,U;K$(T),TAB U;K$(H),TAB U;K$(V),TAB U;K$(X) 807 IF CON=T THEN PRINT AT U,U;K$(S),TAB U;K$(E),TAB U;K$(IX),TAB U;K$(W) 808 IF CON=H THEN PRINT AT U,U;K$(W+V),TAB U;K$(W+X),TAB U;K$(W+S),TAB U;K$(W+E) 812 IF CON=F THEN PRINT AT U,U;K$(T0),TAB U;K$(T0+U),TAB U;K$(T0+T),TAB U;K$(T0+H) 815 GOSUB K*H/T 850 RETURN 900 CLS 905 LET F$="01200229" 910 GOSUB K*H/T 915 PRINT AT T,W+U;"DIRECTIONS",AT F,F;"1 YOU WILL BE GIVEN",TAB X;"ONE OR MORE SENTENCES";AT S,F;"2 THERE WILL BE A CHOICE",TAB X;"OF TWO POSSIBLE WORDS";AT W,F;"3 PUSH THE NUMBER OF",TAB X;"THE CORRECT WORD" 930 PRINT AT W+F,F;"WORDS BEGINNING WITH",TAB F;"CAPITALS APPEAR AS";TAB F;"FOLLOWS:",AT T0-T,F;"[M]R. [M]RS. [G]EORGE" 933 LET TD=C/T 934 GOSUB X*X*W 935 RETURN 1003 SLOW 1010 GOSUB 1900 1012 SCROLL 1014 PRINT TAB H;"LANGUAGE USAGE" 1015 GOSUB K*V+C+U 1045 PRINT TAB T0;"MASTER" 1046 GOSUB K*V+C 1053 LET F$="12160019" 1054 GOSUB K*H/T 1055 LET F$="15191728" 1056 GOSUB K*H/T 1057 PRINT AT W+V,T0-U;"▜";AT W+X,T0-H;"▙" 1058 SCROLL 1059 SCROLL 1074 PRINT TAB W+T;"PART II" 1075 SCROLL 1076 SCROLL 1083 PRINT TAB S;"GRADES 4 THRU 12" 1085 GOSUB K*V+C 1091 SCROLL 1093 PRINT TAB T;"SOFTWARE FOR EXCELLENCE" 1094 SCROLL 1095 PRINT AT W+IX,T;"COPYRIGHT 1982 BY";AT V,H0-U;"TM" 1097 PAUSE H*C 1102 FAST 1103 GOSUB T*K-E*W 1105 CLS 1107 LET F$="00190031" 1110 GOSUB K*H/T 1112 LET Z$="▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀" 1114 PRINT AT T,V;"LANGUAGE USAGE PART II";AT F,U;Z$;Z$;AT V,T;"PREPARATION - RULES";TAB U;"▀▀▀▀▀▀";Z$;AT E,V;"1 CONSISTENCY OF TENSE";AT IX,V;"2 IRREGULAR VERB FORMS";TAB V;"3 MAY AND CAN";AT W+H,U;Z$;Z$;TAB T;"TRAINING CAMP";TAB U;Z$;AT W+S,V;"4 TEST PRACTICE",TAB V;"5 TIMED TEST" 1120 PRINT AT T0,S;"[C][H][O][O][S][E]█[A]█[N][U][M][B][E][R]" 1125 GOSUB T*K-C*T 1130 GOSUB E*W-U 1132 LET L=CODE C$-T*W-E 1135 IF LV THEN GOTO 1130 1140 IF L<=H THEN GOTO 1158 1141 FAST 1142 IF L<>F THEN GOTO 1155 1152 LET P1=U 1153 LET NP=E 1154 GOTO T*K 1155 LET E1=U 1156 LET NP=E 1157 GOTO K+C*F 1158 LET CON=F-L 1165 GOTO 1260 1200 DIM K$(T0+H,T0+IX) 1210 LET K$(U)=" MAY AND CAN" 1211 LET K$(T)="MAY AND MIGHT IMPLY" 1212 LET K$(H)=" PERMISSION TO DO SOMETHING" 1213 LET K$(F)=" " 1214 LET K$(V)="CAN AND COULD IMPLY " 1215 LET K$(X)=" CAPABILITY TO DO SOMETHING" 1216 LET K$(S)="IRREGULAR VERBS DO NOT SHOW" 1217 LET K$(E)=" PAST TENSE BY SIMPLY ADDING" 1218 LET K$(IX)=" -ED, -T, OR -D TO THE" 1219 LET K$(W)=" PRESENT TENSE" 1220 LET K$(W+U)="YOUR MEMORY OF THE PRINCIPAL" 1221 LET K$(W+T)=" PARTS OF IRREGULAR VERBS" 1222 LET K$(W+H)=" WILL BE TESTED IN THE WORK" 1223 LET K$(W+F)=" TO FOLLOW" 1224 LET K$(W+V)="MAKE THE TENSE OF A VERB" 1225 LET K$(W+X)=" CONSISTENT WITH THE PRESENT," 1226 LET K$(W+S)=" PAST,OR FUTURE TENSE IMPLIED" 1227 LET K$(W+E)=" BY THE REST OF THE SENTENCE" 1228 LET K$(T0-U)=" ACCEPT AND EXCEPT" 1229 LET K$(T0)="ACCEPT IS A VERB MEANING TO" 1230 LET K$(T0+U)=" AGREE WITH OR TO RECEIVE" 1231 LET K$(T0+T)="EXCEPT IS A PREPOSITION" 1232 LET K$(T0+H)=" MEANING LEAVE OUT" 1259 RETURN 1260 GOSUB T*IX*C 1270 IF CON<>U THEN GOTO K+C*H-T0 1272 LET C(U)=U 1273 LET C(T)=T 1274 LET C(V)=T 1275 LET NP=H 1277 GOTO 1330 1280 IF CON<>T THEN GOTO K+C*H-W 1281 LET C(S)=F 1283 LET C(W+U)=F 1286 LET NP=F 1288 GOTO 1330 1290 IF CON<>H THEN GOTO K+C*H 1293 LET C(W+V)=F 1297 LET NP=T 1300 IF CON<>F THEN GOTO 1330 1302 LET C(T0-U)=U 1304 LET C(T0)=T 1306 LET C(T0+T)=T 1308 LET NP=T 1330 CLS 1331 LET F$="01200031" 1332 GOSUB K*H/T 1333 PRINT AT T,E;"RULES COVERED",TAB U;Z$;Z$; 1334 IF CON=U THEN GOTO 1341 1335 LET M=E 1336 IF CON=H THEN PRINT AT X,F;"CONSISTENCY OF TENSE" 1337 IF CON=T THEN PRINT AT X,X;"IRREGULAR VERBS" 1338 GOTO 1342 1341 LET M=X 1342 FOR N=U TO T0+H 1343 IF NOT C(N) THEN GOTO 1355 1344 PRINT AT M,T;K$(N) 1345 IF C(N)=H AND CN<>V THEN GOTO 2075 2074 PRINT AT E,F;"SELECT THE CORRECT WORD" 2075 PRINT AT W+U,O; 2076 LET X$=A$(VAL A$(H TO F) TO VAL A$(V TO X)) 2077 GOSUB VAL A$(W+S TO W+E) 2080 SLOW 2085 GOSUB C 2090 GOSUB C*T 2092 IF DONE=U THEN RETURN 2094 IF DONE=T THEN GOTO C*C-U 2097 GOTO 2085 2100 IF NOT E2 THEN GOTO 2140 2103 LET A$="262830364344071109061[W]HEN (CAN MAY) YOU GETTHE LAWN MOWER WORKING?" 2105 GOSUB UP 2140 LET CN=T 2145 IF NOT C(CN) THEN GOTO 2395 2146 LET A$="242628345051050909061[H]E (CAN MAY) CARRY A FOOTBALLAS WELL AS ANYONE." 2150 GOSUB UP 2160 LET A$="222325315354020642301([C]AN [M]AY) YOU MAKE A DECISION ASTO WHO IS THE BEST CANDIDATE?" 2165 GOSUB UP 2395 LET CN=S 2396 LET CON=T 2397 IF NOT P1+C(CN) THEN GOTO 2445 2398 LET A$="243336384546061209062[H]E (BEARED BORE) UP WELLUNDER THE LOAD." 2400 GOSUB UP 2445 IF NOT P2 THEN GOTO 2495 2446 LET A$="324043454748141909062[T]HE CHORUS (RISED ROSE) TOSING." 2450 GOSUB UP 2495 IF NOT E1 THEN GOTO 2545 2496 LET A$="314043454950131909062[T]HE GIRLS (SINGED SANG) WITHUNUSUAL CLARITY." 2500 GOSUB UP 2545 IF NOT E2 THEN GOTO 2575 2546 LET A$="242629374647051109061[H]E (FLED FLEED) THE SCENEOF THE ACCIDENT." 2550 GOSUB UP 2575 IF NOT C(CN) THEN GOTO 2595 2576 LET A$="495158596466041118332[T]HE CROPS IN THE GARDEN WERE(FREEZED FROZEN) BY THE COLD." 2580 GOSUB UP 2597 IF NOT P1+C(CN) THEN GOTO 2645 2598 LET A$="374447495051182321242[T]HE VISITOR HAD (RANG RUNG)THE BELL SEVERAL TIMES." 2600 GOSUB UP 2645 IF NOT P2 THEN GOTO 2655 2646 LET A$="303843454849121809062[H]AD THEY (CHOSE CHOSEN) THERED, THEY WOULD HAVE WON." 2650 GOSUB UP 2695 IF NOT E1 THEN GOTO 2745 2696 LET A$="293134414344101509061[S]HE HAS (SWUM SWAM) ATNEAR RECORD SPEED." 2700 GOSUB UP 2745 IF NOT E2 THEN GOTO 2755 2746 LET A$="283641435253101609062[H]AD HE (BROKE BROKEN) THE SEAL,THE GAS WOULD HAVE ESCAPED." 2750 GOSUB UP 2775 IF NOT C(CN) THEN GOTO 2785 2776 LET A$="364450525354182521242[T]HE FARMER HAS (WROTE WRITTEN)TO THE TRUCK MANUFACTURER." 2780 GOSUB UP 2785 LET CN=W+V 2786 LET CON=H 2796 IF NOT P1+C(CN) THEN GOTO 2805 2797 LET A$="333941434445141821242[Y]ESTERDAY [I] (SEE SAW)THE STORM COMING." 2800 GOSUB UP 2845 IF NOT P2 THEN GOTO 2895 2846 LET A$="454749505254010518332[T]HE [G]OLDEN [A]GE OF [G]REECE(IS WAS) LONG AGO." 2850 GOSUB UP 2895 IF NOT E1 THEN GOTO 2915 2896 LET A$="252728344243050909061[N]OW (IS WAS) THE BESTTIME TO ORDER SEED." 2900 GOSUB UP 2915 IF NOT E2 THEN GOTO 2925 2916 LET A$="252728344243050909061[H]OW (IS WAS) THE PLAYPRACTICE CURRENTLY GOING?" 2917 GOSUB UP 2930 IF NOT C(CN) THEN GOTO V*K 2931 LET A$="464850575859020618151[T]HE ARTS IN [G]REAT [B]RITAIN(ARE WERE) SUPPORTED NOW." 2932 GOSUB UP 4000 GOSUB K*F+C 4002 PRINT AT S,IX;"[R][E][G][U][L][A][R]█[V][E][R][B][S]";AT W+H,U;"WALK";TAB W;"WALKED";TAB T0+U;"WALKED";AT W+V,U;"TOSS";TAB W;"TOSSED";TAB T0+U;"TOSSED";AT W+S,U;"LISTEN";TAB W;"LISTENED";TAB T0+U;"LISTENED" 4004 LET TD=C 4006 GOSUB W*X*X 4008 GOSUB K*F+C 4010 PRINT AT S,E;"[I][R][R][E][G][U][L][A][R]█[V][E][R][B][S]";AT W+H,U;"SING";TAB W+U;"SANG";TAB TT;"SUNG";AT W+V,U;"BURST";TAB W+1;"BURST";TAB TT;"BURST";AT W+S,U;"FEEL";TAB W+U;"FELT";TAB TT;"FELT" 4012 GOSUB W*X*X 4014 RETURN 4100 CLS 4102 PRINT AT U,E;"EXAMPLES OF THE";AT T,S;"PRINCIPAL PARTS OF";AT H,T;"REGULAR AND IRREGULAR VERBS";AT IX,O;"PRESENT";TAB W+U;"PAST";TAB TT;"PAST"," TENSE";TAB W;"TENSE";TAB W+IX;"PARTICIPLE" 4104 RETURN 5000 IF P1<>U THEN GOTO 5005 5001 LET P1=O 5002 LET P2=U 5004 GOTO T*K+E 5005 IF E1<>U THEN GOTO 5014 5006 LET E2=U 5007 LET E1=O 5008 GOTO T*K+E 5014 LET R=E-NWRONG 5015 LET R(U)=T-Q(U) 5016 LET R(T)=F-Q(T) 5017 LET R(H)=T-Q(H) 5018 LET R(F)=T-Q(F) 5020 GOTO C*H 5100 SCROLL 5101 SCROLL 5102 SCROLL 5103 SCROLL 5104 RETURN 6000 CLEAR 6005 SAVE "LAN[2]" 6010 RUN 9998 PRINT PEEK 16412+256*PEEK 16413-16384 1 GOTO 1000 6 PRINT AT W+F,O;A$(TT TO (VAL A$(U TO T)));A$(VAL A$(H TO F) TO VAL A$(V TO X));A$(VAL A$(S TO E) TO VAL A$(IX TO W));AT W+V,O;A$(VAL A$(W+U TO W+T) TO ) 7 RETURN 9 PRINT AT W+F,O;A$(TT TO VAL A$(IX TO W));AT W+V,VAL A$(W+H TO W+F);"1";AT W+V,VAL A$(W+V TO W+X);"2";AT W+S,O;A$(VAL A$(W+U TO W+T) TO ) 10 RETURN 12 PRINT AT W+F,O;A$(TT TO (VAL A$(U TO T)));AT W+X,O;A$(VAL A$(H TO F) TO );AT W+S,VAL (A$(W+H TO W+F));"1";TAB VAL (A$(W+V TO W+X));"2" 13 LET X$=A$(VAL A$(S TO E) TO VAL A$(IX TO W)) 14 RETURN 15 PRINT AT W+F,O;A$(TT TO (VAL A$(U TO T)));AT W+V,O;A$(VAL A$(H TO F) TO VAL A$(V TO X));A$(VAL A$(S TO E) TO VAL A$(IX TO W));A$(VAL A$(W+U TO W+T) TO ) 17 RETURN 18 PRINT AT W+F,O;A$(TT TO (VAL A$(U TO T)));AT W+X,O;"(";A$(VAL A$(H TO F) TO );AT W+S,VAL (A$(W+H TO W+F));"1";TAB VAL (A$(W+V TO W+X));"2" 20 RETURN 21 PRINT AT W+F,O;A$(TT TO VAL A$(V TO X));")";AT W+V,VAL A$(W+H TO W+F);"1";AT W+V,VAL A$(W+V TO W+X);"2";AT W+S,O;A$(VAL A$(S TO E) TO ) 22 RETURN 24 PRINT AT W+F,O;A$(TT TO VAL A$(U TO T));A$(VAL A$(H TO F) TO VAL (A$(V TO X)));AT W+V,O;A$(VAL A$(S TO E) TO ) 25 RETURN 27 PRINT AT W+F,O;"(";A$(VAL A$(H TO F) TO VAL A$(IX TO W));AT W+V,VAL A$(W+H TO W+F);"1";AT W+V,VAL A$(W+V TO W+X);"2";AT W+S,O;A$(VAL A$(W+U TO W+T) TO ) 28 RETURN 30 PRINT AT W+F,O;A$(VAL A$(H TO F) TO VAL A$(V TO X));A$(VAL A$(S TO E) TO VAL A$(IX TO W));AT W+V,O;A$(VAL A$(W+U TO W+T) TO ) 31 RETURN 33 PRINT AT W+F,O;A$(TT TO (VAL A$(U TO T)));AT W+V,O;A$(VAL A$(S TO E) TO VAL A$(IX TO W));A$(VAL A$(W+U TO W+T) TO ) 34 LET X$=A$(VAL A$(S TO E) TO VAL A$(IX TO W)) 35 RETURN 36 PRINT AT W+F,O;A$(TT TO VAL A$(IX TO W));AT W+V,VAL A$(W+H TO W+F);"1";AT W+V,VAL A$(W+V TO W+X);"2";AT W+S,O;A$(VAL A$(W+U TO W+T) TO ) 37 RETURN 39 PRINT AT W+F,O;A$(TT TO VAL A$(U TO T));A$(VAL A$(H TO F) TO VAL (A$(V TO X)));AT W+V,O;A$(VAL A$(W+U TO W+T) TO ) 40 RETURN 42 PRINT AT W+F,O;A$(TT TO VAL A$(IX TO W));AT W+V,VAL A$(W+H TO W+F);"1";AT W+V,VAL A$(W+V TO W+X);"2";AT W+S,O;A$(VAL A$(W+U TO W+T) TO ) 43 RETURN 79 SLOW 80 IF INKEY$ <>"" THEN GOTO E*W 82 IF INKEY$ ="" THEN GOTO E*W+T 83 FAST 84 LET C$=INKEY$ 85 IF C$=CHR$ 118 THEN GOTO C0+C 86 RETURN 100 SLOW 101 IF INKEY$ <>"" THEN GOTO C+U 102 LET C$="" 103 IF INKEY$ <>"" THEN LET C$=INKEY$ 104 IF C$<>"" THEN GOTO C+C/T 105 IF NOT E1+E2 THEN GOTO C+T 110 LET T2=PEEK 16437 115 LET TICK=(T2<>T1) 120 IF NOT TICK THEN GOTO C+T 125 LET T1=T2 130 LET TIME=TIME+.071111 135 IF TIME-TIME0A$(TT-U) THEN RETURN 160 LET IK=U 162 RETURN 200 IF IK=U THEN GOTO C0/F 201 IF NOT E1+E2 THEN GOTO T*C+F 202 LET NWRONG=NWRONG+U 203 GOTO 272 204 CLS 205 LET WRONG=U 206 GOSUB VAL A$(T0-U TO T0) 207 PRINT AT E,O;"THE CORRECT WORD IS...";AT W,(T0-U-LEN X$)/T;"-";X$;"-" 208 GOSUB E*C 210 GOSUB X*X*W 233 FAST 234 LET DONE=U 235 LET NWRONG1=NWRONG1+U 237 LET NWRONG=NWRONG+U 238 IF CON THEN LET Q(CON)=Q(CON)+U 240 GOTO 270 250 IF NOT E1+E2 THEN GOTO 255 252 GOTO 273 255 CLS 256 LET F$="07110920" 257 GOSUB C0*H/T 258 PRINT AT IX,W+T;"[C][O][R][R][E][C][T]" 259 LET F$="15170427" 260 GOSUB C0*H/T 261 PRINT AT W+X,X;NP-NLEFT+U;" DONE; ";NLEFT-U;" TO GO" 265 GOSUB X*X*W 270 LET WRONG=O 271 GOTO 273 272 LET Q(CON)=Q(CON)+U 273 LET DONE=U 275 LET NLEFT=NLEFT-U 276 IF NLEFT=O THEN GOTO C0*V 280 RETURN 300 CLS 302 LET A$=" OUT OF " 305 IF P1+P2+E1+E2 THEN GOTO H*C+T0 306 LET F$="03200427" 307 GOSUB C0*H/T 311 PRINT AT V,S;"YOUR SCORE CARD",AT IX,IX;NP-NWRONG1;AT IX,W+T;" RIGHT",AT W+H,IX;NWRONG;AT W+H,W+T;" WRONG " 312 GOSUB X*X*W 313 GOTO C0+C 320 LET F$="00200031" 321 GOSUB C0*H/T 322 FAST 323 PRINT AT H,W;"TEST RESULTS";AT V,W+X;"SCORE";TAB T0+F;"PERCENT"; 324 IF P1+P2 THEN PRINT AT T,W+T;"PRACTICE" 325 PRINT AT S,U;"HOMONYMS";TAB W+H;R(U);A$;X;TAB T0+X;INT (C*R(U)/X) 327 PRINT AT IX,U;"LAY AND LIE";TAB W+H;R(T);A$;F;TAB T0+X;INT (C*R(T)/F) 329 PRINT AT W+U,U;"SET AND SAT";TAB W+H;R(H);A$;F;TAB T0+X;INT (C*R(H)/F) 330 PRINT AT W+H,U;"AMONG AND";AT W+F,T;"BETWEEN";TAB W+H;R(F);A$;T;TAB T0+X;INT (C*R(F)/T) 332 PRINT AT W+S,H;"TOTAL";TAB W+T;W+X-NWRONG;A$;W+X;TAB T0+X;INT (C*(W+X-NWRONG)/(W+X)+.5) 333 IF E1+E2 THEN PRINT AT T0-U,E;"TIME USED ";MIN;":";SEC 334 GOSUB X*X*W 340 GOTO C0+C 360 PRINT AT T0+U,X;"[P][R][E][S][S]█[C]█[T][O]█[C][O][N][T][I][N][U][E]" 361 SLOW 362 GOSUB E*W-U 363 FAST 365 RETURN 700 CLS 710 RETURN 800 LET F$="00040031" 801 IF CON=F THEN LET F$="00050031" 803 IF CON=U THEN PRINT AT U,U;K$(U),TAB U;K$(T),TAB U;K$(H) 804 IF CON=T THEN PRINT AT U,U;K$(IX),TAB U;K$(H+W) 805 IF CON=H THEN PRINT AT U,U;K$(W+E),TAB U;K$(W+IX),TAB U;K$(T0) 806 IF CON=F THEN PRINT AT U,U;K$(T0+H),TAB U;K$(T0+F),TAB U;K$(T0+V),TAB U;K$(T0+X) 810 GOSUB C0*H/T 850 RETURN 900 CLS 905 LET F$="01200229" 910 GOSUB C0*H/T 915 PRINT AT T,W+U;"DIRECTIONS",AT F,F;"1 YOU WILL BE GIVEN",TAB X;"ONE OR MORE SENTENCES";AT S,F;"2 THERE WILL BE A CHOICE",TAB X;"OF TWO POSSIBLE WORDS";AT W,F;"3 PUSH THE NUMBER OF",TAB X;"THE CORRECT WORD" 930 PRINT AT W+F,F;"WORDS BEGINNING WITH",TAB F;"CAPITALS APPEAR AS";TAB F;"FOLLOWS:",AT T0-T,F;"[M]R. [M]RS. [G]EORGE" 934 GOSUB X*X*W 935 RETURN 1003 SLOW 1010 GOSUB 1900 1012 SCROLL 1014 PRINT TAB H;"LANGUAGE USAGE" 1015 GOSUB C0*V+C+U 1045 PRINT TAB T0;"MASTER" 1046 GOSUB C0*V+C 1053 LET F$="12160019" 1054 GOSUB C0*H/T 1055 LET F$="15191728" 1056 GOSUB C0*H/T 1057 PRINT AT W+V,T0-U;"▜";AT W+X,T0-H;"▙";AT W+V,H0-U;"TM" 1058 SCROLL 1059 SCROLL 1074 PRINT TAB W+U;"PART III" 1075 SCROLL 1076 SCROLL 1083 PRINT TAB S;"GRADES 4 THRU 12" 1085 GOSUB C0*V+C 1089 PRINT TAB T;"SOFTWARE FOR EXCELLENCE" 1092 PRINT AT T0,T;"COPYRIGHT 1982 BY" 1094 SCROLL 1095 PAUSE H*C 1102 FAST 1103 GOSUB T*K-E*W 1105 CLS 1107 LET F$="00200031" 1110 GOSUB C0*H/T 1112 LET Z$="▀▀▀▀▀▀▀▀▀▀▀▀▀▀" 1114 PRINT AT T,F;"LANGUAGE USAGE PART III";AT F,U;"▀▀";Z$;Z$;AT V,T;"PREPARATION - RULES";TAB U;"▀▀▀▀▀▀▀";Z$;AT E,V;"1 HOMONYMS";AT IX,V;"2 LAY AND LIE";AT W,V;"3 SET AND SIT";AT W+U,V;"4 AMONG AND BETWEEN";AT W+H,U;"▀▀";Z$;Z$;TAB T;"TRAINING CAMP";AT W+V,U;"▀";Z$;AT W+S,V;"5 TEST PRACTICE",TAB V;"6 TIMED TEST" 1120 PRINT AT T0+U,S;"[C][H][O][O][S][E]█[A]█[N][U][M][B][E][R]" 1125 GOSUB T*C0-C*T 1130 GOSUB E*W-U 1132 LET L=CODE C$-T*W-E 1135 IF LX THEN GOTO 1130 1140 IF L<=F THEN GOTO 1158 1141 FAST 1142 GOTO 1137+H*L 1152 LET P1=U 1153 LET NP=W+X 1154 GOTO T*K 1155 LET E1=U 1156 LET NP=W+X 1157 GOTO K+C*F 1158 LET CON=L 1159 GOTO 1260 1200 DIM K$(T0+X,T0+IX) 1210 LET K$(U)="HOMONYMS ARE WORDS SIMILAR" 1211 LET K$(T)=" IN SOUND BUT DIFFERENT IN" 1212 LET K$(H)=" MEANING (EXAMPLE:TO,TWO,TOO)" 1213 LET K$(F)="THE MEANING AND SPELLING OF" 1214 LET K$(V)=" HOMONYMS MUST BE MEMORIZED--" 1215 LET K$(X)=" NO GENERAL RULES ARE" 1216 LET K$(S)=" AVAILABLE" 1217 LET K$(E)=" LAY AND LIE" 1218 LET K$(IX)="LAY MEANS TO PUT OR PLACE" 1219 LET K$(W)=" " 1220 LET K$(W+U)=" (PRINCIPAL PARTS ARE--LAY," 1221 LET K$(W+T)=" LAID, HAVE LAID, LAYING)" 1222 LET K$(W+H)="LIE MEANS TO REST OR RECLINE" 1223 LET K$(W+F)=" " 1224 LET K$(W+V)=" (PRINCIPAL PARTS ARE--LIE," 1225 LET K$(W+X)=" LAY, HAVE LAIN, LYING)" 1226 LET K$(W+S)=" SET AND SIT" 1227 LET K$(W+E)="SET MEANS TO PLACE OR PUT" 1228 LET K$(W+IX)=" SOMETHING" 1229 LET K$(T0)="SIT MEANS TO BE SEATED" 1230 LET K$(T0+U)=" " 1231 LET K$(TT)=" AMONG AND BETWEEN" 1232 LET K$(T0+H)="USE BETWEEN WHEN TWO (PEOPLE" 1233 LET K$(T0+F)=" OR THINGS) ARE INVOLVED" 1234 LET K$(T0+V)="USE AMONG WHEN MORE" 1235 LET K$(T0+X)=" THAN TWO ARE INVOLVED" 1259 RETURN 1260 GOSUB T*IX*C 1270 IF CON<>U THEN GOTO C0+C*H-T0 1272 LET C(U)=H 1273 LET C(F)=F 1275 LET NP=X 1276 LET TD=C-T 1277 GOTO 1330 1280 IF CON<>T THEN GOTO C0+C*H-W 1281 LET C(E)=U 1282 LET C(IX)=U 1283 LET C(W+U)=T 1284 LET C(W+H)=U 1285 LET C(W+V)=T 1286 LET NP=F 1290 IF CON<>H THEN GOTO C0+C*H 1293 LET C(W+S)=U 1295 LET C(W+E)=T 1296 LET C(T0)=T 1297 LET NP=F 1300 IF CON<>F THEN GOTO 1330 1301 LET C(TT)=U 1302 LET C(T0+H)=T 1303 LET C(T0+V)=T 1304 LET NP=T 1330 CLS 1333 LET F$="01200031" 1334 GOSUB C0*H/T 1335 PRINT AT T,E;"RULES COVERED";TAB U;Z$;Z$;"▀▀" 1336 IF CON<>U THEN GOTO 1340 1337 LET M=E 1338 PRINT AT X,W;"HOMONYMS" 1339 GOTO 1342 1340 IF CON=H THEN GOTO 1380 1341 LET M=X 1342 FOR N=U TO T0+S 1343 IF NOT C(N) THEN GOTO 1355 1344 PRINT AT M,U;K$(N) 1345 IF C(N)=H AND CN<>V THEN GOTO 2075 2074 PRINT AT X+U,F;"SELECT THE CORRECT WORD" 2075 PRINT AT W+U,O; 2076 LET X$=A$(VAL A$(H TO F) TO VAL A$(V TO X)) 2077 GOSUB VAL A$(W+S TO W+E) 2080 SLOW 2085 GOSUB C 2090 GOSUB C*T 2092 IF DONE=U THEN RETURN 2094 IF DONE=T THEN GOTO C*C-U 2097 GOTO 2085 2100 IF NOT E2 THEN GOTO 2145 2103 LET A$="313334404344111509061[I]F YOU GO (TO TOO) THEPLAY, I WILL JOIN YOU." 2105 GOSUB UP 2145 IF NOT C(CN) THEN GOTO 2194 2146 LET A$="334247505152162321242[T]HE READING (COARSE COURSE) WAS DIFFICULT BUT WORTHWHILE." 2150 GOSUB UP 2196 IF NOT P1+C(CN) THEN GOTO 2245 2199 LET A$="252736495152092009061[T]HE (PRINCIPLES PRINCIPALS) OFGRAVITY ARE PARTIALLY KNOWN." 2200 GOSUB UP 2245 IF NOT P2 THEN GOTO 2295 2247 LET A$="404851545556222721242[K]ITTY [H]AWK WAS THE (SIGHT SITE) OF THE [W]RIGHT BROTHERS▘ FLIGHT." 2250 GOSUB UP 2295 IF NOT E1 THEN GOTO 2345 2296 LET A$="505159687476122012152[C]HOCOLATE, IN ANY FORM, IS MYFAVORITE (DESERT DESSERT)." 2300 GOSUB UP 2345 IF NOT E2 THEN GOTO 2375 2346 LET A$="474851535765071312151[D]O YOU KNOW WHICH PEDAL ISTHE (BRAKE BREAK)?" 2355 GOSUB UP 2375 IF NOT C(CN) THEN GOTO 2395 2376 LET A$="474856586269121712151[T]HE FIRE CHIEF ASKED US TOKEEP THE (AISLE ISLE) CLEAR." 2380 GOSUB UP 2397 IF NOT P1+C(CN) THEN GOTO 2445 2398 LET A$="252729365152061009061[S]HE (LED LEAD) THE BAND DURINGTHIS YEAR▘S CONCERT." 2400 GOSUB UP 2445 IF NOT P2 THEN GOTO 2495 2446 LET A$="314450525354152521242[T]EXAS WAS (ALL READY ALREADY)A STATE BY 1850." 2450 GOSUB UP 2495 IF NOT E1 THEN GOTO 2545 2496 LET A$="232529374950051109061[A] (PEACE PIECE) WAS ACHIEVEDBEFORE WAR BROKE OUT." 2500 GOSUB UP 2545 IF NOT E2 THEN GOTO 2575 2546 LET A$="404349505355030918332[T]O ME, THAT IS ONLY (PASSED PAST) HISTORY." 2550 GOSUB UP 2575 IF NOT C(CN) THEN GOTO 2595 2576 LET A$="353741424749172236391[I]F YOU HAVE A (LOOSE LOSE) FLAP, THE TENT MAY TEAR." 2580 GOSUB UP 2595 LET CON=T 2596 LET CN=W+H 2597 IF NOT P1+C(CN) THEN GOTO 2645 2598 LET A$="222729314647020642302([L]AY [L]IE) DOWN IF YOU ARETIRED." 2600 GOSUB UP 2645 IF NOT P2 THEN GOTO 2655 2646 LET A$="273436385051081309062[H]ARRY "+E$(W TO T0-1)+" ON THE COUCHWATCHING [T][V]." 2650 GOSUB UP 2655 LET CN=IX 2695 IF NOT E1 THEN GOTO 2745 2696 LET A$="373944455152192636391[T]HE VOTERS WERE "+E$(T0 TO H0+H)+"BALLOTS IN THE BOX." 2700 GOSUB UP 2745 IF NOT E2 THEN GOTO 2755 2746 LET A$="293134415051101509061[S]HE HAS "+E$(H0+F TO F*W+F)+" ASIDE HERSCHOOL WORK AGAIN." 2750 GOSUB UP 2755 LET CN=(W+H) 2775 IF NOT C(CN) THEN GOTO 2785 2776 LET A$="363844454951031018332[I]S THAT OLD DOG(LAYING LYING) IN THE YARD?" 2780 GOSUB UP 2785 LET CN=IX 2796 IF NOT P1+C(CN) THEN GOTO 2805 2797 LET A$="222325315051020627301([L]AY [L]IE) ASIDE YOUR DISPUTESAND ARGUMENTS THIS EVENING." 2800 GOSUB UP 2805 LET CN=W+H 2845 IF NOT P2 THEN GOTO 2895 2846 LET A$="283436384849091309062[I]F YOU "+E$(U TO IX)+" IN THE SUNTOO LONG, YOU WILL BURN." 2850 GOSUB UP 2895 IF NOT E1 THEN GOTO 2915 2896 LET A$="384548505152192421242[Y]OU HAVE ALREADY "+E$(H0+F TO W*F+F)+"IN BED FOR HALF THE DAY." 2900 GOSUB UP 2915 IF NOT E2 THEN GOTO 2925 2916 LET A$="374650525354202721242[I]S THE BRACELET "+E$(T0 TO H0+H)+"ON THE COUNTER?" 2917 GOSUB UP 2925 LET CN=IX 2930 IF NOT C(CN) THEN GOTO 3400 2931 LET A$="262831374748071209061[J]UDY "+E$(W TO T0-U)+" THE GLOVESTHERE YESTERDAY." 2932 GOSUB UP 3400 LET CON=H 3405 LET CN=T0 3410 IF NOT P1+C(CN) THEN GOTO 3430 3411 LET A$="283436384647091309062[P]LEASE "+E$(W*F+V TO W*V+H)+" WHEREVERYOU WISH." 3415 GOSUB UP 3430 LET CN=W+E 3440 IF NOT P2 THEN GOTO 3480 3441 LET A$="222325314647020627301([S]ET [S]IT) THE PACKAGES ONTHE TABLE IN THE KITCHEN." 3445 GOSUB UP 3480 IF NOT E1 THEN GOTO 3510 3481 LET A$="222329394849041227301([S]ETTING [S]ITTING) THE TABLEIS EASY." 3485 GOSUB UP 3510 LET CN=T0 3520 IF NOT E2 THEN GOTO 3550 3521 LET A$="223137395354041242302([S]ETTING [S]ITTING) WILL FEEL GOODAFTER ALL OUR WALKING." 3530 GOSUB UP 3550 LET CN=W+E 3560 IF NOT C(CN) THEN GOTO 3600 3566 LET A$="313335414546121609061[W]OULD YOU "+E$(W*F+V TO W*V+H)+" YOURBOOTS ON THE NEWSPAPERS?" 3567 GOSUB UP 3600 LET CN=T0 3605 IF NOT P1+C(CN) THEN GOTO 3630 3606 LET A$="334349515253162421242[H]E FOUND US "+E$(W*V+F TO W*S)+"ON THE SWING." 3610 GOSUB UP 3640 IF NOT P2 THEN GOTO 3670 3641 LET A$="344450525354172521242[T]HE VASE WAS "+E$(W*V+F TO W*S)+"ON THE EDGE OF THE TABLE." 3645 GOSUB UP 3680 IF NOT E1 THEN GOTO 3710 3681 LET A$="334349515253162421242[I]S YOUR DOG "+E$(W*V+F TO W*S)+"IN YOUR FATHER▘S CHAIR AGAIN?" 3685 GOSUB UP 3710 LET CN=W+E 3720 IF NOT E2 THEN GOTO 3750 3721 LET A$="283032384950091309061[I]F YOU "+E$(W*F+V TO W*V+H)+" THAT CAT ONMY LAP, I WILL SCREAM." 3725 GOSUB UP 3750 LET CN=T0 3760 IF NOT C(CN) THEN GOTO 3780 3761 LET A$="334349515253162421242[T]HAT CAT IS "+E$(W*V+F TO W*S)+"ON MY LAP." 3765 GOSUB UP 3780 LET CON=F 3781 LET CN=T0+H 3782 IF NOT P1+C(CN) THEN GOTO 3800 3785 LET A$="505256586466031018332[T]HIS IS A GOOD SECRET TO KEEP"+H$+" THE TWO OF US." 3786 GOSUB UP 3800 LET CN=T0+V 3802 IF NOT P2 THEN GOTO 3820 3805 LET A$="444650525860031018332[D]O NOT PUT YOUR FINGERS"+H$+" TWO ROCKS." 3806 GOSUB UP 3822 IF NOT E1 THEN GOTO 3840 3825 LET A$="222327374950031027301([A]MONG [B]ETWEEN) THE [C]OLONIESTHERE WERE SOME DISPUTES." 3826 GOSUB UP 3842 IF NOT E2 THEN GOTO 3860 3845 LET A$="485054646566031018151[Y]OUR TIME HAS TO BE DIVIDED"+H$+" MANY TASKS." 3846 GOSUB UP 3860 LET CN=T0+H 3862 IF NOT C(CN) THEN GOTO C0*V 3865 LET A$="495059616575132012151[J]UDY, [K]AREN, AND [L]YNN SHAREDTHE PAPER "+H$+" THEM." 3866 GOSUB UP 5000 IF P1<>U THEN GOTO 5005 5001 LET P1=O 5002 LET P2=U 5004 GOTO T*C0+E 5005 IF E1<>U THEN GOTO 5014 5006 LET E2=U 5007 LET E1=O 5008 GOTO T*C0+E 5014 LET R=W+F-NWRONG 5015 LET R(U)=X-Q(U) 5016 LET R(T)=F-Q(T) 5017 LET R(H)=F-Q(H) 5018 LET R(F)=T-Q(F) 5020 GOTO C*H 5100 SCROLL 5101 SCROLL 5102 SCROLL 5103 SCROLL 5104 RETURN 6000 CLEAR 6005 SAVE "LAN[3]" 6010 RUN 9998 PRINT PEEK 16412+256*PEEK 16413-16384 ```