10 REM STORY.ECB 15 REM ...STORY...from Roseville 12-17-80 20 LET Y=PEEK(52226) 30 IF Y>50 THEN LET Y=INT(Y/10) 40 FOR X=1 TO Y: LET Z=RND(0): NEXT X 50 PRINT "&K&J&J&J" 60 PRINT ,"-=< S T O R Y >=-&J&J" 70 PRINT "This program writes a random STORY." 80 PRINT "Enter how many lines you want printed out." 90 PRINT ,"( Enter 0 to quit )" 100 GOTO 3630 110 REM ... INTEGER 120 LET I=6*RND(0) 130 IF I>=1 THEN 150 140 LET I=6 150 ON I GOTO 160,180,200,220,240,260 160 PRINT " ONE"; 170 RETURN 180 PRINT " TWO"; 190 RETURN 200 PRINT " 2"; 210 RETURN 220 PRINT " 3"; 230 RETURN 240 PRINT " 8"; 250 RETURN 260 PRINT " 5"; 270 RETURN 280 REM ... NAME 290 LET N=8*RND(0) 300 IF N>=1 THEN 320 310 LET N=8 320 ON N GOTO 330,350,370,390,410,430,450,470 330 PRINT " RAY"; 340 RETURN 350 PRINT " BUD"; 360 RETURN 370 PRINT " AL"; 380 RETURN 390 PRINT " BOB"; 400 RETURN 410 PRINT " KARL"; 420 RETURN 430 PRINT " CHUCK"; 440 RETURN 450 PRINT " JERRY"; 460 RETURN 470 PRINT " HARRY"; 480 RETURN 490 REM ... NAMES 500 GOSUB 280 510 PRINT " AND"; 520 GOSUB 280 530 RETURN 540 REM ... TMPHR 550 LET I2=4*RND(0) 560 IF I2<1 THEN 630 570 IF I2<2 THEN 690 580 IF I2<3 THEN 750 590 PRINT " AT"; 600 GOSUB 110 610 PRINT " AM"; 620 RETURN 630 PRINT " AT"; 640 IF RND(0)<0.5 THEN 670 650 PRINT " SYSTEMS TIME"; 660 GOTO 680 670 PRINT " BRIDGE TIME"; 680 RETURN 690 PRINT " IN THE"; 700 IF RND(0)<0.5 THEN 730 710 PRINT " MORNING"; 720 GOTO 740 730 PRINT " AFTERNOON"; 740 RETURN 750 PRINT " AT"; 760 GOSUB 110 770 PRINT " PM"; 780 RETURN 790 REM ... PADJ 800 LET P=10*RND(0) 810 IF P>=1 THEN 830 820 LET P=10 830 ON P GOTO 840,860,880,900,920,940,960,980,1000,1020 840 PRINT " LAZY"; 850 RETURN 860 PRINT " KIND"; 870 RETURN 880 PRINT " STUPID"; 890 RETURN 900 PRINT " OLD"; 910 RETURN 920 PRINT " WILD"; 930 RETURN 940 PRINT " INTELLECTUAL"; 950 RETURN 960 PRINT " MEAT-HEAD"; 970 RETURN 980 PRINT " AMAZING"; 990 RETURN 1000 PRINT " BRILLIANT"; 1010 RETURN 1020 PRINT " WILD"; 1030 RETURN 1040 REM ... ADVDEG 1050 LET V=4*RND(0) 1060 IF V>=1 THEN 1080 1070 LET V=4 1080 ON V GOTO 1090,1110,1130,1150 1090 PRINT " VERY"; 1100 RETURN 1110 PRINT " SO"; 1120 RETURN 1130 PRINT " EXTREMELY"; 1140 RETURN 1150 PRINT " QUITE"; 1160 RETURN 1170 REM ... PADJM 1180 IF RND(0)<0.5 THEN 1210 1190 GOSUB 790 1200 RETURN 1210 GOSUB 1040 1220 GOTO 1190 1230 REM ... PADJLIST 1240 IF RND(0)<0.5 THEN 1270 1250 GOSUB 1170 1260 RETURN 1270 GOSUB 1230 1280 PRINT ","; 1290 GOTO 1250 1300 REM ... PADJPART 1310 LET P=RND(0) 1320 IF P<0.33 THEN 1360 1330 IF P<0.67 THEN 1380 1340 PRINT " [CENSORED]"; 1350 RETURN 1360 GOSUB 1170 1370 RETURN 1380 GOSUB 1230 1390 PRINT " AND"; 1400 GOTO 1360 1410 REM ... PADJPHR 1420 IF RND(0)<0.5 THEN 1450 1430 GOSUB 1300 1440 RETURN 1450 GOSUB 1170 1460 RETURN 1470 REM ... CPLACE 1480 LET C=4*RND(0) 1490 IF C>=1 THEN 1510 1500 LET C=4 1510 ON C GOTO 1520,1540,1560,1580 1520 PRINT " 1108 ROOM"; 1530 RETURN 1540 PRINT " BRIDGE ROOM"; 1550 RETURN 1560 PRINT " 5500 ROOM"; 1570 RETURN 1580 PRINT " TAPE LIBRARY"; 1590 RETURN 1600 REM ... VERB 1610 LET V=4*RND(0) 1620 IF V>=1 THEN 1640 1630 LET V=4 1640 ON V GOTO 1650,1670,1690,1710 1650 PRINT " THINK"; 1660 RETURN 1670 PRINT " REBOOT"; 1680 RETURN 1690 PRINT " USE THE TTY"; 1700 RETURN 1710 PRINT " PROGRAM"; 1720 RETURN 1730 REM ... ADVERB 1740 IF RND(0)<0.5 THEN 1770 1750 PRINT " SLOWLY"; 1760 RETURN 1770 PRINT " FAST"; 1780 RETURN 1790 REM ... PVERBPHR 1800 GOSUB 1600 1810 IF RND(0)<0.5 THEN 1830 1820 GOSUB 1730 1830 RETURN 1840 REM ... PART 1850 LET P8=5*RND(0) 1860 IF P8>=1 THEN 1880 1870 LET P8=5 1880 ON P8 GOTO 1890,1910,1930,1950,1970 1890 PRINT " EXCITED"; 1900 RETURN 1910 PRINT " SLOW"; 1920 RETURN 1930 PRINT " FAST"; 1940 RETURN 1950 PRINT " DRUNK"; 1960 RETURN 1970 PRINT " CODING"; 1980 RETURN 1990 REM ... LOCPHR 2000 IF RND(0)<0.5 THEN 2040 2010 PRINT " IN THE"; 2020 GOSUB 1470 2030 RETURN 2040 PRINT " IN"; 2050 LET L=RND(0) 2060 IF L<0.33 THEN 2100 2070 IF L<0.67 THEN 2120 2080 PRINT " BLUE BELL"; 2090 RETURN 2100 PRINT " THE ATLANTA BRANCH"; 2110 RETURN 2120 PRINT " ST. PAUL"; 2130 RETURN 2140 REM ... SENP 2150 IF RND(0)<0.5 THEN 2190 2160 GOSUB 280 2170 GOSUB 2220 2180 RETURN 2190 GOSUB 490 2200 GOSUB 2350 2210 RETURN 2220 REM ... SCOPULA 2230 LET S=4*RND(0) 2240 IF S>=1 THEN 2260 2250 LET S=4 2260 ON S GOTO 2270,2290,2310,2330 2270 PRINT " IS"; 2280 RETURN 2290 PRINT " WAS"; 2300 RETURN 2310 PRINT " WILL BE"; 2320 RETURN 2330 PRINT " IS ALMOST"; 2340 RETURN 2350 REM ... PCOPULA 2360 LET P=4*RND(0) 2370 IF P>=1 THEN 2390 2380 LET P=4 2390 ON P GOTO 2400,2420,2440,2460 2400 PRINT " ARE"; 2410 RETURN 2420 PRINT " WERE"; 2430 RETURN 2440 PRINT " WILL BE"; 2450 RETURN 2460 PRINT " ARE ALMOST"; 2470 RETURN 2480 REM ... SEN 2490 LET S8=7*RND(0) 2500 IF S8>=1 THEN 2520 2510 LET S8=7 2520 ON S8 GOTO 2530,2560,2590,2610,2630,2660,2590 2530 GOSUB 2680 2540 GOSUB 540 2550 RETURN 2560 GOSUB 2680 2570 GOSUB 1990 2580 RETURN 2590 GOSUB 2680 2600 RETURN 2610 GOSUB 2140 2620 GOTO 2570 2630 GOSUB 2680 2640 GOSUB 1990 2650 GOTO 2540 2660 GOSUB 2140 2670 GOTO 2640 2680 REM ... MSEN 2690 LET M=RND(0) 2700 IF M<0.33 THEN 2750 2710 IF M<0.67 THEN 2780 2720 GOSUB 2140 2730 GOSUB 1410 2740 RETURN 2750 GOSUB 2140 2760 GOSUB 1840 2770 RETURN 2780 GOSUB 790 2790 GOSUB 280 2800 PRINT " AND"; 2810 GOSUB 790 2820 GOSUB 280 2830 GOSUB 1790 2840 RETURN 2850 REM ... QUESTION 2860 LET Q1=3*RND(0) 2870 IF Q1<1 THEN 2910 2880 IF Q1<2 THEN 2950 2890 GOSUB 2990 2900 RETURN 2910 GOSUB 2990 2920 PRINT ", BUT NOT"; 2930 GOSUB 280 2940 RETURN 2950 PRINT " WHY DOES"; 2960 GOSUB 280 2970 GOSUB 1790 2980 RETURN 2990 REM ... PQT 3000 PRINT " WHY IS"; 3010 GOSUB 280 3020 GOSUB 1410 3030 RETURN 3040 REM ... BCS 3050 IF RND(0)<0.5 THEN 3080 3060 GOSUB 3100 3070 RETURN 3080 GOSUB 3170 3090 RETURN 3100 REM ... TCS 3110 IF RND(0)<0.5 THEN 3150 3120 PRINT " IT IS OBVIOUSLY TRUE THAT"; 3130 GOSUB 3170 3140 RETURN 3150 GOSUB 2480 3160 RETURN 3170 REM ... ECS 3180 IF RND(0)<0.5 THEN 3210 3190 GOSUB 2480 3200 RETURN 3210 PRINT " EITHER"; 3220 GOSUB 2480 3230 PRINT " OR"; 3240 GOTO 3190 3250 REM ... CSEN 3260 LET C7=8*RND(0) 3270 IF C7>=1 THEN 3290 3280 LET C7=8 3290 ON C7 GOTO 3300,3320,3300,3370,3300,3420,3480,3490 3300 GOSUB 2480 3310 RETURN 3320 PRINT " WHEN"; 3330 GOSUB 2480 3340 PRINT ","; 3350 GOSUB 3170 3360 RETURN 3370 PRINT " IF"; 3380 GOSUB 2480 3390 PRINT ","; 3400 PRINT " THEN"; 3410 GOTO 3300 3420 PRINT " WHEREAS"; 3430 GOSUB 3040 3440 PRINT ","; 3450 PRINT " THEREFORE"; 3460 GOSUB 3040 3470 RETURN 3480 GOTO 3350 3490 GOSUB 3100 3500 RETURN 3510 REM ... SENTENCE 3520 LET S7=RND(0) 3530 IF S7<0.33 THEN 3580 3540 IF S7<0.67 THEN 3610 3550 GOSUB 3250 3560 PRINT "." 3570 RETURN 3580 GOSUB 2850 3590 PRINT "?" 3600 RETURN 3610 GOSUB 2480 3620 GOTO 3560 3630 REM ...Main program 3640 INPUT " ---=>",Z 3650 IF Z<1 THEN 3740 3660 REM ............ 3670 FOR I=1 TO 6 3680 LET Y=RND(0) 3690 NEXT I 3700 FOR Z1=1 TO Z 3710 GOSUB 3510 3720 NEXT Z1 3730 GOTO 3640 3740 PRINT ,"-=< End of STORY >=-" 3750 END