1000 REM ODE - PAT HALL, 2/86
1010 REM CONTROL ROUTINE
1020 GOSUB 1070:GOSUB 1150:WHILE 1>0
1030 GOSUB 1310:GOSUB 1350:FOR I=1 TO 4
1040 GOSUB 1410:NEXT:WEND
1050 REM
1060 REM INITIALISATION
1070 BORDER O:MODE 1:INK 0,26:INK 1,2
1080 DIM R(3,5):FOR I=1 TO 3:FOR J=1 TO 5: READ R(I,J):NEXT:NEXT
1090 DIM R$(3,5,7):FOR I=1 TO 3:FOR J=1 TO 5:FOR K=1 TO R(I,J):READ R$(I,J,K):NEXT:NEXT:NEXT
1100 DIM N$(10):FOR I=1 TO 10:READ N$(I):NEXT:DIM A$(10):FOR I=1 TO 10
1110 READ A$(I):NEXT:RANDOMIZE TIME
1120 RETURN
1130 REM
1140 REM DESCRIBE
1150 BORDER 2:PEN 1:PAPER 2:CLS:WINDOW #1,1,40,1,3:PAPER #1,0:CLS #1
1160 WINDOW #2,1,40,23,25:PAPER #2,0:CLS #2:LOCATE 18,2:PRINT"< ODE >"
1170 LOCATE 3,9:PRINT "USING THIS";
1180 PRINT" PROGRAM YOU CAN WRITE A"
1190 PRINT"  POEM DEDICATED TO A";
1200 PRINT" CLOSE FRIEND. THE"
1210 PRINT"  AMSTRAD 6128 WILL";
1220 PRINT" SELECT WORDS WHICH"
1230 PRINT"  RHYME.":PRINT
1240 PRINT"  ALL YOU HAVE TO DO";
1250 PRINT" IS TYPE THE NAME"
1260 PRINT"  OF THE PERSON TO WHOM";
1270 PRINT" YOU WISH TO"
1280 PRINT"  OFFER YOUR ODE. ":RETURN
1290 REM
1300 REM PROMPT
1310 CLS #2:LOCATE #2,16,2:PRINT #2,"< SPACE >":K=0:WHILE K=0: IF INKEY(47)=0 THEN K=1
1320 WEND:CLS #2:RETURN
1330 REM
1340 REM DEDICATION
1350 L=9:WHILE L>8:CLS:LOCATE 15,10
1360 PRINT"TYPE NAME":LOCATE 15,12
1370 INPUT D$:L=LEN(D$):WEND:CLS:LOCATE 16-L/2,3:PRINT"ODE TO ";D$:PRINT
1380 RETURN
1390 REM
1400 REM SELECT COUPLET
1410 S=5:GOSUB 1440:RF=N:GOSUB 1440:CT=N:ON CT GOSUB 1470,1520,1580,1620,1670: RETURN
1420 REM
1430 REM RANDOM
1440 N=INT(RND(1)*S)+1:RETURN
1450 REM
1460 REM COUPLET 1
1470 PRINT TAB(3) "I LOVE TO WATCH YOUR ";:S=10:GOSUB 1440:PRINT TAB(3)A$(N);" ";
1480 S=R(1,RF):GOSUB 1440:PRINT R$(1,RF,N);",":PRINT TAB(3) "DESPITE THE FACT YOU";:PRINT TAB(3) "SEEM TO ";
1490 S=R(3,RF):GOSUB 1440:PRINT R$(3,RF,N);".":RETURN
1500 REM
1510 REM COUPLET 2
1520 PRINT TAB(3) " THE ";:S=10:GOSUB 1440:PRINT A$(N);" ";:GOSUB 1440
1530 PRINT N$(N);" REMINDS":PRINT TAB (3)"ME OF YOUR ";:S=R(1, RF):GOSUB 1440:PRINT R$(1, RF,N);",":PRINT TAB(3) "EVEN THOUGH YOUR ";:S=5:GOSUB 1440:RN=N:S=R(1,RN):GOSUB 1440
1540 PRINT R$(1,RN,N):PRINT TAB(3) "IS RATHER ";:S=R(2,RF):GOSUB 1440
1550 PRINT R$(2,RF,N);".":RETURN
1560 REM
1570 REM COUPLET 3
1580 PRINT TAB(3) "THE ";:S=10:GOSUB 1440:PRINT A$(N);" ";:GOSUB 1440:PRINT N$(N);" COULD NEVER":PRINT TAB(3) "BE SO ";:S=R(2,RF):GOSUB 1440
1590 PRINT R$(2,RF,N);",":PRINT TAB (3) "AS ";D$;" IN THE MORNING":PRINT TAB (3) "WHEN YOU ";:S=R(3,RF):GOSUB 1440:PRINT R$(3,RF,N);".":RETURN
1600 REM
1610 REM COUPLET 4
1620 PRINT TAB (3) "OH "; D$;" YOUR VERY":PRINT TAB (3) "LOVELY ";:S=R(1,RF):GOSUB 1440:PRINT R$(1, RF,N);","
1630 PRINT TAB (3) "IS RATHER LIKE A":S=5:GOSUB 1440:RN=N:S=R(1,RN):GOSUB 1440:PRINT TAB (3)R$(1,RN,N);" THAT'S ";:S=R(2,RF):GOSUB 1440
1640 PRINT R$(2,RF,N);".":RETURN
1650 REM
1660 REM COUPLET 5
1670 PRINT TAB (3) "MY ";D$;", ";D$;", ";D$; ",":PRINT TAB (3) "SO STRANGELY ";:S=R(2, RF):GOSUB 1440:PRINT R$(2,RF,N);",":PRINT TAB (3) "NO WONDER SINCE YOU'VE GOT":PRINT TAB (3) "A VERY ";:S=10:GOSUB 1440
1680 S=10:GOSUB 1440:PRINT A$(N);" ";
1690 S=R(1,RF):GOSUB 1440: S=R(1, RF)
1700 GOSUB 1440:PRINT R$(1,RF,N);"."
1710 RETURN
1720 REM
1730 REM DATA
1740 DATA 6,5,4,5,7,6,3,3
1750 DATA 3,6,4,6,6,7,7
1760 DATA SIGHT,PLIGHT,HEIGHT,SPITE
1770 DATA MIGHT,NIGHT,HAIR,STARE
1780 DATA FLAIR,AIR,SNAIR,FACE,BASE
1790 DATA GRACE,WAIST,EYE,THIGH,CRY
1800 DATA SIGH,REPLY,CHEER,EAR,TEAR
1810 DATA REAR,IDEA,FEAR,SNEER
1820 DATA WHITE,SLIGHT,RIGHT,QUITE
1830 DATA LIGHT,TIGHT,FAIR,BARE
1840 DATA RARE,CHASTE,GRACED,LACED
1850 DATA HIGH,SLY,NIGH,NEAR,CLEAR
1860 DATA SINCERE,INSINCERE,MERE,DEAR
1870 DATA FIGHT,WRITE,HYPE,BITE
1880 DATA COMPARE,CARE,DESPAIR,DARE
1890 DATA TEAR,IMPAIR,RACE,CHASE
1900 DATA DISPLACE,DISGRACE,PACE
1910 DATA TASTE,GO BY,DEFY,ESPY,LIE
1920 DATA IMPLY,PRY,DECRY,HEAR,LEER
1930 DATA PEER,JEER,STEER,VEER
1940 DATA DISAPPEAR,MOUNTAIN,MOON
1950 DATA LAKE,BREATH,RIVER,MIST,FIRE
1960 DATA ICE,SPELL,GLACIER
1970 DATA PURPLE,MISTY,ICY,FIERY
1980 DATA TEARFUL,MAGICAL,DEVOUT
1990 DATA HELPLESS,TRAGIC,ICE-BLUE
