10 REM LIMRK.ECB 15 REM .......LIMERICK......05-05-80.......R.E.H. 20 REM ....Inspired by the UNIVERSITY of HOUSTON version 30 REM . G. E. FISHER, 09 MAY 1974 40 DIM G(30) 50 DIM A$(20),B$(15),C$(15),D$(15),E$(15),F$(15),G$(15) 60 DIM M$(15),N$(20),O$(30),P$(15),S$(15),T$(20),V$(30) 70 DEF FNR(X)=INT(RND(0)*X)+1 80 LET L=3: PRINT "&K&J&J&J" 90 PRINT TAB(15);"+#+ L I M E R I C K +#+" 100 LET A=FNR(L): LET B=FNR(L): LET C=FNR(L) 110 LET E=FNR(2): LET F=FNR(4): LET M=FNR(L): LET N=FNR(L) 120 LET O=FNR(L): LET P=FNR(L): LET S=FNR(L): LET T=FNR(L) 130 LET V=FNR(L): LET X=FNR(L) 140 FOR J=1 TO 4: LET G(J)=J: NEXT J 150 FOR J=1 TO 3: PRINT : NEXT J 160 LET I1=FNR(L): LET I3=FNR(L): LET D1=FNR(4) 170 LET I6=FNR(L): LET D2=FNR(4) 180 LET M1=FNR(L): LET M2=FNR(L): LET S1=FNR(L) 190 LET G1=G(M1) 200 LET G2=G(M2) 210 LET T1=INT(RND(0)*2) 220 LET T2=INT(RND(0)*2) 230 LET T3=INT(RND(0)*2) 240 IF T1<1 THEN 410 250 PRINT "There was a ";: GOSUB 880: PRINT " ";: GOSUB 1190 260 PRINT " from ";: GOSUB 1470: PRINT "," 270 PRINT "who ";: GOSUB 1520: PRINT " a "; 280 GOSUB 890: PRINT " ";: GOSUB 1200 290 IF T3<1 THEN 320 300 PRINT " named ";: GOSUB 1250: PRINT ";" 310 GOTO 330 320 GOSUB 1050: GOSUB 1350: GOSUB 1300: PRINT ";" 330 IF T2<1 THEN 500 340 GOSUB 1410: GOSUB 1140: PRINT " to be "; 350 GOSUB 900: PRINT "," 360 PRINT "and ";: GOSUB 1000: GOSUB 1060 370 GOSUB 1360: GOSUB 950: PRINT ";" 380 PRINT "But ";: GOSUB 1420: PRINT " was the ";: GOSUB 900 390 PRINT "est and ";: GOSUB 1570: PRINT "." 400 GOTO 560 410 PRINT "There was a ";: GOSUB 880: PRINT " ";: GOSUB 1190 420 PRINT " named ";: GOSUB 1250: PRINT "," 430 PRINT "who ";: GOSUB 1520: PRINT " a "; 440 GOSUB 890: PRINT " ";: GOSUB 1200 450 IF T3<1 THEN 480 460 GOSUB 1050: GOSUB 1350: GOSUB 1300: PRINT ";" 470 GOTO 490 480 GOSUB 1110: GOSUB 1470: PRINT ";" 490 IF T2<1 THEN 340 500 GOSUB 1420: GOSUB 1140 510 PRINT " to be ";: GOSUB 900: PRINT "," 520 PRINT "and ";: GOSUB 1000: GOSUB 1060 530 GOSUB 1350: GOSUB 950: PRINT ";" 540 PRINT "but ";: GOSUB 1410: PRINT " was "; 550 GOSUB 900: PRINT "er and ";: GOSUB 1570: PRINT "." 560 PRINT 570 PRINT "Do you want to hear another (Y,N OR E)---=>"; 580 INPUT (1,0)Z$: LET Z$=Z$+"N" 590 IF Z$(1,1)="E" THEN 620 600 IF Z$(1,1)="N" THEN 1700 610 GOTO 100 620 RESTORE 630 630 DATA "..(1)..","..(2)..","..(3)..","..(4)..","..(5).." 640 DATA "..(6)..","..(7)..","..(8)..","..(9).." 650 READ A$,M$,T$,N$,O$,X$,B$,V$,C$ 660 GOSUB 1620 670 LET L=4 680 PRINT "Enter a NAME(4), a TOWN(3), an OBJECT(5)," 690 PRINT "and a PREDICATE(6) which all rhyme." 700 INPUT "(4) a name ---=>",N$ 710 INPUT "(3) a town ---=>",T$ 720 INPUT "(5) an object ---=>",O$ 730 INPUT "(6) a predicate---=>",X$ 740 GOSUB 1620 750 INPUT "(2) Enter a THING ---=>",M$ 760 PRINT "ENTER the ";M$;"'s gender." 770 INPUT (1,0)" 1=MALE, 2=FEMALE, 3=NEITHER ---=>",G(L) 780 IF G(L)<1 OR G(L)>3 THEN 760 790 GOSUB 1620 800 PRINT "Enter an ADJECTIVE(1) and an OBJECT(5) which rhyme." 810 INPUT "(1) an adjective ---=>",A$ 820 INPUT "(5) an object ---=>",B$ 830 GOSUB 1620 840 PRINT "Enter the PAST(8) and PRESENT(9) tense of a verb." 850 INPUT "(8) Past tense ---=>",V$ 860 INPUT "(9) Present tense ---=>",C$ 870 GOTO 100 880 ON I1 GOTO 910,920,930,940: REM ...Adjective 890 ON I3 GOTO 910,920,930,940 900 ON I6 GOTO 910,920,930,940 910 PRINT "young";: RETURN 920 PRINT "old";: RETURN 930 PRINT "dead";: RETURN 940 PRINT A$;: RETURN 950 ON I6 GOTO 960,970,980,990: REM ...Object 960 PRINT "tongue ";: RETURN 970 PRINT "bowl ";: RETURN 980 PRINT "bed ";: RETURN 990 PRINT B$;: RETURN 1000 ON C GOTO 1010,1020,1030,1040: REM ...VERB: present 1010 PRINT "take ";: RETURN 1020 PRINT "swim ";: RETURN 1030 PRINT "walk ";: RETURN 1040 PRINT C$;: RETURN 1050 ON D1 GOTO 1070,1080,1090,1100 1060 ON D2 GOTO 1070,1080,1090,1100 1070 PRINT "in ";: RETURN 1080 PRINT "to ";: RETURN 1090 PRINT "with ";: RETURN 1100 PRINT "like ";: RETURN 1110 ON E GOTO 1120,1130 1120 PRINT "to ";: RETURN 1130 PRINT "from ";: RETURN 1140 ON F GOTO 1150,1160,1170,1180 1150 PRINT "had ";: RETURN 1160 PRINT "thought ";: RETURN 1170 PRINT "wanted ";: RETURN 1180 PRINT "ought ";: RETURN 1190 ON M1 GOTO 1210,1220,1230,1240 1200 ON M2 GOTO 1210,1220,1230,1240 1210 PRINT "man ";: RETURN 1220 PRINT "woman ";: RETURN 1230 PRINT "thing ";: RETURN 1240 PRINT M$;: RETURN 1250 ON S1 GOTO 1260,1270,1280,1290 1260 PRINT "Plucket ";: RETURN 1270 PRINT "Dave ";: RETURN 1280 PRINT "Chives ";: RETURN 1290 PRINT N$;: RETURN 1300 ON S1 GOTO 1310,1320,1330,1340 1310 PRINT "bucket ";: RETURN 1320 PRINT "cave ";: RETURN 1330 PRINT "dive ";: RETURN 1340 PRINT O$;: RETURN 1350 ON G1 GOTO 1370,1380,1390,1400 1360 ON G2 GOTO 1370,1380,1390,1400 1370 PRINT "his ";: RETURN 1380 PRINT "her ";: RETURN 1390 PRINT "it's ";: RETURN 1400 PRINT P$;: RETURN 1410 ON G1 GOTO 1430,1440,1450,1460 1420 ON G2 GOTO 1430,1440,1450,1460 1430 PRINT "he ";: RETURN 1440 PRINT "she ";: RETURN 1450 PRINT "it ";: RETURN 1460 PRINT S$;: RETURN 1470 ON S1 GOTO 1480,1490,1500,1510 1480 PRINT "Nantucket ";: RETURN 1490 PRINT "New Rhaves ";: RETURN 1500 PRINT "St. Ives ";: RETURN 1510 PRINT T$;: RETURN 1520 ON V GOTO 1530,1540,1550,1550 1530 PRINT "took ";: RETURN 1540 PRINT "liked ";: RETURN 1550 PRINT "walked ";: RETURN 1560 PRINT V$;: RETURN 1570 ON S1 GOTO 1580,1590,1600,1610 1580 PRINT "ducked it ";: RETURN 1590 PRINT "raved ";: RETURN 1600 PRINT "dived ";: RETURN 1610 PRINT X$;: RETURN 1620 PRINT "&KS A M P L E&J": REM .....Sample form..... 1630 PRINT "There was a ";A$;" ";M$;" named ";N$ 1640 PRINT "who ";C$;" a young woman from ";T$;";" 1650 PRINT "she wanted to be ";A$ 1660 PRINT "and ";C$;" in his ";B$ 1670 PRINT "but he was the ";A$;"est and ";X$ 1680 PRINT : PRINT 1690 RETURN 1700 END