--- title: "Spanish Tutor" id: 54556 type: "computer_media" slug: "spanish-tutor" url: "http://localhost/computer_media/spanish-tutor/" markdown_url: "http://localhost/computer_media/spanish-tutor.md" published_at: "2024-06-02T16:56:55+00:00" modified_at: "2026-03-30T21:45:27+00:00" author: "David Anderson" featured_image: url: "http://localhost/wp-content/uploads/2023/06/1-SPAN-TUTOR.png" excerpt: "An interactive Spanish tutor automatically conjugates any regular verb you enter and teaches suffixes, opposites, and question words with scrolling example sentences." 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: "TS 2068" slug: "ts2068" taxonomy: "post_tag" url: "http://localhost/tag/ts2068/" model: - name: "Timex/Sinclair 2068" slug: "ts-2068" taxonomy: "model" url: "http://localhost/model/ts-2068/" indiv: - name: "Marty Curley" slug: "marty-curley" taxonomy: "indiv" url: "http://localhost/indiv/marty-curley/" genre: - name: "Education" slug: "education" taxonomy: "genre" url: "http://localhost/type/education/" - name: "Spanish" slug: "spanish" taxonomy: "genre" url: "http://localhost/type/spanish/" media_contents: - id: 64513 title: "CATS Library Tape 2" type: "computer_media" url: "http://localhost/computer_media/cats-library-tape-2/" - id: 51207 title: "CATS Library Tape 6" type: "computer_media" url: "http://localhost/computer_media/cats-library-tape-6/" - id: 55021 title: "Long Island Sinclair Timex (LIST) User Group Library Tape #2" type: "computer_media" url: "http://localhost/computer_media/list-lib-2/" media_type: "Program" programmers: - name: "Marty Curley" slug: "marty-curley" taxonomy: "indiv" url: "http://localhost/indiv/marty-curley/" mediadate: "198x" images: - url: "http://localhost/wp-content/uploads/2023/06/1-SPAN-TUTOR.png" media_type_tags: "Education, Spanish" --- This program is an interactive Spanish language tutor covering verbs, suffixes, opposites, question words, and pronouns. The verb section allows the user to enter any regular AR, ER, or IR verb and automatically generates conjugation tables for present, past, and future tenses by stripping the infinitive ending with a string slice (`A$( TO LEN A$-2)`) and appending the appropriate endings. A scrolling text subroutine at lines 9800 and 7200 displays example sentences one character at a time using a sliding window of 30 characters across the bottom of the screen. The animated title sequence uses nested loops with `BEEP`, color cycling via modulo arithmetic (`INK x-INT(x/7)*7`), and `AT` positioning to produce a moving, rainbow-colored header. The program also includes `COPY` commands to allow users to print conjugation tables to a ZX Printer. *** ## Program Analysis ### Program Structure The program is divided into clearly demarcated sections, with a decorative title sequence followed by a menu dispatcher and then separate educational modules. Navigation relies entirely on `GO TO` and `GO SUB` branching from the central menu at line `115`. | Line Range | Section | | --- | --- | | 1–6 | Author credit / address screen | | 20–56 | Animated title sequence | | 57–62 | Color-cycling text subroutine | | 100–162 | Main menu and dispatcher | | 1000–2990 | Verb conjugation (AR, ER, IR) and verb lists | | 3000–3580 | Suffixes module | | 5000–6999 | Opposites module | | 7000–7300 | Question words module | | 8000–8999 | Pronouns module (stub, ends with STOP) | | 9800–9875 | Scrolling sentence subroutine (mid-screen) | | 9900–9920 | Press-Enter-to-continue subroutine | | 9960–9997 | Exit/goodbye sequence | | 9998–9999 | SAVE and VERIFY | ### Animated Title Sequence Lines `23`–`28` animate two text labels (“M.CURLEY” and “PRESENTS”) moving from row 20 up to row 0, erasing the previous position with `TAB 31` and cycling ink color using the modulo expression `INK x-INT(x/7)*7`, which cycles through colors 0–6 as `x` decreases. `PAPER 9` (transparent paper) is used so the text floats over the existing background. The subroutine at lines `57`–`62` is called multiple times from lines `31`–`35` to place various title words on screen with their own color-cycling loop (iterating `t` from 7 down to 0), giving a shimmer effect as each word is overwritten repeatedly with changing ink. The same modulo trick, `INK t-INT(t/8)*8`, cycles through all eight ink values. ### Verb Conjugation Engine The core educational feature is the automatic conjugation of user-supplied verbs. After the user inputs an infinitive, the stem is extracted with the slice `A$( TO LEN A$-2)`, which drops the two-character ending (AR, ER, or IR). The stem is then concatenated with hard-coded ending strings for present, past, and future tenses. This technique works correctly for regular verbs but will produce incorrect output for stem-changing or irregular verbs. The IR verb section (lines `2000`–`2370`) contains a notable bug: the present tense conjugation block is entirely absent. After stripping the stem at line `2065`, the code jumps straight to the past tense at line `2100`. Additionally, the future tense block is duplicated verbatim at lines `2200`–`2225` and `2300`–`2325`, printing identical output twice. ### Scrolling Sentence Subroutine Two nearly identical subroutines handle scrolling example sentences: lines `9800`–`9875` display at row 10, and lines `7200`–`7290` display at row 21. Both use a 30-character sliding window: for each character position `I` from 1 to the string length `P`, the end index `Z` is computed as `I+29`, clamped to `P` with an `IF` guard. This gives the impression of the sentence scrolling past a fixed viewport. A `BEEP .005,22` produces a brief tick sound on each step. The sentences are stored in `A$` by the caller before invoking the subroutine. ### Press-Enter-to-Continue Subroutine The subroutine at lines `9900`–`9920` uses `INPUT` at line `9910` to prompt the user, then immediately polls `INKEY$` in a tight loop at line `9911`–`9915`, waiting until `CHR$ 13` (Enter) is detected. This is slightly redundant: the `INPUT` statement will itself wait for Enter, making the `INKEY$` loop execute only after Enter has already been pressed once. The effect is that the user must press Enter twice to advance. ### Opposites Module The opposites section (lines `5000`–`6999`) uses a distinctive reveal technique: each pair is first printed in English, then after a call to subroutine `6900` (which provides a short pause and two-tone beep), the same screen position is overwritten with the Spanish equivalent using `PRINT AT`. Subroutine `6900` uses `OVER 0` before returning to ensure normal overwrite mode. ### Dead Code and Stubs - Line `400` (`PRINT ,," THE SAME AS ADDING 'FUL'"`) is unreachable; it sits between the menu dispatcher and the verb section with no path leading to it. - Lines `9940`–`9950` are unreachable dead code between the goodbye sequence subroutine and the exit sequence. Line `9950` calls `LIST`, which would dump the program listing — likely a debugging artifact. - Lines `7300` and `7199` (`GO SUB 9900`) are unreachable dead code following `RETURN` statements. - The Pronouns module at line `8000` prints a heading and immediately hits `STOP` at line `8999`, confirming the author’s opening note that the program was unfinished. ### Exit Sequence Bug The goodbye sequence at lines `9960`–`9997` contains a `NEXT I` at line `9972` that has no matching `FOR I` — the loop variable `I` was used by the scrolling loop at lines `9964`–`9970`, which already completes normally. This orphaned `NEXT I` at line `9972` will cause a “Variable not found” or “NEXT without FOR” error at runtime. ### Miscellaneous Notes - Line `1815` and `2115` contain `"\iMOS"` — the `\i` escape likely represents a block graphic character used accidentally instead of the letter “I”, producing `IMOS` with a graphic prefix rather than the intended `IMOS`. - The program uses `COPY` (lines `1560`, `1960`, `2360`) to send conjugation tables to a ZX Printer, a practical feature for language study. - `PAPER 9` (transparent paper attribute) is used in the title sequence to allow colored text to overlay the existing background without changing it. ## Source Code ``` 1 INK 0: PRINT ,," TO THE MEMBERS OF L.I.S.T.:::","THIS PROGRAM ISN'T FINISHED YET","BUT THE BASICS ARE HERE." 2 PRINT " IF YOU WOULD LIKE A COPY WHEN I'M DONE YOU CAN WRITE TO ME AT THE FOLLOWING ADDRESS:" 3 PRINT ,,,," MARTIN CURLEY" 4 PRINT " 819 SHORELINE DR." 5 PRINT " CICERO,INDIANA 46034" 6 PAUSE 1000 7 CLS 20 REM HEADER PROGRAM 21 INK 4: PAPER 6: CLS 22 BORDER 1 23 FOR x=20 TO 0 STEP -1 24 BEEP .006,40-x*2 25 PRINT AT x+1,0;TAB 31; 26 PRINT INK x-INT (x/7)*7; PAPER 9;AT x,x;"M.CURLEY" 27 PRINT INK x-INT (x/7)*7; PAPER 9;AT x,31-7-x;"PRESENTS" 28 NEXT x 29 FOR x=0 TO 15: BEEP .01,-20: PRINT AT 1,x; PAPER 2;" ";AT 1,31-x;" ";: NEXT x 30 LET l=10 31 LET z$=".......... YOUR ...........": LET x=l-2: LET y=2: GO SUB 57 32 LET z$="2068": LET x=l: LET y=5: GO SUB 57 33 LET z$="AT": LET y=14: GO SUB 57 34 LET z$="WORK": LET y=20: GO SUB 57 35 LET z$="FOR YOU": LET x=l+2: LET y=11: GO SUB 57 36 REM 37 LET z$="SPANISH TUTOR" 38 LET p=-1+15-LEN z$/2 39 FOR c=1 TO LEN z$ 40 LET cp=p+c 41 FOR l=15 TO 20 42 BEEP .007,l-10: BEEP .007,60-l 43 PRINT AT l-1,cp;" "; 44 INK 0: PRINT AT l,cp;z$(c); 45 NEXT l 46 NEXT c 47 REM 48 LET z$="PRECEPTOR ESPANOL" 49 PRINT FLASH 1; INK 1; PAPER 6;AT 1,0;TAB 31;" ";AT 1,14-LEN z$/2;z$ 50 INK 0 51 PAUSE 300 52 FOR x=20 TO 2 STEP -1: PRINT AT x,0;TAB 31;" ";: NEXT x 53 PRINT AT 4,0; 54 INK 0: PAPER 7: CLS 55 GO TO 100 56 STOP 57 REM 58 FOR t=7 TO 0 STEP -1 59 BEEP .005,t: BEEP .005,60-t: BEEP .005,30-t 60 PRINT AT x,y; INK t-INT (t/8)*8;z$ 61 NEXT t 62 RETURN 100 REM ▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖ 105 REM ▖▖▖▖▖▖▖▖ \m\e\n PLAY ▖▖▖▖▖▖▖▖ 110 REM ▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖▖ 111 CLS 112 INK 0: PRINT AT 10,0;" CHANGE TO 'CAPS LOCK' ": PAUSE 200: CLS 115 CLS : FLASH 1: PRINT AT 1,8;"SPANISH TUTOR" 120 FLASH 0: PRINT : PAPER 6: INK 0 125 PRINT AT 3,6;"PRECEPTOR ESPANOL" 135 PRINT AT 7,1;"1.) VERBS": PRINT AT 9,1;"2.) SUFFIXES": PRINT AT 11,1;"3.) OPPOSITES" 140 PRINT AT 13,1;"4.) QUESTIONS": PRINT AT 15,1;"5.) PRONOUNS" 145 FLASH 1: PRINT AT 17,1;"6.) STOP" 150 BORDER 7: FLASH 0: INPUT INK 1;"ENTER ONE ";A 155 IF A=1 THEN GO TO 1000 156 IF A=2 THEN GO TO 3000 157 IF A=3 THEN GO TO 5000 160 IF A=4 THEN GO TO 7000 161 IF A=5 THEN GO TO 8000 162 IF A=6 THEN GO TO 9960 400 PRINT ,," THE SAME AS ADDING 'FUL'" 1000 CLS : PRINT " VERBS" 1020 CLS : BORDER 2: PAPER 6: INK 0 1025 PRINT AT 1,5;" REGULAR VERBS" 1030 PRINT ,," ALL SPANISH VERBS END IN:" 1035 PRINT ,," AR ER IR" 1040 PRINT ,,;"EX:": PRINT ,,,," HABLAR...... TO TALK": PRINT ,," COMER....... TO EAT": PRINT ,," BEBIR....... TO DRINK" 1045 GO SUB 9900 1060 PAPER 0: INK 7: PRINT " VERB MENU " 1061 PAPER 2: INK 0: PRINT 1062 PAPER 1: INK 7: PRINT ;" CONJUGATE VERB LISTS " 1065 PAPER 6: INK 0: PRINT AT 6,1;"1.) AR": PRINT AT 10,1;"2.) ER": PRINT AT 14,1;"3.) IR" 1070 PRINT AT 6,19;"4.) AR": PRINT AT 10,19;"5.) ER": PRINT AT 14,19;"6.) IR" 1073 FLASH 1: PRINT AT 18,0;" 7.) TO RETURN TO MENU " 1075 INPUT INK 8;"ENTER ONE ";A$ 1080 IF A$="1" THEN GO SUB 1200 1082 IF A$="2" THEN GO SUB 1600 1085 IF A$="3" THEN GO SUB 2000 1090 IF A$="4" THEN GO SUB 2700 1093 IF A$="5" THEN GO SUB 2800 1095 IF A$="6" THEN GO SUB 2900 1097 IF A$="7" THEN FLASH 0: GO TO 115 1200 REM AR VERBS 1210 PAPER 6: INK 0 1220 FLASH 0: CLS 1230 PRINT " ENTER YOUR 'AR' VERB" 1240 INPUT A$ 1245 CLS : PRINT AT 0,15-LEN A$/2;A$ 1250 PRINT 1265 LET A$=A$( TO LEN A$-2) 1300 PRINT A$;"O","I" 1305 PRINT A$;"AS","YOU" 1310 PRINT A$;"A","HE PRESENT" 1315 PRINT A$;"AMOS","WE" 1320 PRINT A$;"AIS","YOU" 1325 PRINT A$;"AN","THEY" 1395 PRINT 1400 PRINT A$;"E","I" 1405 PRINT A$;"ASTE","YOU" 1410 PRINT A$;"O","HE PAST" 1415 PRINT A$;"AMOS","WE" 1420 PRINT A$;"ASTEIS","YOU" 1425 PRINT A$;"ARON","THEY" 1495 PRINT 1500 PRINT A$;"ARE","I" 1505 PRINT A$;"ARAS","YOU" 1510 PRINT A$;"ARA","HE FUTURE" 1515 PRINT A$;"AREMOS","WE" 1520 PRINT A$;"AREIS","YOU" 1525 PRINT A$;"ARAN","THEY" 1550 INPUT INK 8;"DO YOU WANT A COPY? Y/N";Q$ 1560 IF Q$="Y" THEN COPY 1570 GO TO 115 1600 REM ER VERBS 1610 PAPER 6: INK 0: BORDER 1 1620 FLASH 0: CLS 1630 PRINT " ENTER YOUR 'ER' VERB" 1640 INPUT A$ 1645 CLS : PRINT AT 0,15-LEN A$/2;A$ 1650 PRINT 1665 LET A$=A$( TO LEN A$-2) 1700 PRINT A$;"O","I" 1705 PRINT A$;"ES","YOU" 1710 PRINT A$;"E","HE PRESENT" 1715 PRINT A$;"EMOS","WE" 1720 PRINT A$;"EIS","YOU" 1725 PRINT A$;"EN","THEY" 1750 PRINT 1800 PRINT A$;"I","I" 1805 PRINT A$;"ISTE","YOU" 1810 PRINT A$;"IO","HE PAST" 1815 PRINT A$;"\iMOS","WE" 1820 PRINT A$;"ISTEIS","YOU" 1825 PRINT A$;"IERON","THEY" 1850 PRINT 1900 PRINT A$;"ERE","I" 1905 PRINT A$;"ERAS","YOU" 1910 PRINT A$;"ERA","HE FUTURE" 1915 PRINT A$;"EREMOS","WE" 1920 PRINT A$;"EREIS","YOU" 1925 PRINT A$;"ERAN","THEY" 1950 INPUT INK 8;"DO YOU WANT A COPY? Y/N";Q$ 1960 IF Q$="Y" THEN COPY : GO TO 115 1970 GO TO 115 2000 REM IR VERBS 2010 PAPER 6: INK 0: BORDER 1 2020 FLASH 0: CLS 2030 PRINT " ENTER YOUR 'IR' VERB" 2040 INPUT A$ 2045 CLS : PRINT AT 0,15-LEN A$/2;A$ 2050 PRINT 2065 LET A$=A$( TO LEN A$-2) 2100 PRINT A$;"I","I" 2105 PRINT A$;"ISTE","YOU" 2110 PRINT A$;"IO","HE PAST" 2115 PRINT A$;"\iMOS","WE" 2120 PRINT A$;"ISTEIS","YOU" 2125 PRINT A$;"IERON","THEY" 2150 PRINT 2200 PRINT A$;"IRE","I" 2205 PRINT A$;"IRAS","YOU" 2210 PRINT A$;"IRA","HE FUTURE" 2215 PRINT A$;"IREMOS","WE" 2220 PRINT A$;"IREIS","YOU" 2225 PRINT A$;"IRAN","THEY" 2250 PRINT 2300 PRINT A$;"IRE","I" 2305 PRINT A$;"IRAS","YOU" 2310 PRINT A$;"IRA","HE FUTURE" 2315 PRINT A$;"IREMOS","WE" 2320 PRINT A$;"IREIS","YOU" 2325 PRINT A$;"IRAN","THEY" 2350 INPUT INK 8;"DO YOU WANT A COPY? Y/N";Q$ 2360 IF Q$="Y" THEN COPY 2370 GO TO 115 2700 REM AR LIST 2704 FLASH 0: CLS 2710 PRINT ;" 'AR' VERBS" 2720 PRINT ,,;" HABLAR","TALK" 2721 PRINT " CERRAR","CLOSE" 2722 PRINT " TOMAR","TAKE"," LLAMAR","KNOCK" 2799 GO SUB 9900 2800 REM ER LIST 2804 FLASH 0: CLS 2810 PRINT ;" 'ER' VERBS" 2811 PRINT ,," COMER","EAT" 2899 GO SUB 9900 2900 REM IR LIST 2904 FLASH 0: CLS 2910 PRINT ;" 'IR' VERBS" 2911 PRINT ,," BEBIR","DRINK" 2985 GO SUB 9900 2990 CLS : FLASH 1: PRINT AT 4,0;" END OF VERB LISTS " 2995 FLASH 0: PRINT AT 12,0;" WE NOW RETURN YOU TO THE MENU": PAUSE 200: GO TO 115 3000 CLS : PRINT " SUFFIXES" 3010 PRINT ,," 'ITO' OR 'CITO'" 3015 PRINT ,," DIMINUTIVE SUFFIXES DENOTING LITTLE OR SMALL" 3020 PRINT ,," LIBRITO","LITTLE BOOK",,," CASITA","LITTLE HOUSE" 3025 PRINT ,," MUJERCITA","LITTLE WOMAN" 3030 PRINT ,," 'ILLO' OR 'ILLA'" 3035 PRINT ,," DOLORCILLOS","LITTLE ACHES",,," PIEDRACILLAS","LITTLE STONES" 3036 PAUSE 300: LET A$=" THE LITTLE HOUSE IS PRETTY......LA CASITA ES BONITA " 3037 GO SUB 9800 3040 GO SUB 9900 3045 BORDER 1: PRINT ,," AUGMENTETIVE ENDINGS" 3050 PRINT ,," 'ACHO' OR 'ACHA'" 3055 PRINT ,," RICACHO","VERY RICH",,," TACANACHO","VERY STINGY" 3056 PRINT ,," 'ISIMO",,," THE ABSOLUTE SUPERLATIVE" 3057 PRINT ,," HERMOSISIMO","MOST BEAUTIFUL",,," RICISIMO","MOST RICHEST" 3058 PAUSE 250: LET A$=" PEDRO IS VERY RICH.......PEDRO ESTA RICACHO ": GO SUB 9800 3059 GO SUB 9900 3060 PRINT ,," 'AZO' OR 'AZA'" 3065 PRINT ,," DENOTES BIG OR LARGE" 3070 PRINT ,," MANAZA","LARGE HAND",,," BOCAZA","BIG MOUTH" 3075 PRINT ,," 'ON' OR 'ONA'" 3080 PRINT ,," HOMBRON","BIG MAN",,," MUJERONA","BIG WOMAN" 3085 PRINT ,," 'OTE' OR 'OTA'" 3090 PRINT ,," MUCHACHOTE","BIG BOY",,," MUCHACHOTA","BIG GIRL",,," GRANDOTE","VERY BIG" 3091 PAUSE 300: LET A$=" THE CITY IS VERY BIG.........EL CIUDAD ESTA GRANDOTE " 3092 GO SUB 9800 3093 GO SUB 9900 3095 BORDER 3: PRINT ,," 'ADA'" 3100 PRINT ,," THE SAME AS ADDING 'FUL'." 3105 PRINT ,," CUCHARADA","SPOONFUL",,," PALADA", "SHOVELFUL",,," PLATADA","PLATFUL" 3110 FLASH 1: PRINT AT 12,13;"OR" 3115 FLASH 0: PRINT ,," MEANING A GROUP OF:" 3120 PRINT ,," PEONADA","GROUP OF PEONS",,," INDIADA","GROUP OF INDIOS" 3125 PAUSE 300: LET A$=" I HAVE A PLATFUL OF BEANS........TENGO UN PLATADA DE FRIJOLES ": GO SUB 9800 3130 GO SUB 9900 3140 PRINT ,," 'AL' OR 'AL'" 3145 PRINT ,," MEANS A GROVE OR PLANTATION OF:" 3150 PRINT ,," NARANJAL","ORANGE GROVE",,," PLATANAR","BANANA PLANT.",,," PINAR","PINE GROVE" 3152 PAUSE 180: LET A$=" HERE IS A BANANA PLANTATION........AQUI ES UN PLATANAR " 3154 GO SUB 9800 3155 GO SUB 9900 3160 PRINT ,," 'TAD' OR 'DAD'" 3165 PRINT ,," TAKES THE PLACE OF 'TY'" 3170 PRINT ,," FRATERNIDAD","FRATERNITY",,," FACULTAD","FACULTY",,," CALIDAD","QUALITY" 3175 PRINT ,," 'IA'" 3180 PRINT ,," USED WITH ARTS AND SCIENCES." 3185 PRINT ,," GEOLIGIA","GEOLOGY",,," BIOLOGIA","BIOLOGY",,," GEOMOTRIA","GEOMETRY" 3187 PAUSE 300: LET A$=" THE QUALITY OF THE GEOLOGY DEPARTMENT IS GOOD.......LA CALIDAD DE LA DEPARTMENTO DE GEOLIGIA ESTA BUENO ": GO SUB 9800 3190 GO SUB 9900 3200 BORDER 2: PRINT ,," 'IZO' OR 'DIZO'" 3205 PRINT ,," TENDING TO BE OR SOMEWHAT:" 3210 PRINT ,," ROJIZO","REDDISH",,," RESBALADIZO","SLIPPERY",,," OLVIDADIZO","FORGETFUL" 3215 PRINT ,," 'UZCO" 3220 PRINT ,," THE SAME AS ADDING 'ISH'" 3225 PRINT ,," NEGRUZCO","BLACKISH",,," BLANCUZCO","WHITISH" 3227 PAUSE 240: LET A$=" JOSEPH IS FORGETFUL........JOSE ESTA OLVIDADIZO ": GO SUB 9800 3230 GO SUB 9900 3240 PRINT ,," 'OSO'" 3245 PRINT ,," CHARACTERIZED BY: " 3250 PRINT ,," HERBOSO","GRASSY",,," ROCOSO","ROCKY",,," LLUVIOSO","RAINY" 3255 FLASH 1: PRINT AT 12,13;"OR" 3260 FLASH 0: PRINT ,," ENDING IN 'OUS'" 3265 PRINT ,," FAMOSO","FAMOUS",,," MARVILOSO","MARVELOUS" 3270 PAUSE 240: LET A$=" THE MONTH OF APRIL WAS RAINY......EL MES DE ABRIL FUE LLUVIOSO ": GO SUB 9800 3275 GO SUB 9900 3280 PRINT ,," 'MENTE'" 3285 PRINT ,," ADDING 'LY'" 3290 PRINT ,," MARVILOSOMENTE","MARVELOUSLY",,," GENEROSAMENTE","GENEROUSLY",,," CLARAMENTE","CLEARLY" 3295 PRINT ,," 'URA'" 3300 PRINT ,," ADDING 'NESS'" 3305 PRINT ,," LISURA","SMOOTHNESS",,," NEGRURA","BLACKNESS" 3307 PAUSE 240: LET A$=" I SEE THE SMOOTHNESS OF THE ROAD CLEARLY......VISTO LA LISURA DE LA CARRATERRA CLARAMENTE ": GO SUB 9800 3310 GO SUB 9900 3320 PRINT ,," 'ON'" 3325 PRINT ,," BEING FULL OF:" 3330 PRINT ,," JUGETON","PLAYFUL",,," PREGUNTON","FULL OF QUESTION",," LLORON","TEARFUL" 3340 PRINT ,," 'UDO'" 3345 PRINT ,," CHARACTERIZED BY HAVING:" 3350 PRINT ,," ZANCUDO","LONG-LEGGED",,," PELUDO","HAIRY",,," PANZUDO","BIG BELLIED" 3355 PAUSE 240: LET A$=" THE MONKEY IS VERY HAIRY AND PLAYFUL.........EL CHANGO ESTA MUY PELUDO Y JUGETON ": GO SUB 9800 3360 GO SUB 9900 3370 PRINT ,," 'ERIA'" 3375 PRINT ,," A PLACE TO MAKE OR SELL" 3380 PRINT ,," PANADERIA","BAKERY",,," ZAPATERIA","SHOE STORE",,," FERRETERIA","HARDWARE STORE" 3390 FLASH 1: PRINT AT 12,13;"OR" 3395 FLASH 0: PRINT ,," A BUSINESS" 3400 PRINT ,," LADRILLERIA","BRICK FACTORY",,," CEMENTERIA","CEMENT FACTORY" 3405 PAUSE 240: LET A$=" FRANK IS AT THE BAKERY........PANCHO ESTA EN LA PANADERIA ": GO SUB 9800 3410 GO SUB 9900 3420 BORDER 0 3430 PRINT ,," 'ERO'" 3440 PRINT ,," A PERSON WHO MAKES,SELLS OR IS IN CHARGE OF:" 3445 PRINT ,," PANADERO","BAKER",,," ZAPATERO","SHOE MAKER",,," COCINERO","COOK",,," CARCELERO","JAILER" 3450 PRINT ,," 'OR' OR 'DOR'" 3460 PRINT ,," AN AGENT OR ONE WHO DOES:" 3470 PRINT ,," REGULADOR","REGULATOR",,," CORREADOR","WALKER" 3473 PAUSE 240: LET A$=" MARIO IS A GOOD COOK..........MARIO ESTA UN COCINERO BUENO ": GO SUB 9800 3475 GO SUB 9900 3500 BORDER 2: PRINT ,," 'ANDO'-'ENDO'-'IENDO'" 3510 PRINT ,," ADDING 'ING'" 3520 PRINT ,," CERRANDO","CLOSING",,," DICIENDO","SAYING-TELLING",,," CREYENDO","THINKING",,," HABLANDO","TALKING",,," COMIENDO","EATING" 3530 PRINT ,," LLORANDO","CRYING",,," TOMANDO","DRINKING" 3540 PAUSE 300: LET A$=" I LIKE TELLING STORIES.........ME GUSTA DICIENDO HISTORIAS ": GO SUB 9800 3550 GO SUB 9900 3560 FLASH 1: PRINT AT 4,0;" END OF SUFFIXES " 3570 FLASH 0: PRINT AT 12,0;" WE NOW RETURN YOU TO THE MENU" 3575 PAUSE 200 3580 GO TO 115 4999 STOP 5000 CLS : PRINT ,," OPPOSITES" 5050 PRINT AT 4,0;" UP","DOWN":: PAUSE 200: OVER 0: PRINT AT 4,0;" ARRIBA","ABAJO" 5060 PRINT AT 5,0;" LEFT","RIGHT": GO SUB 6900: PRINT AT 5,0;" IZQUIERDO","DERECHA" 5070 PRINT AT 6,0;" FRONT","BACK": GO SUB 6900: PRINT AT 6,0;" FRENTE","ATRAS" 5075 PRINT AT 7,0;" HAPPY","SAD": GO SUB 6900: PRINT AT 7,0;" FELICE","TRISTE" 5080 PRINT AT 8,1;"LAUGH","CRY": GO SUB 6900: PRINT AT 8,1;"REIR ","LLORAR" 5085 PRINT AT 9,1;"NOW","LATER": GO SUB 6900: PRINT AT 9,1;"AHORRA","DESPUES" 5090 PRINT AT 10,1;"LONG","SHORT": GO SUB 6900: PRINT AT 10,1;"LARGO","CORTO" 5095 PRINT AT 11,1;;"TALL","SHORT": GO SUB 6900: PRINT AT 11,1;;"ALTO","CHAPARRO" 6000 PRINT AT 12,1;"SWEET","SOUR": GO SUB 6900: PRINT AT 12,1;"DULCE","AGRIO" 6005 PRINT AT 13,1;"FAST","SLOW": GO SUB 6900: PRINT AT 13,1;"RAPIDO","DESPACIO" 6010 PRINT AT 14,1;"BIG","LITTLE": GO SUB 6900: PRINT AT 14,1;"GRANDE","PEQUENO" 6015 PRINT AT 15,1;"EXCITED","CALM": GO SUB 6900: PRINT AT 15,1;"EXCITADO","TRANQUILLO" 6020 PRINT AT 16,1;"OVER","UNDER": GO SUB 6900: PRINT AT 16,1;"SOBRE","BAJO " 6025 PRINT AT 17,1;"TOGETHER","APART": GO SUB 6900: PRINT AT 17,1;"JUNTOS","APARTE" 6030 PRINT AT 18,1;"ALIVE","DEAD": GO SUB 6900: PRINT AT 18,1;"VIVO ","MUERTO" 6035 PRINT AT 19,1;"WELL","SICK": GO SUB 6900: PRINT AT 19,1;"BIEN","ENFERMO" 6040 PRINT AT 20,1;"SMOOTH","ROUGH": GO SUB 6900: PRINT AT 20,1;"LISO","FRAGOSO" 6045 PAUSE 500: GO SUB 9900 6050 PRINT AT 1,1;"INSIDE","OUTSIDE": GO SUB 6900: PRINT AT 1,1;"DENTRO DE","FUERA " 6055 PRINT AT 2,1;"ON (LIGHT)","OFF": GO SUB 6900: PRINT AT 2,1;"ENCENDER","APAGAR" 6060 PRINT AT 3,1;"ON (MACHINE)","OFF": GO SUB 6900: PRINT AT 3,1;"ANDAR","CORTADA" 6065 PRINT AT 4,1;"TRUTH","LIE": GO SUB 6900: PRINT AT 4,1;"VERDAD","MENTIRA" 6070 PRINT AT 5,1;"FAT","SLIM": GO SUB 6900: PRINT AT 5,1;"GORDO","DELGADO" 6075 PRINT AT 6,1;"WIN (GAMBLE)","LOSE": GO SUB 6900: PRINT AT 6,1;"GANAR","PERDIDA" 6080 PRINT AT 7,1;"LOSE (OBJECT)","FIND": GO SUB 6900: PRINT AT 7,1;"PERDER","HALLAR" 6085 PRINT AT 8,1;"TIGHT","LOOSE": GO SUB 6900: PRINT AT 8,1;"ESTRECHO","SUELTO" 6090 PRINT AT 9,1;"SMART","DUMB": GO SUB 6900: PRINT AT 9,1;"LISTO","TORPE" 6095 PRINT AT 10,1;"RICH","POOR": GO SUB 6900: PRINT AT 10,1;"RICO","POBRE" 6100 PRINT AT 11,1;"WEAK","STRONG": GO SUB 6900: PRINT AT 11,1;"DEBIL","FUERTE" 6105 PRINT AT 12,1;"OPEN","CLOSE": GO SUB 6900: PRINT AT 12,1;"ABRIR","CERRAR" 6110 PRINT AT 13,1;"COME","GO": GO SUB 6900: PRINT AT 13,1;"VOLVER","IR(SE)" 6115 PRINT AT 14,1;"STAY","LEAVE": GO SUB 6900: PRINT AT 14,1;"QUEDARSE","DEJAR" 6120 PRINT AT 15,1;"NEAR","FAR": GO SUB 6900: PRINT AT 15,1;"CERCA","LEJOS" 6125 PRINT AT 16,1;"WINDY","CALM": GO SUB 6900: PRINT AT 16,1;"VENTOSO","CALMA" 6130 PRINT AT 17,1;"HOT","COLD": GO SUB 6900: PRINT AT 17,1;"CALIENTE","FRIO" 6135 PRINT AT 18,1;"WARM","COOL": GO SUB 6900: PRINT AT 18,1;"CALOR","FRESCO" 6140 PRINT AT 19,1;"RAINY","DRY": GO SUB 6900: PRINT AT 19,1;"LLUVIOSO","ARIDO" 6145 PRINT AT 20,1;"WET","DRY": GO SUB 6900: PRINT AT 20,1;"HUMIDO","SECO" 6150 PAUSE 500: GO SUB 9900 6155 PRINT AT 1,1;"QUIET","NOISY": GO SUB 6900: PRINT AT 1,1;"QUIETO","RUIDOSO" 6160 PRINT AT 2,1;"GENEROUS","STINGY": GO SUB 6900: PRINT AT 2,1;"DADIVOSO","TACANO" 6165 PRINT AT 3,1;"SALESMAN","CUSTOMER": GO SUB 6900: PRINT AT 3,1;"VENDEDOR","CLIENTE" 6170 PRINT AT 4,1;"GIVE","TAKE": GO SUB 6900: PRINT AT 4,1;"DAR ","LLEVARSE" 6175 PRINT AT 5,1;"PROFIT","LOSS": GO SUB 6900: PRINT AT 5,1;"GANANCIA","PERDIDAS" 6180 PRINT AT 6,1;"TALK","LISTEN": GO SUB 6900: PRINT AT 6,1;"HABLAR","ESCUCHAR" 6200 PAUSE 500: GO TO 6999 6900 PAUSE 200: BEEP .04,5: BEEP .06,7: BEEP .04,4: OVER 0: RETURN 6999 GO SUB 9900 7000 CLS : PRINT ,," QUESTIONS" 7020 PRINT ,," DONDE","WHERE",,," QUANDO","WHEN" 7030 PRINT ,," QUAL","WHICH",,," POR QUE","WHY" 7040 PRINT ,," COMO","HOW",,," QUE","WHAT" 7050 PRINT ,," QUIEN","WHO",,," A QUIEN","WHOM",,," DE QUIEN","WHOSE" 7100 LET A$=" WHERE IS THE HOUSE?......DONDE ES LA CASA? " 7105 PAUSE 240 7110 GO SUB 7200 7115 PAUSE 200: LET A$=" WHEN CAN I SEE IT?.....QUANDO PUEDO VISTALO? ": GO SUB 7200 7120 PAUSE 200: LET A$=" WHICH IS MINE?........QUAL ES MIO? ": GO SUB 7200 7130 PAUSE 200: LET A$=" WHY DO YOU ASK?.......POR QUE PREGUNTAS? ": GO SUB 7200 7140 PAUSE 200: LET A$=" WHAT TIME IS IT?........QUE HORA ES?": GO SUB 7200 7150 PAUSE 200: LET A$=" WHO IS THE OWNER?.......QUIEN ES EL PATRON?": GO SUB 7200 7160 PAUSE 20: LET A$=" TO WHOM AM I TALKING?.......A QUIEN SON HABLANDO?": GO SUB 7200 7170 PAUSE 200: LET A$=" WHOSE BOOK IS THIS?......DE QUIEN ES EL LIBRO?": GO SUB 7200 7180 GO SUB 9900 7190 FLASH 1: PRINT AT 7,0;" END OF QUESTION SECTION " 7192 FLASH 0: LET A$=" WE NOW RETURN YOU TO THE MENU ": GO SUB 9800 7195 GO TO 115 7199 GO SUB 9900 7200 REM SENTENCE EXAMPLE 7210 LET P=LEN A$ 7220 FOR I=1 TO P 7230 LET Z=I+29: IF Z>=P THEN LET Z=P 7250 BEEP .005,22: PRINT AT 21,0; PAPER 0; INK 6;" ";A$(I TO Z);" " 7260 PAUSE 10 7270 NEXT I 7290 RETURN 7300 GO SUB 9900 8000 CLS : PRINT " PRONOUNS" 8999 STOP 9800 REM SENTENCE EXAMPLE 9810 LET P=LEN A$ 9820 FOR I=1 TO P 9830 LET Z=I+29: IF Z>=P THEN LET Z=P 9850 BEEP .005,22: PRINT AT 10,0; PAPER 0; INK 6;" ";A$(I TO Z);" " 9860 PAUSE 10 9870 NEXT I 9875 RETURN 9900 REM ENTER GOSUB 9910 INPUT INK 8;"PRESS TO CONTINUE";A$ 9911 LET A$=INKEY$ 9915 IF A$<>CHR$ 13 THEN GO TO 9911 9917 BEEP .05,2: BEEP .05,9: BEEP .05,20 9920 CLS : RETURN 9940 BEEP .005,22: PRINT AT 10,0; PAPER 0; INK 5;" ";A$(I TO Z);" " 9950 PAPER 7: INK 0: BORDER 4: LIST 9960 CLS : LET A$=" TU EJERCICIOS ESTA TERMINADO....MUCHAS GRACIAS Y ADIOS " 9962 LET P=LEN A$ 9964 FOR I=1 TO P 9966 LET Z=I+29: IF Z>=P THEN LET Z=P 9968 BEEP .005,22: PRINT AT 10,0; PAPER 0; INK 5;" ";A$(I TO Z);" " 9970 NEXT I 9972 NEXT I 9997 CLS : PRINT AT 10,0;" TU EJERCICIOS ESTA TERMINADO": STOP 9998 SAVE "SPAN TUTOR" LINE 1 9999 CLS : PRINT AT 10,6;"REWIND TO VERIFY": PAUSE 280: VERIFY "SPAN TUTOR" ```