home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1987-10-10 | 10.1 KB | 374 lines |
- 10 '----------------------------------------------------------------------------
- 20 ' Menu Maker, by Jim Woodruff - Sept. 7, 1987
- 30 ' Orig written in QUICK BASIC 2.01 - modified for GW-BASIC - Oct. 10, 1987
- 40 '
- 50 ' A utility for making menu's and help screens.
- 60 ' The files created by MENU MAKER can be Bloaded into screen memory by
- 70 ' any basic program...
- 80 '----------------------------------------------------------------------------
- 90 '
- 100 DEFINT A-Z
- 110 KEY 1,CHR$(255)+CHR$(13)
- 120 FOREC=7:ROW=1:COL=1
- 130 VIEW PRINT 1 TO 25:CLS
- 140 '
- 150 'Hello:
- 160 <UNK! {0009}>LOCATE 7,6:FOR I=0 TO 7:COLOR 7,0:PRINT USING " #_-";I;
- 170 <UNK! {0009}>COLOR I,0:PRINT STRING$(2,219);:NEXT
- 180 <UNK! {0009}>LOCATE 10,27,1,0,7:PRINT "Choose main screen color ";
- 190 <UNK! {0009}>MAIN$=INPUT$(1):MAIN=VAL(MAIN$):PRINT MAIN$
- 200 IF MAIN<0 OR MAIN >7 THEN SOUND 550,0.5:GOTO 160
- 210 <UNK! {0009}>BACKC=MAIN:COLOR 7,MAIN:CLS
- 220 GOTO 540
- 230 '
- 240 'Status:
- 250 <UNK! {0009}>COLOR 7,0
- 260 <UNK! {0009}>LOCATE 25,65,0:PRINT USING "Y=## X=## C=";ROW ;COL;
- 270 <UNK! {0009}>COLOR FOREC,BACKC:PRINT USING "##/#";FOREC;BACKC;
- 280 <UNK! {0009}>COLOR 7,0
- 290 <UNK! {0009}>RETURN
- 300 '
- 310 'GetPos:
- 320 <UNK! {0009}>UPDATED = -1
- 330 <UNK! {0009}>LOCATE ROW,COL,1
- 340 <UNK! {0009}>K$="":WHILE K$="":K$=INKEY$:WEND
- 350 <UNK! {0009}>K=ASC(RIGHT$(K$,1))
- 360 IF K= 72 THEN ROW=ROW-1: GOTO 480
- 370 IF K= 80 THEN ROW=ROW+1: GOTO 480
- 380 IF K= 75 THEN COL=COL-1: GOTO 480
- 390 IF K= 77 THEN COL=COL+1: GOTO 480
- 400 IF K= 71 THEN COL=1:ROW=1:GOTO 480
- 410 IF K=116 THEN COL=COL+8: GOTO 480
- 420 IF K=115 THEN COL=COL-8: GOTO 480
- 430 IF K=117 THEN COL=COL2: GOTO 480
- 440 <UNK! {0009}> IF K= 27 OR K=13 THEN RETURN
- 450 GOTO 310
- 460 '
- 470 'MoveCursor:
- 480 <UNK! {0009}>IF ROW<1 THEN ROW=24 ELSE IF ROW>24 THEN ROW = 1
- 490 <UNK! {0009}>IF COL<1 THEN COL=80 ELSE IF COL>80 THEN COL = 1
- 500 GOSUB 250
- 510 GOTO 310
- 520 '
- 530 'GetCommand:
- 540 <UNK! {0009}>COLOR 7,0:LOCATE 25,1,0
- 550 <UNK! {0009}>PRINT "(B)ox (L)ine (T)ext D(R)aw (C)olor (D)isk (F)ill (O)ops (Q)uit";
- 560 GOSUB 250
- 570 <UNK! {0009}>K$="":WHILE K$="":K$=INKEY$:WEND
- 580 IF K$="B" OR K$="b" THEN PCOPY 0,1:GOTO 710
- 590 IF K$="L" OR K$="l" THEN PCOPY 0,1:GOTO 1120
- 600 IF K$="C" OR K$="c" THEN GOTO 1950
- 610 IF K$="T" OR K$="t" THEN PCOPY 0,1:GOTO 1520
- 620 IF K$="R" OR K$="r" THEN PCOPY 0,1:PCOPY 0,3:GOTO 2080
- 630 IF K$="D" OR K$="d" THEN GOTO 2840
- 640 IF K$="F" OR K$="f" THEN PCOPY 0,1:GOTO 2550
- 650 IF K$="O" OR K$="o" THEN PCOPY 1,0:GOTO 540
- 660 IF K$="Q" OR K$="q" THEN GOTO 3880
- 670 <UNK! {0009}>SOUND 550,0.5
- 680 GOTO 540
- 690 '
- 700 'Box:
- 710 <UNK! {0009}>PCOPY 0,3
- 720 GOSUB 3840
- 730 <UNK! {0009}>PRINT "Move cursor to upper left corner of box then press enter.";
- 740 GOSUB 310
- 750 IF K=27 THEN GOTO 2810
- 760 <UNK! {0009}>LOCATE ROW,COL:PRINT CHR$(218)
- 770 <UNK! {0009}>ROW1=ROW:COL1=COL
- 780 GOSUB 3840
- 790 <UNK! {0009}>PRINT "Move cursor to lower right corner of box then press enter.";
- 800 GOSUB 310
- 810 IF K=27 THEN GOTO 2810
- 820 IF ROW-1<ROW1 OR COL-1<=COL1 THEN SOUND 550,0.5:GOSUB 1460:GOTO 710
- 830 <UNK! {0009}>LOCATE ROW,COL:PRINT CHR$(217)
- 840 <UNK! {0009}>ROW2=ROW:COL2=COL
- 850 GOSUB 3840
- 860 <UNK! {0009}>PRINT "(*D)ouble or (S)ingle line ";
- 870 <UNK! {0009}>STYLE$=INPUT$(1)
- 880 IF STYLE$=CHR$(27) THEN GOTO 2810
- 890 IF STYLE$="D" OR STYLE$="d" THEN STYLE$="D"
- 900 <UNK! {0009}> IF STYLE$="S" OR STYLE$="s" THEN STYLE$="S":ELSE STYLE$="D"
- 910 GOSUB 3840
- 920 <UNK! {0009}>PRINT "(F)illed or (*N)ot filled ";
- 930 <UNK! {0009}>FILL$=INPUT$(1)
- 940 IF FILL$=CHR$(27) THEN GOTO 2810
- 950 IF FILL$="F" OR FILL$="f" THEN FILL$="F":GOTO 970
- 960 <UNK! {0009}> IF FILL$="N" OR FILL$="n" THEN FILL$="N":ELSE FILL$="N"
- 970 <UNK! {0009}>PCOPY 3,0
- 980 IF STYLE$ = "S" THEN C1=218:C2=191:C3=192:C4=217:HORZCHR=196:VERTCHR=179
- 990 IF STYLE$ = "D" THEN C1=201:C2=187:C3=200:C4=188:HORZCHR=205:VERTCHR=186
- 1000 HORZLEN = (COL2-COL1)-1
- 1010 <UNK! {0009}>COLOR FOREC,BACKC
- 1020 <UNK! {0009}>LOCATE ROW1,COL1,0:PRINT CHR$(C1) STRING$(HORZLEN,HORZCHR) CHR$(C2)
- 1030 <UNK! {0009}>FOR I=ROW1+1 TO ROW2-1
- 1040 <UNK! {0009}><UNK! {0009}>LOCATE I,COL1:PRINT CHR$(VERTCHR);
- 1050 <UNK! {0009}><UNK! {0009}> IF FILL$="F" THEN PRINT STRING$(HORZLEN,32);
- 1060 <UNK! {0009}><UNK! {0009}>LOCATE I,COL2:PRINT CHR$(VERTCHR)
- 1070 <UNK! {0009}>NEXT I
- 1080 <UNK! {0009}>LOCATE ROW2,COL1:PRINT CHR$(C3) STRING$(HORZLEN,HORZCHR) CHR$(C4);
- 1090 GOTO 540
- 1100 '
- 1110 'Lin:
- 1120 <UNK! {0009}>PCOPY 0,3
- 1130 GOSUB 3840
- 1140 <UNK! {0009}>PRINT "(D)ouble or (*S)ingle line ";
- 1150 <UNK! {0009}>STYLE$=INPUT$(1)
- 1160 IF STYLE$=CHR$(27) THEN GOTO 2810
- 1170 IF STYLE$="D" OR STYLE$="d" THEN STYLE$="D":HORZCHR=205:GOTO 1190
- 1180 HORZCHR=196:STYLE$="S"
- 1190 GOSUB 3840
- 1200 <UNK! {0009}>PRINT "Position cursor at begining of line...";
- 1210 GOSUB 310
- 1220 <UNK! {0009}>COL1=COL:ROW1=ROW
- 1230 IF K=27 THEN GOTO 2810
- 1240 <UNK! {0009}> CHR=SCREEN(ROW,COL)
- 1250 IF CHR=179 AND STYLE$="S" THEN C1=195:GOTO 1290
- 1260 IF CHR=179 AND STYLE$="D" THEN C1=198:GOTO 1290
- 1270 IF CHR=186 AND STYLE$="S" THEN C1=199:GOTO 1290
- 1280 <UNK! {0009}> IF CHR=186 AND STYLE$="D" THEN C1=204:ELSE C1=HORZCHR
- 1290 <UNK! {0009}> COLOR FOREC,BACKC:PRINT CHR$(C1);
- 1300 GOSUB 3840
- 1310 <UNK! {0009}>PRINT "Position cursor at end of line...";
- 1320 GOSUB 310
- 1330 IF K=27 THEN GOTO 2810
- 1340 IF ROW<>ROW1 OR COL-1<=COL1 THEN SOUND 550,0.5:GOSUB 1460:GOTO 1120
- 1350 <UNK! {0009}> CHR=SCREEN(ROW,COL)
- 1360 IF CHR=179 AND STYLE$="S" THEN C2=180:GOTO 1400
- 1370 IF CHR=179 AND STYLE$="D" THEN C2=181:GOTO 1400
- 1380 IF CHR=186 AND STYLE$="S" THEN C2=182:GOTO 1400
- 1390 <UNK! {0009}> IF CHR=186 AND STYLE$="D" THEN C2=185:ELSE C2=HORZCHR
- 1400 <UNK! {0009}> COLOR FOREC,BACKC
- 1410 <UNK! {0009}> LOCATE ROW,COL1,0
- 1420 <UNK! {0009}> PRINT CHR$(C1) STRING$((COL-COL1)-1,HORZCHR) CHR$(C2)
- 1430 GOTO 540
- 1440 '
- 1450 'CursErr:
- 1460 GOSUB 3840
- 1470 <UNK! {0009}>PRINT "Cursor position error. Press <ANY KEY> to continue";
- 1480 <UNK! {0009}>K$=INPUT$(1):PCOPY 3,0
- 1490 <UNK! {0009}>RETURN
- 1500 '
- 1510 'Text:
- 1520 <UNK! {0009}>PCOPY 0,3
- 1530 GOSUB 3840
- 1540 <UNK! {0009}>PRINT "Position cursor and press <ENTER>...";
- 1550 GOSUB 310
- 1560 IF K=27 THEN GOTO 2810
- 1570 GOSUB 3840
- 1580 <UNK! {0009}>PRINT "Enter text at cursor.";
- 1590 <UNK! {0009}>COLOR FOREC,BACKC
- 1600 <UNK! {0009}>LOCATE ROW,COL,1:LINE INPUT;"";TEXT$
- 1630 GOSUB 3840
- 1640 <UNK! {0009}>PRINT "Reposition (*Y/N) ";
- 1650 <UNK! {0009}>R$=INPUT$(1)
- 1660 IF R$=CHR$(27) THEN GOTO 2810
- 1670 IF R$="N" OR R$="n" THEN GOTO 540
- 1680 GOSUB 3840
- 1690 <UNK! {0009}>PRINT "(*C)enter or (R)eposition cursor ";
- 1700 <UNK! {0009}>K$=INPUT$(1)
- 1710 IF K$=CHR$(27) THEN GOTO 2810
- 1720 IF K$="R" OR K$="r" THEN GOTO 1780
- 1730 <UNK! {0009}>PCOPY 3,0:COLOR FOREC,BACKC
- 1740 <UNK! {0009}>COL=40-LEN(TEXT$)/2:LOCATE ROW,COL:PRINT TEXT$;
- 1750 GOTO 1630
- 1780 GOSUB 3840
- 1790 <UNK! {0009}>PRINT "Move cursor to new position, press <ENTER> when ready.";
- 1800 <UNK! {0009}>ROW2=ROW:COL2=COL
- 1810 GOSUB 310
- 1820 IF K=27 THEN GOTO 2810
- 1830 IF POS(0)+LEN(TEXT$)-1<81 THEN 1880
- 1840 SOUND 550,0.5:GOSUB 3840
- 1850 PRINT "Not enough room, press <ANY KEY> to continue.";
- 1860 R$=INPUT$(1):GOTO 1780
- 1880 <UNK! {0009}>PCOPY 3,0
- 1890 <UNK! {0009}>LOCATE ROW2,COL2
- 1900 <UNK! {0009}>COLOR FOREC,BACKC
- 1910 LOCATE ROW,COL:PRINT TEXT$;
- 1920 GOTO 1630
- 1930 '
- 1940 'Colr:
- 1950 GOSUB 3840
- 1960 <UNK! {0009}>FOR I=0 TO 15:COLOR I,0:PRINT USING "## ";I;:NEXT:COLOR 7,0
- 1970 <UNK! {0009}>LINE INPUT;" foreground: ";FOREC$
- 1980 <UNK! {0009}> IF FOREC$<>"" THEN FOREC=VAL(FOREC$)
- 1990 IF FOREC>31 THEN SOUND 550,0.5:GOTO 1950
- 2000 GOSUB 3840
- 2010 <UNK! {0009}>FOR I=0 TO 7:COLOR 15,I:PRINT USING "## ";I;:NEXT:COLOR 7,0
- 2020 <UNK! {0009}>LINE INPUT;" background: ";BACKC$
- 2030 <UNK! {0009}> IF BACKC$<>"" THEN BACKC=VAL(BACKC$)
- 2040 IF BACKC>7 THEN SOUND 550,0.5:GOTO 1950
- 2050 GOTO 540
- 2060 '
- 2070 'Drawing:
- 2080 GOSUB 3840
- 2090 <UNK! {0009}>LINE INPUT;"Enter character or code to draw with. (F1 for list) ";G$
- 2100 IF G$="" THEN GOTO 540
- 2110 IF G$=CHR$(255) THEN PCOPY 0,3:GOTO 2290
- 2120 IF LEN(G$)=1 AND ASC(G$)<127 THEN GOTO 2170
- 2130 G=VAL(G$):IF G<1 OR G>254 THEN SOUND 550,0.5:GOTO 2080
- 2140 <UNK! {0009}>G$=CHR$(G)
- 2170 GOSUB 3840
- 2180 <UNK! {0009}>LOCATE 25,1:COLOR FOREC,BACKC:PRINT G$;
- 2190 <UNK! {0009}>COLOR 7,0:PRINT " Press <ENTER> to place character, <Esc> to Stop. ";
- 2220 GOSUB 310
- 2230 IF K=27 THEN GOTO 2080
- 2240 <UNK! {0009}> IF K=13 THEN COLOR FOREC,BACKC
- 2250 <UNK! {0009}>LOCATE ROW,COL:PRINT G$
- 2260 GOTO 2220
- 2270 '
- 2280 'GraphicList:
- 2290 <UNK! {0009}>PCOPY 0,3
- 2300 IF GEXIST THEN PCOPY 2,0:GOTO 2460
- 2310 COLR=15:CLS
- 2320 FOR I=1 TO 22
- 2330 COLOR COLR,0
- 2340 LOCATE I,3
- 2350 PRINT I+122 "- " CHR$(I+122);" ";
- 2360 PRINT I+144 "- " CHR$(I+144);" ";
- 2370 PRINT I+166 "- " CHR$(I+166);" ";
- 2380 PRINT I+188 "- " CHR$(I+188);" ";
- 2390 PRINT I+210 "- " CHR$(I+210);" ";
- 2400 PRINT I+232 "- " CHR$(I+232);" ";
- 2410 IF COLR=15 THEN COLR=7 ELSE COLR=15
- 2420 NEXT I
- 2430 <UNK! {0009}>PCOPY 0,2:GEXIST =-1
- 2440 '
- 2450 'Gexist:
- 2460 GOSUB 3840
- 2470 <UNK! {0009}>LINE INPUT;"Enter character or code to draw with: ";G$
- 2480 IF G$="" THEN GOTO 2810
- 2490 IF LEN(G$)=1 AND ASC(G$)<127 THEN PCOPY 3,0:GOTO 2170
- 2500 G=VAL(G$):IF G<1 OR G>254 THEN SOUND 550,0.5:GOTO 2460
- 2510 <UNK! {0009}>G$=CHR$(G):PCOPY 3,0
- 2520 GOTO 2170
- 2530 '
- 2540 'FillArea:
- 2550 PCOPY 0,3:GOSUB 3840
- 2560 <UNK! {0009}>PRINT "Move cursor to upper left corner of area then press enter.";
- 2570 GOSUB 310
- 2580 IF K=27 THEN GOTO 2810
- 2590 <UNK! {0009}>LOCATE ROW,COL:PRINT CHR$(218)
- 2600 <UNK! {0009}>ROW1=ROW:COL1=COL
- 2610 GOSUB 3840
- 2620 <UNK! {0009}>PRINT "Move cursor to lower right corner of area then press enter.";
- 2630 GOSUB 310
- 2640 IF K=27 THEN GOTO 2810
- 2650 <UNK! {0009}>LOCATE ROW,COL:PRINT CHR$(217)
- 2660 IF ROW-1<ROW1 OR COL-1<=COL1 THEN SOUND 550,0.5:GOSUB 1460:GOTO 2550
- 2680 <UNK! {0009}>ROW2=ROW:COL2=COL
- 2690 '
- 2700 'FillColr:
- 2710 GOSUB 3840
- 2720 <UNK! {0009}>FOR I=0 TO 7:COLOR 15,I:PRINT USING "## ";I;:NEXT:COLOR 7,0
- 2730 <UNK! {0009}>LINE INPUT;" Fill color: ";ERASEC$
- 2740 <UNK! {0009}> IF ERASEC$="" THEN ERASEC=MAIN:ELSE ERASEC=VAL(ERASEC$)
- 2750 IF ERASEC>7 THEN SOUND 550,0.5:GOTO 2710
- 2760 <UNK! {0009}>COLOR 7,ERASEC
- 2770 <UNK! {0009}>FOR I=ROW1 TO ROW2:LOCATE I,COL1:PRINT STRING$(COL2-COL1+1,32);:NEXT I
- 2780 GOTO 540
- 2790 '
- 2800 'Cancel:
- 2810 PCOPY 3,0:GOTO 540
- 2820 '
- 2830 'FileWork:
- 2840 <UNK! {0009}>PCOPY 0,3
- 2850 GOSUB 3840
- 2860 <UNK! {0009}>PRINT "(S)ave or (L)oad ";
- 2870 <UNK! {0009}>K$=INPUT$(1)
- 2880 IF K$=CHR$(27) THEN GOTO 2810
- 2890 IF K$="S" OR K$="s" THEN GOTO 2940
- 2900 IF K$="L" OR K$="l" THEN GOTO 3200
- 2910 SOUND 550,0.5:GOTO 2840
- 2920 '
- 2930 'SaveScreen:
- 2940 <UNK! {0009}>FILECANCELED = 0
- 2950 GOSUB 3840
- 2960 <UNK! {0009}> IF LEN (TFILE$)>0 THEN PRINT "Use " TFILE$ " for save ? ";
- 2970 <UNK! {0009}> I$=INPUT$(1)
- 2980 IF I$="Y" OR I$="y" THEN FILE$=TFILE$:GOTO 3100
- 3010 GOSUB 3840
- 3020 <UNK! {0009}>LINE INPUT;"Save filename: ";FILE$
- 3030 IF FILE$="" THEN GOTO 2810
- 3040 IF FILE$="?" THEN GOTO 3540
- 3050 <UNK! {0009}>TFILE$=FILE$
- 3060 GOSUB 3390:ON ERROR GOTO 0
- 3070 IF FILECANCELED THEN GOTO 2810
- 3100 <UNK! {0009}>PCOPY 3,0:COLOR 7,0
- 3110 <UNK! {0009}>LOCATE 25,1:PRINT STRING$(80,32);
- 3120 <UNK! {0009}>DEF SEG = &HB800
- 3130 ON ERROR GOTO 3640
- 3140 <UNK! {0009}>BSAVE FILE$,0,&H1000
- 3150 <UNK! {0009}>ON ERROR GOTO 0
- 3160 <UNK! {0009}>UPDATED = 0
- 3170 GOTO 540
- 3180 '
- 3190 'LoadScreen:
- 3200 GOSUB 3840
- 3210 IF NOT UPDATED THEN 3250:ELSE SOUND 550,0.5
- 3220 PRINT "Screen has been edited. Continue with load? (Y/*N) ";
- 3230 I$=INPUT$(1):IF I$="N" OR I$="n" OR I$=CHR$(13) THEN GOTO 2810
- 3260 GOSUB 3840
- 3270 <UNK! {0009}>LINE INPUT;"Load filename: ";FILE$
- 3280 IF FILE$="?" THEN GOTO 3540
- 3290 IF FILE$="" THEN GOTO 2810
- 3300 GOSUB 3840
- 3310 <UNK! {0009}>PRINT "Loading ";FILE$;
- 3320 <UNK! {0009}>DEF SEG = &HB800
- 3330 ON ERROR GOTO 3640
- 3340 <UNK! {0009}>BLOAD FILE$,0:TFILE$=FILE$:UPDATED = 0
- 3350 <UNK! {0009}>ON ERROR GOTO 0
- 3360 GOTO 540
- 3370 '
- 3380 'CheckFile:
- 3390 ON ERROR GOTO 3490
- 3400 <UNK! {0009}>OPEN "i",#1,FILE$:CLOSE:SOUND 550,0.5
- 3410 GOSUB 3840
- 3420 <UNK! {0009}>PRINT FILE$ " exists, overwrite it? ";
- 3430 <UNK! {0009}>I$=INPUT$(1)
- 3440 <UNK! {0009}> IF I$="Y" OR I$="y" THEN RETURN
- 3450 <UNK! {0009}>FILECANCELED = -1
- 3460 <UNK! {0009}>RETURN
- 3470 '
- 3480 'FileNameOK:
- 3490 RESUME 3510
- 3510 <UNK! {0009}>CLOSE:RETURN
- 3520 '
- 3530 'Directory:
- 3540 ON ERROR GOTO 3640
- 3550 GOSUB 3840
- 3560 <UNK! {0009}>LINE INPUT;"Dir Mask: ";FILE$
- 3570 <UNK! {0009}>CLS:FILES FILE$
- 3580 <UNK! {0009}>ON ERROR GOTO 0
- 3590 IF K$="S" OR K$="s" THEN GOTO 3010
- 3600 IF K$="L" OR K$="l" THEN GOTO 3260
- 3610 GOTO 2810
- 3620 '
- 3630 'DirError:
- 3640 IF ERR=53 THEN ER$=FILE$+" not found. " :RESUME 3760
- 3650 IF ERR=61 THEN ER$="Disk is full. " :RESUME 3760
- 3660 IF ERR=62 OR ERR=54 THEN ER$=FILE$+" was not BSAVE'ed. ":RESUME 3760
- 3680 IF ERR=64 OR ERR=52 THEN ER$=FILE$+" <- Invalid filespec. ":RESUME 3760
- 3700 IF ERR=70 THEN ER$="Disk is write protected. " :RESUME 3760
- 3710 IF ERR=71 THEN ER$="Disk drive not responding. " :RESUME 3760
- 3720 IF ERR=76 THEN ER$=FILE$+" <- Invalid path. " :RESUME 3760
- 3730 ER$="Error #"+STR$(ERR)+" has occured. " :RESUME 3760
- 3740 '
- 3750 'ErrPrint:
- 3760 <UNK! {0009}>ON ERROR GOTO 0
- 3770 GOSUB 3840:SOUND 550,0.5
- 3780 <UNK! {0009}>PRINT ER$ "Press any key to continue.";
- 3790 <UNK! {0009}>I$=INPUT$(1)
- 3800 IF K$="S" OR K$="s" THEN GOTO 2940
- 3810 IF K$="L" OR K$="l" THEN GOTO 3260
- 3820 '
- 3830 'BlankLine:
- 3840 <UNK! {0009}>COLOR 7,0:LOCATE 25,1,0:PRINT STRING$(64,32);:LOCATE 25,1
- 3850 <UNK! {0009}>RETURN
- 3860 '
- 3870 'ProgramEnd:
- 3880 GOSUB 3840
- 3890 <UNK! {0009}>PRINT "Are sure you want to quit ? (Y/*N) ";
- 3900 <UNK! {0009}> K$=INPUT$(1)
- 3910 <UNK! {0009}> IF K$="Y" OR K$="y" THEN COLOR 7,0,0:CLS:END
- 3920 GOTO 540
-