10 REM:MODNATLOT 20 MODE7:VDU23;8202;0;0;0; 30 ON ERROR PROCerror 40 *KEY7 SAVE"NATLOT"|M 50 *KEY8 RUN|M 60 *KEY9 MODE135|M|N *FX4|M *FX200|M LIST|M 70 PROCtitle:PRINTTAB(4,4)"ƒThe Program selects random numbers,"'"ƒbetween 1 and 49, for entry as single"'"ƒ'lines' or as a set of five 'lines'."' 80 PRINTTAB(4)"ƒThe Program can also be used with"'"ƒcertain numbersEXCLUDED."' 90 PRINTTAB(0)" On this disc numbers which CAN be"'"excluded‡are:-"''" ƒThose which have appeared in the"'" ƒfirstsevenƒdraws‡OR"'" †Those which have appeared two"'" †or more times in the first"'" seven†draws." 100 PRINT:PRINTTAB(1)"‚(Select your own numbers by altering"'" ‚LINES 2220+ and/or LINES 2410+)"''TAB(12)"ƒPress any key";:A=GET:PROCbell2::CLS 110 PROCtitle:PRINTTAB(6,6)"N.B:-‡The author of this Program"'"takes absolutely no responsibility for"'"it failing to produce winning numbers!!!"' 120 FOR X=14TO15:PRINTTAB(8,X)CHR$141"ƒˆG†OƒO†D ƒL†UƒC†K":NEXT:PRINTTAB(12,22)"ƒPress any key":A=GET:PROCbell2:CLS 130 PROCtitle:FOR X=4TO5:PRINTTAB(1,X)CHR$141"Press 1 if you‚DO NOT‡want to‚EXCLUDE":NEXT:FOR X=6TO7:PRINTTAB(1,X)CHR$141"any numbers between 1 and 49.":NEXT 140 FOR X=9TO10:PRINTTAB(0,X)CHR$141"ƒPress 2 toEXCLUDEƒnumbers which have":NEXT:FOR X=11TO12:PRINTTAB(0,X)CHR$141"ƒappeared in the first7ƒdraws":NEXT 150 FOR X=14TO15:PRINTTAB(0,X)CHR$141"†Press 3 toEXCLUDE†numbers which have":NEXT:FOR X=16TO17:PRINTTAB(0,X)CHR$141"†appearedtwo or more times†in the":NEXT:FOR X=18TO19:PRINTTAB(0,X)CHR$141"†first7†draws.":NEXT 160 PRINTTAB(8,21)" Please pressˆ1ƒ2‡or†3"':PRINTTAB(7)"‚Or pressESCAPE‚toQUIT":A=GET 170 IF A=49 ex%=0:PROCbell:GOTO220 180 IF A=50 ex%=1:PROCbell:PROCbell:GOTO220 190 IF A=51 ex%=2:PROCbell:PROCbell:PROCbell:GOTO220 200 IF A=-113 PROCerror 210 IF A<>49 OR A<>50 OR A<>51 OR A<>-113 PROCbell2:FOR X=18TO19:PRINTTAB(7,X)CHR$141"ˆPlease press 1 2 or 3":NEXT 220 CLS:PROCtitle:PRINTTAB(3,4)"Press‚1‡for‚a single entry‡of 6"'"random numbers between 1 and 49"''TAB(3)"Pressƒ2‡forƒ5 entries‡of 6 random"'"numbers between 1 and 49"' 230 PRINTTAB(3)"Press„3‡for„a single entry‡of 6"'"random numbers, with two between 1 and"'"25, two between 26 and 49 and two others"'"also at random, between 1 and 49"' 240 PRINTTAB(3)"Press…4‡for…5 entries‡of 6 random"'"numbers, with two between 1 and 25, two"'"between 26 and 49 and two others, also"'"at random, between 1 and 49"' 250 PRINTTAB(3)"Press5‡toQUIT‡this Program":PRINTTAB(10,22)"Press‚1ƒ2„3…4‡or5":pick%=GET 260 IF pick%<49 OR pick%>53 PRINTTAB(8,22)"ˆPress 1 2 3 4 or 5":GOTO250 270 GOTO1000 280 END 1000 REM:MODLOTTERY ********** 1010 CLS 1020 IF pick%=49 THEN PROCbell:PROCtitle2(1) 1030 IF pick%=50 THEN PROCbell:PROCbell::PROCtitle2(2) 1040 IF pick%=51 THEN PROCbell:PROCbell:PROCbell:PROCtitle2(3) 1050 IF pick%=52 THEN PROCbell:PROCbell:PROCbell:PROCbell:PROCtitle2(4) 1060 IF pick%=53 THEN PROCbell:PROCbell:PROCbell:PROCbell:PROCbell:PROCfinish 1070 FOR X=3TO4:PRINTTAB(0,X)CHR$141"†The Computer will pick six numbers":NEXT 1080 IF pick%=49 OR pick%=50 THEN FOR X=5TO6:PRINTTAB(0,X)CHR$141"†at random.":NEXT:PROCoption 1090 IF pick%=51 OR pick%=52 THEN FOR X=3TO4:PRINTTAB(0,X)CHR$141"†The Computer will pick six numbers":NEXT 1100 IF pick%=51 OR pick%=52 THEN FOR X=5TO6:PRINTTAB(0,X)CHR$141"†at random - two between 1 and 25, two":NEXT:FOR X=7TO8:PRINTTAB(0,X)CHR$141"†between 26 and 49 and two, also at":NEXT 1110 IF pick%=51 OR pick%=52 THEN FOR X=9TO10:PRINTTAB(0,X) CHR$141"†random between 1 and 49.":NEXT:PROCoption 1120 IF pick%=51 OR pick%=52 THEN FOR X=6TO7:PRINTTAB(3,X)CHR$141"†1 to 25 26 to 49 1 to 49":NEXT:PRINTTAB(3,8)"†________ _________ _________" 1130 IF pick%=49 OR pick%=51 THEN l%=10 1140 IF pick%=50 OR pick%=52 THEN p%=2:l%=10 1150 IF pick%=50 OR pick%=52 THEN FOR more%=1 TO 5 1170 A=RND(49) 1180 IF pick%=51 AND A>25 THEN GOTO1170 1182 IF pick%=52 AND A>25 THEN GOTO1170 1190 n%=A:o%=1170 1200 IF ex%=0 GOTO1230 1210 IF ex%=1 THEN PROCmiss1:PROCmiss2 1220 IF ex%=2 THEN PROCmiss2 1230 PROCcol:PRINTTAB(2,l%)CHR$141CHR$c%;A:PRINTTAB(2,l%+1)CHR$141CHR$c%;A 1250 B=RND(49) 1260 IF pick%=51 AND B>25 THEN GOTO1250 1262 IF pick%=52 AND B>25 THEN GOTO1250 1270 n%=B:o%=1250 1280 IF B=A GOTO1250 1290 IF ex%=0 GOTO1320 1300 IF ex%=1 THEN PROCmiss1:PROCmiss2 1310 IF ex%=2 THEN PROCmiss2 1320 PROCcol:PRINTTAB(8,l%)CHR$141CHR$c%;B:PRINTTAB(8,l%+1)CHR$141CHR$c%;B 1330 C=RND(49) 1340 IF pick%=51 OR pick%=52 GOTO1350 ELSE GOTO1360 1350 IF C<26 GOTO1330 1360 IF C=A OR C=B GOTO1330 1370 n%=C:o%=1330 1380 IF ex%=0 GOTO1410 1390 IF ex%=1 THEN PROCmiss1:PROCmiss2 1400 IF ex%=2 THEN PROCmiss2 1410 PROCcol:PRINTTAB(14,l%)CHR$141CHR$c%;C:PRINTTAB(14,l%+1)CHR$141CHR$c%;C 1420 D=RND(49) 1430 IF pick%=51 OR pick%=52 GOTO1440 ELSE GOTO1450 1440 IF D<26 GOTO1420 1450 IF D=A OR D=B OR D=C GOTO1420 1460 n%=D:o%=1420 1470 IF ex%=0 GOTO1500 1480 IF ex%=1 THEN PROCmiss1:PROCmiss2 1490 IF ex%=2 THEN PROCmiss2 1500 PROCcol:PRINTTAB(21,l%)CHR$141CHR$c%;D:PRINTTAB(21,l%+1)CHR$141CHR$c%;D 1510 E=RND(49) 1520 IF E=A OR E=B OR E=C OR E=D GOTO1510 1530 n%=E:o%=1510 1540 IF ex%=0 GOTO1570 1550 IF ex%=1 THEN PROCmiss1:PROCmiss2 1560 IF ex%=2 THEN PROCmiss2 1570 PROCcol:PRINTTAB(28,l%)CHR$141CHR$c%;E:PRINTTAB(28,l%+1)CHR$141CHR$c%;E 1580 F=RND(49) 1590 IF F=A OR F=B OR F=C OR F=D OR F=E GOTO1580 1600 n%=F:o%=1580 1610 IF ex%=0 GOTO1640 1620 IF ex%=1 THEN PROCmiss1:PROCmiss2 1630 IF ex%=2 THEN PROCmiss2 1640 PROCcol:PRINTTAB(35,l%)CHR$141CHR$c%;F:PRINTTAB(35,l%+1)CHR$141CHR$c%;F 1650 IF pick%=50 OR pick%=52 THEN l%=l%+2 1660 IF pick%=50 OR pick%=52 THEN NEXT more% 1670 PROCoption1:GOTO1130 1680 END 2000 DEFPROCbell 2010 ENVELOPE 1,1,0,0,0,0,0,0,127,-4,-2,-1,126,90 2020 *FX212,0 2030 *FX213,200 2040 VDU7:FOR X=1TO250:NEXT X:ENDPROC 2050 DEFPROCbell2 2060 ENVELOPE 1,1,0,0,0,0,0,0,127,-4,-2,-1,126,90 2070 *FX212,0 2080 *FX213,50 2090 VDU7:PROCstopbell:ENDPROC 2100 DEFPROCstopbell 2110 *FX212,144 2120 *FX213,101 2130 ENDPROC 2140 DEFPROCcol 2150 IF n%>0 AND n%<11 c%=135 2160 IF n%>10 AND n%<21 c%=132 2170 IF n%>20 AND n%<31 c%=129 2180 IF n%>30 AND n%<41 c%=130 2190 IF n%>40 AND n%<50 c%=131 2200 ENDPROC 2210 DEFPROCmiss1:REM:DIVAlterMODORDIVdelete MODLINES betweenDIV2220MODandDIV2370MODfor MODnumbers you wish toDIVEXCLUDEMODfrom MODthe random numbersOFF(These have DIVNOTOFFappeared in the first 7 draws) 2220 IF n%=1 GOTO o% 2230 IF n%=4 GOTO o% 2240 IF n%=7 GOTO o% 2250 IF n%=8 GOTO o% 2260 IF n%=18 GOTO o% 2270 IF n%=19 GOTO o% 2280 IF n%=20 GOTO o% 2290 IF n%=23 GOTO o% 2300 IF n%=24 GOTO o% 2310 IF n%=25 GOTO o% 2320 IF n%=33 GOTO o% 2330 IF n%=34 GOTO o% 2340 IF n%=41 GOTO o% 2350 IF n%=45 GOTO o% 2360 IF n%=46 GOTO o% 2370 IF n%=48 GOTO o% 2380 *FX15 2390 ENDPROC 2400 DEFPROCmiss2:REM:DIVAlterMODORDIVdelete MODLINES betweenDIV2410MODandDIV2510MODfor MODnumbers you wish toDIVEXCLUDEMODfrom MODthe random numbersOFF(These have OFFappeared two or more times in the first 7 draws) 2410 IF n%=3 GOTO o% 2420 IF n%=5 GOTO o% 2430 IF n%=6 GOTO o% 2440 IF n%=9 GOTO o% 2450 IF n%=14 GOTO o% 2460 IF n%=16 GOTO o% 2470 IF n%=17 GOTO o% 2480 IF n%=30 GOTO o% 2490 IF n%=31 GOTO o% 2500 IF n%=38 GOTO o% 2510 IF n%=44 GOTO o% 2520 *FX15 2530 ENDPROC 2540 DEFPROCerror 2550 IF -113 VDU22,7:PROCbell2:PROCfinish 2560 VDU22,7:REPORT:PRINT" at line ";ERL:STOP 2570 ENDPROC 2580 DEFPROCoption:PRINTTAB(12,20)"ƒPress any key":PRINTTAB(0,22)"PressQ‡toQUIT‡and return to Main Menu":A=GET:PROCbell2 2590 IF A=81 OR A=113 CLS:GOTO130 2600 FOR X=3TO23:PRINTTAB(0,X)SPC(40);:NEXT X:ENDPROC 2610 DEFPROCoption1:PRINTTAB(5,21)"ƒPress any key for another try":PRINTTAB(0,23)"PressQ‡toQUIT‡and return to Main Menu":A=GET:PROCbell2 2620 IF A=81 OR A=113 CLS:GOTO130 2630 FOR X=10TO23:PRINTTAB(0,X)SPC(40);:NEXT X:ENDPROC 2640 DEFPROCtitle:PRINTTAB(7,1)CHR$141"†LOTTERY NUMBERS SELECTOR"TAB(7)CHR$141"ƒLOTTERY NUMBERS SELECTOR":ENDPROC 2650 DEFPROCtitle2(XX):PRINTTAB(5,1)CHR$141"†LOTTERY NUMBERS SELECTOR ";XX:PRINTTAB(5,2)CHR$141"ƒLOTTERY NUMBERS SELECTOR ";XX:ENDPROC 2660 DEFPROCfinish:CLS:FOR X=3TO4:PRINTTAB(0,X)CHR$141"ƒO.K. GOODBYE":NEXT:FOR X=7TO8:PRINTTAB(0,X)CHR$141"‚Thank you for using this Program":NEXT:FOR X=10TO11:PRINTTAB(0,X)CHR$141"†I hope the numbers it has selected for":NEXT 2670 FOR X=13TO14:PRINTTAB(0,X)CHR$141"†you will be very lucky and that you":NEXT:FOR X=16TO17:PRINTTAB(0,X)CHR$141"†win a lot of money !!!":NEXT:PRINTTAB(12,23)"ˆ‚Press any key":A=GET:PROCbell2 2680 PROCstopbell 2690 CLS 2700 *BASIC 2710 END