8-Bit Software Online Conversion
Not a Lot. Game - Listing
10REM" NOTaLOT
20REM John Davis -'97.
30MODE7
40VDU23,1,0;0;0;0;
50DIML$(6,6):DIMCX%(6):DIMCY%(6)
60DIMC%(49):DIMD%(7)
70CL$=CHR$(136):CR$=CHR$(137):CU$=CHR
$(139):CD$=CHR$(138)
80FP=0
90NL$=" * N O T a L O T *"
100LIN$=CHR$(148)+STRING$(39,"p")
110LIN2$=CHR$(148)+STRING$(38,"|")
120ONERRORFER%=0:GOTO2740
130PRINTNL$
140PRINTTAB(0,24)" * SHIFT to Scro
ll; ESC for options";
150FORN%=1TO23:PRINTTAB(0,N%)" ":NEXT
160VDU28,1,22,39,1
170IFFP=1VDU15ELSEVDU14
180IFFP=1FP=0:VDU2
190*TYPE NL/INFO
200VDU3
210VDU23,1,0;0;0;0;
220VDU26
230PRINTTAB(0,24)" "SPC36;
240G$=GET$
250IFG$=" "GOTO290
260IFG$="I"CLS:GOTO120
270IFG$="P"FP=1:CLS:GOTO120
280GOTO240
290VDU15:VDU26
300*FX4,1
310PROCting:TNG=7
320FL%=136
330ONERRORFER%=1:GOTO2740
340£%=50:££%=50:GM%=0
350CLS
360FORN%=0TO6
370CX%(N%)=-1:CY%(N%)=-1
380NEXT
390X%=3:Y%=3:LC%=7:FM%=0
400PROClottery:PROClotarray
410PRINTNL$
420FORN%=0TO48
430IFN%<9 A$=" " ELSE A$=" "
440PRINTTAB((N%MOD7)*3+1,(N%DIV7)*2+2)
;A$;N%+1
450NEXT
460FORN%=0TO12STEP2
470PRINTTAB(0,N%+3);CHR$(147)
480PRINTTAB(22,N%+3)" "
490PRINTTAB(X%*3+2,N%+3);"££"
500NEXT
510PRINTTAB(27,2)" CURSORS Move";
520PRINTTAB(27,3)" COPY= Switch";
530PRINTTAB(27,4)" RTRN= Select";
540PRINTTAB(27,6)" F= Flash"
550PRINTTAB(27,7)" T= Ting"
560PRINTTAB(27,9)" Colours:"
570PRINTTAB(27,10)" RED=Found"
580PRINTTAB(27,11)" MAGENTA="
590PRINTTAB(27,12)" Bonus Found"
600PRINTTAB(27,13)" DARK BLUE="
610PRINTTAB(27,14)" None Next"
620PRINTTAB(27,15)" GREEN=One or";
630PRINTTAB(27,16)" More Next"
640FL%=ABS(FL%-273):PROCflash
650TNG=ABS(TNG-7):PROCtingon
660PRINTTAB(0,17)LIN$;
670PRINTTAB(0,19)" Money remaining: £"
;£%;" Games won: ";GM%
680PRINTTAB(0,20)" "STRING$(39,CHR$255
)
690REM" **
700G$=GET$
710IFG$=CHR$(135)FORN%=3TO15STEP2:PRIN
TTAB(X%*3+2,N%);" ":NEXT:U%=X%:V%=3:GOT
O1100
720IFG$=CU$ORG$=CD$FORN%=3TO15STEP2:PR
INTTAB(X%*3+2,N%);" ":NEXT:Y%=2:G$=CD$:
GOTO840
730IFG$=CL$U%=(X%-1)MOD7+(7ANDX%=0):GO
TO910
740IFG$=CR$U%=(X%+1)MOD7:GOTO910
750IFG$<>CHR$(13)ELSEPROCcolumn:IFLC%>
0AND£%>-1ELSEIFLC%=0GOTO350ELSE340
760IFG$="F"PROCflash
770IFG$="T"PROCtingon
780IFG$="="PRINTTAB(0,20):FORN=0TO6:PR
INT;D%(N);" ";:NEXT
790GOTO700
800REM" **
810G$=GET$
820IFG$=CHR$(135)PRINTTAB(2,Y%*2+3)SPC
(20):U%=3:V%=Y%:GOTO1100
830IFG$=CL$ORG$=CR$PRINTTAB(2,Y%*2+3)S
PC(20):X%=2:G$=CR$:GOTO730
840IFG$=CU$V%=(Y%-1)MOD7+(7ANDY%=0):GO
TO970
850IFG$=CD$V%=(Y%+1)MOD7:GOTO970
860REMIFG$=CHR$(13)PROCrow:IFLC%=0GOTO
350
870IFG$<>CHR$(13)ELSEPROCrow:IFLC%>0AN
D£%>-1ELSEIFLC%=0GOTO350ELSE340
880IFG$="F"PROCflash
890GOTO810
900REM" **
910FORN%=0TO12STEP2
920PRINTTAB(X%*3+2,N%+3);" "
930PRINTTAB(U%*3+2,N%+3);"££"
940NEXT
950X%=U%
960GOTO700
970PRINTTAB(2,Y%*2+3)SPC(20)
980PRINTTAB(2,V%*2+3)"££ ££ ££ ££ ££ £
£ ££"
990Y%=V%
1000GOTO810
1010REM" Single cursor
1020G$=GET$
1030IFG$=CHR$(135)U%=X%:GOTO910
1040IFG$=CHR$(135)PRINTTAB(X%*3+2,Y%*2+
3)" ":X%=2:G$=CR$:GOTO730
1050IFG$=CL$U%=(X%-1)MOD7+(7ANDX%=0)
1060IFG$=CR$U%=(X%+1)MOD7
1070IFG$=CU$V%=(Y%-1)MOD7+(7ANDY%=0)
1080IFG$=CD$V%=(Y%+1)MOD7
1090PRINTTAB(X%*3+2,Y%*2+3)" "
1100PRINTTAB(U%*3+2,V%*2+3)"££"
1110X%=U%:Y%=V%
1120IFG$="F"PROCflash
1130IFG$<>CHR$(13)THEN1020
1140 L$=L$(X%,Y%):FF%=3
1150 IFL$="F"ORL$="FB"ORL$="E"GOTO1020
1160 IFL$="X"ORL$="C"PRINTTAB(X%*3+1,Y
%*2+2)" ":L$(X%,Y%)="F":LC%=LC%-1:FF%=0:
VDUTNG:GOTO1200
1170 IFL$="XB"ORL$="CB"PRINTTAB(X%*3+1
,Y%*2+2)" ":L$(X%,Y%)="FB":LC%=LC%-1:FF%
=1:VDUTNG:VDUTNG:GOTO1200
1180L$(X%,Y%)="E"
1190PROCadj
1200PROCmoney
1210IFLC%=0GOTO350
1220IF£%<0GOTO340
1230GOTO1020
1240" **
1250DEFPROClottery
1260F%=0
1270D%(0)=RND(49)
1280FORN%=0TO5
1290Z%=RND(49)
1300FORM%=0TON%
1310IFZ%=D%(M%) F%=1:M%=N%
1320NEXT
1330IF F%=1 F%=0:GOTO1290
1340D%(M%)=Z%
1350NEXT
1360ENDPROC
1370" **
1380DEFPROClotarray
1390FORM%=0TO6:FORN%=0TO6
1400L$(M%,N%)="0"
1410NEXT:NEXT
1420FORN%=0TO5
1430K%=D%(N%)-1
1440L$(K%MOD7,K%DIV7)="X"
1450NEXT
1460L$((D%(6)-1)MOD7,(D%(6)-1)DIV7)="XB
"
1470ENDPROC
1480" **
1490DEFPROCcolumn
1500IFCX%(X%)<>-1ENDPROC
1510C%=0:FF%=7
1520FORN%=0TO6
1530L$=L$(X%,N%)
1540IFL$<>"0"ANDL$<>"E"C%=C%+1
1550IFL$="X"L$(X%,N%)="C":GOTO1670
1560IFL$="XB"L$(X%,N%)="CB":FM%=1:GOTO1
670
1570IFL$="C"ELSE1620
1580 L$(X%,N%)="F"
1590 PRINTTAB(X%*3+1,N%*2+2)" "
1600 IFFF%<>1FF%=0
1610 LC%=LC%-1:VDUTNG
1620IFL$="CB"ELSE1670
1630 L$(X%,N%)="FB"
1640 PRINTTAB(X%*3+1,N%*2+2)" "
1650 FF%=1:FM%=1:VDUTNG:VDUTNG
1660 LC%=LC%-1
1670NEXT
1680CX%(X%)=C%
1690IFFM%=0PRINTTAB(X%*3+2,16);" ";C%EL
SEFM%=0:PRINTTAB(X%*3+2,16);" ";C%
1700PROCmoney
1710ENDPROC
1720" **
1730DEFPROCrow
1740IFCY%(Y%)<>-1ENDPROC
1750C%=0:FF%=7
1760FORN%=0TO6
1770L$=L$(N%,Y%)
1780IFL$<>"0"ANDL$<>"E"C%=C%+1
1790IFL$="X"L$(N%,Y%)="C":GOTO1910
1800IFL$="XB"L$(N%,Y%)="CB":FM%=1:GOTO1
910
1810IFL$="C"ELSE1860
1820 L$(N%,Y%)="F"
1830 PRINTTAB(N%*3+1,Y%*2+2)" "
1840 IFFF%<>1FF%=0
1850 LC%=LC%-1:VDUTNG
1860IFL$="CB"ELSE1910
1870 L$(N%,Y%)="FB"
1880 PRINTTAB(N%*3+1,Y%*2+2)" "
1890 FF%=1:FM%=1:VDUTNG:VDUTNG
1900 LC%=LC%-1
1910NEXT
1920CY%(Y%)=C%
1930IFFM%=0PRINTTAB(23,Y%*2+2);" ";C%EL
SEFM%=0:PRINTTAB(23,Y%*2+2);" ";C%
1940PROCmoney
1950ENDPROC
1960" **
1970DEFPROCmoney
1980IFFF%<2ELSE2090
1990 PRINTTAB(6,20)" No charge: "
2000 FORD=1TO3000:NEXT
2010 PRINTTAB(6,20)STRING$(13,CHR$255)
2020 IFFF%=0THEN2070
2030 IF£%>25BN%=25ELSEBN%=£%
2040 £%=£%+BN%
2050 PRINTTAB(19,19);£%;" "
2060 PRINTTAB(10,20)" BONUS= £";BN%;"
":FORD=1TO3000:NEXT:PRINTTAB(10,20)STRIN
G$(12,CHR$255)
2070 IFLC%=0PROCwin
2080 ENDPROC
2090£%=£%-FF%
2100PRINTTAB(19,19);£%;" "
2110IF£%<0PROClose
2120ENDPROC
2130" **
2140DEFPROCwin
2150££%=££%-2:£T=£%+££%:GM%=GM%+1
2160IF£T>75£T=75
2170VDUTNG:VDUTNG
2180PRINTTAB(0,21)" Well done! You've w
on."
2190PRINT" Press SPACE for next game, w
ith a new kitty of £";££%;" + £";£
%;" =";
2200IF£T<75PRINT" £";£T ELSEPRINT" £";£
T;" (Max)"
2210PRINTTAB(0,24)LIN2$;
2220£%=££%+£%
2230G=GET
2240ENDPROC
2250" **
2260DEFPROClose
2270PRINTTAB(0,21)" Bad luck. You've lo
st."
2280PRINT" Press SPACE to see numbers m
issed."
2290PRINTTAB(0,23)LIN2$;
2300G=GET
2310FORM%=0TO6
2320FORN%=0TO6
2330L$=L$(N%,M%)
2340IFL$="X"ORL$="C"PRINTTAB(N%*3+1,M%*
2+2)" "
2350IFL$="XB"ORL$="CB"PRINTTAB(N%*3+1,M
%*2+2)" "
2360NEXT:NEXT
2370PRINTTAB(0,21)" Press: SPACE for ne
w game."
2380PRINT" ESC for options.
"
2390G$=GET$:IFG$=" "ELSE2390
2400ENDPROC
2410" **
2420DEFPROCflash
2430FL%=ABS(FL%-273)
2440FORN%=3TO15STEP2
2450PRINTTAB(1,N%)CHR$(FL%)
2460NEXT
2470IFFL%=136PRINTTAB(36,6)" On ";ELSEP
RINTTAB(36,6)" Off";
2480ENDPROC
2490" **
2500DEFPROCadj
2510ADJ%=0
2520IFX%>0A%=X%-1ELSE2540
2530IFL$(A%,Y%)<>"0"ANDL$(A%,Y%)<>"E"AD
J%=ADJ%+1
2540IFX%<6A%=X%+1ELSE2560
2550IFL$(A%,Y%)<>"0"ANDL$(A%,Y%)<>"E"AD
J%=ADJ%+1
2560IFY%>0A%=Y%-1ELSE2580
2570IFL$(X%,A%)<>"0"ANDL$(X%,A%)<>"E"AD
J%=ADJ%+1
2580IFY%<6A%=Y%+1ELSE2600
2590IFL$(X%,A%)<>"0"ANDL$(X%,A%)<>"E"AD
J%=ADJ%+1
2600IFADJ%>0PRINTTAB(X%*3+1,Y%*2+2)" "E
LSEPRINTTAB(X%*3+1,Y%*2+2)" "
2610ENDPROC
2620" **
2630DEFPROCting
2640ENVELOPE1,1,0,0,0,0,0,0,127,-4,-2,-
1,126,90
2650*FX212,0
2660*FX213,170
2670ENDPROC
2680" **
2690DEFPROCtingon
2700TNG=ABS(TNG-7)
2710IFTNG=7PRINTTAB(35,7)" On ";ELSEPRI
NTTAB(35,7)" Off";
2720ENDPROC
2730" Error:
2740ONERRORGOTO2760
2750GOTO2800
2760 *FX4,0
2770 CLS:PRINTNL$
2780 PRINT:VDU23,1,1;0;0;0;
2790 END
2800VDU26:CLS:PRINTNL$
2810PRINT'" Press: SPACE for game."
2820PRINT" I for Info."
2830PRINT" P to Print info."
2840PRINT" ESC to Escape."
2850PRINT'LIN$
2860G$=GET$
2870IFG$<>" "ELSEIFFER%=0GOTO290ELSE330
2880IFG$="I"CLS:GOTO120
2890IFG$="P"FP=1:CLS:GOTO120
2900GOTO2860