10REM: EleMenu
20*FX18
30*KEY0 CLS|M LIST 2720,2820|M A=GET
:GOTO140|M
40*KEY1 ?&FE4E=&7F:CALL!-4|M|N
50*KEY7 MODE135|M|N *FX4|M *FX200|M L
ISTO 1|M LIST|M|N
60*KEY8 RUN|M
70*KEY9 MODE135|M|N *FX4|M *FX200|M L
ISTO 1|M LIST|M|N
80VDU14
90MODE7:VDU23;8202;0;0;0;
100PROCbasicinfo
110PROCmenu
120END
130REM: *****
140CLS:PRINTTAB(0,0)" Week"TAB(8,0)" N
ormal"TAB(17,0)" Units"TAB(25,0)" Low"TA
B(33,0)" Units"TAB(0,1)STRING$(40,"-")TA
B(0,19)STRING$(40,"-")
150PRINTTAB(0,18)" Previous"
160X=1:Y=17
170PRINTTAB(3,Y);X:Y=Y-1:X=X+1
180IF Y=8 THEN GOTO 190 ELSE GOTO 170
190 X=10:Y=8
200IF Y<9 THEN PRINTTAB(2,Y);X:Y=Y-1:X
=X+1
210IF Y=1 THEN GOTO 220 ELSE GOTO200
220F=OPENOUT("ELECT")
230w%=0:Y=18
240IF w%=0 THEN PRINTTAB(0,18)" Previo
us"
250PRINTTAB(1,20)"Enter Previous Norma
l Reading as shown"TAB(1,21)" on you
r last Electricity Bill":PROCbeep:INPUT;
" ";normreadw%
260PRINTTAB(1,23)" Is that correct? Y/
N":A=GET:PROCclear2
270IF A=89 OR A=121 THEN PROCclear2:GO
TO300
280IF A=78 OR A=110 THEN PROCclear2:GO
TO 250
290PROCrasp:PROCclear:FOR X=1 TO 2000:
NEXT X:GOTO 250
300PROCnormunits:PROCclear:PROCnorre:P
ROCnorun
310PRINTTAB(1,20)"Enter Previous Low R
eading as shown on"TAB(1,21)" you
r last Electricity Bill":PROCbeep:INPUT;
" ";lowreadw%
320PRINTTAB(1,23)" Is that correct? Y/
N":A=GET:PROCclear2
330IF A=89 OR A=121 THEN PROCclear2:GO
TO 360
340IF A=78 OR A=110 THEN PROCclear2:GO
TO 310
350PROCrasp:PROCclear:FOR X=1 TO 2000:
NEXT X:GOTO 250
360 PROClowunits:PROCclear:PROClowre:P
ROClowun
370PROCclear:PRINTTAB(3,20)CHR$141" Pl
ease W A I T a few seconds"TAB(3)CHR$1
41" Please W A I T a few seconds":PROC
pause
380PRINT#F,w%,normreadw%,normunitsw%,l
owreadw%,lowunitsw%
390PROCclear2:PRINTTAB(4,20)CHR$141"Fi
le ELECT is now being CREATED"TAB(4,21)C
HR$141"File ELECT is now being CREATED":
PROCpause
400CLOSE#F
410PROCpause:RUN
420REM: *****
430ON ERROR GOTO 870
440CLS:PRINTTAB(0,0)" Week"TAB(8,0)" N
ormal"TAB(17,0)" Units"TAB(25,0)" Low"TA
B(33,0)" Units"TAB(0,1)STRING$(40,"-")TA
B(0,19)STRING$(40,"-")
450PRINTTAB(0,18)" Previous"
460X=1:Y=17
470PRINTTAB(3,Y);X:Y=Y-1:X=X+1
480IF Y=8 THEN GOTO 490 ELSE GOTO 470
490X=10:Y=8
500IF Y<9 THEN PRINTTAB(2,Y);X:Y=Y-1:X
=X+1
510IF Y=1 THEN GOTO 520 ELSE GOTO500
520F=OPENUP("ELECT")
530w%=0:Y=18
540REPEAT
550INPUT#F,w%,normreadw%,normunitsw%,l
owreadw%,lowunitsw%
560IF w%=0 THEN PROCclear:PRINTTAB(0,Y
)" Previous":PROCnorre:PROCnorun:PROClow
re:PROClowun:PROCnormunits:PROClowunits
570IF w%>0 AND w%<10 THEN PROCclear:PR
INTTAB(3,Y);w%;:PROCnorre:PROCnorun:PROC
lowre:PROClowun:PROCnormunits:PROClowuni
ts
580IF w%>9 AND w%<17 THEN PROCclear:PR
INTTAB(2,Y);w%:PROCnorre:PROCnorun:PROCl
owre:PROClowun:PROCnormunits:PROClowunit
s
590w%=w%+1:Y=Y-1
600UNTIL EOF#F
610ON ERROR GOTO 870
620REPEAT
630PRINTTAB(0,18)" Previous"
640IF w%>0 AND w%<10 THEN GOTO660
650IF w%>9 AND w%<17 THEN GOTO710
660IF w%>0 AND w%<10 THEN PRINTTAB(2,Y
);" ";w%;" "
670IF w%>0 AND w%<10 THEN PRINTTAB(2,2
0)"Enter Normal Reading for week ";w%:PR
OCbeep:INPUT;" ";normreadw%:PRINTTAB(1,
22)" Is that correct? Y/N":A=GET:PROCcle
ar2
680IF A=89 OR A=121 THEN PROCclear2:GO
TO 740
690IF A=78 OR A=110 THEN PROCclear2:GO
TO 670
700PROCclear:GOTO 670
710IF w%>9 AND w%<17 THEN PRINTTAB(1,Y
);" ";w%;" "
720IF w%>9 AND w%<17 THEN PRINTTAB(2,2
0)"Enter Normal Reading for week ";w%:PR
OCbeep:INPUT;" ";normreadw%
730IF w%>9 AND w%<17 THEN PRINTTAB(1,Y
);" ";w%;
732 IF w%>9 AND w%<17 THEN PRINTTAB(1,
22)" Is that correct? Y/N ":A=GET:PROCcl
ear2
734 IF A=89 OR A=121 THEN PROCclear2:G
OTO 740
736 IF A=78 OR A=110 THEN PROCclear2:G
OTO720
740PROCnormunits:PROCclear:PROCnorre:P
ROCnorun
750PRINTTAB(2,20)"Enter Low Reading fo
r week ";w%:PROCbeep:INPUT;" ";lowreadw
%
760PRINTTAB(1,22)" Is that correct? Y/
N":A=GET:PROCclear2
770IF A=89 OR A=121 THEN PROCclear2:GO
TO 800
780IF A=78 OR A=110 THEN PROCclear2:GO
TO 750
790PROCclear:GOTO 750
800IF w%>0 AND w%<10 THEN PROClowunits
:PROCclear:PROClowre:PROClowun:PRINTTAB(
2,Y);" ";w%
810IF w%>9 AND w%<17 THEN PROClowunits
:PROCclear:PROClowre:PROClowun:PRINTTAB(
1,Y);" ";w%
820PROCclear2:PRINTTAB(3,20)CHR$141" P
lease W A I T a few seconds"TAB(3,21)C
HR$141" Please W A I T a few seconds":
PROCpause
830PRINT#F,w%,normreadw%,normunitsw%,l
owreadw%,lowunitsw%
840 IF w%>15 THEN PROCclear2:PRINTTAB(
0,20)" Press ESCAPE to SAVE readings to
week ":PRINTTAB(0,21);" ";w%:PROCting:A=
GET:PROCclear2:PROCwait:PROCpause:CLOSE#
F:RUN
850 IF w%<16 THEN PROCclear2:PRINTTAB(
0,20)" Press ESCAPE to SAVE readings to
week ":PRINTTAB(0,21);" ";w%;" OR any ot
her key to enter readings":PRINTTAB(14,2
2)"for week ";w%+1:w%=w%+1:Y=Y-1:PROCtin
g:A=GET:PROCclear2
860UNTIL FALSE
870IF ERR=17 THEN PROCclear2:PRINTTAB(
3,20)CHR$141" Please W A I T a few sec
onds"TAB(3,21)CHR$141" Please W A I T
a few seconds":PROCpause
880IF ERR<>17 THEN CLS:REPORT:PRINT" a
t line ";ERL:STOP
890CLOSE#F
900PROCclear2:PRINTTAB(3,20)CHR$141" F
ile ELECT has been SAVED O.K."TAB(3,21)C
HR$141" File ELECT has been SAVED O.K.":
PROCpause:RUN
910REM: *****
920CLS:PRINTTAB(0,0)" Week"TAB(8,0)" N
ormal"TAB(17,0)" Units"TAB(25,0)" Low"TA
B(33,0)" Units"TAB(0,1)STRING$(40,"-")TA
B(0,19)STRING$(40,"-")
930PRINTTAB(0,18)" Previous"
940X=1:Y=17
950PRINTTAB(3,Y);X:Y=Y-1:X=X+1
960IF Y=8 THEN GOTO 970 ELSE GOTO 950
970X=10:Y=8
980IF Y<9 THEN PRINTTAB(2,Y);X:Y=Y-1:X
=X+1
990IF Y=1 THEN GOTO 1000 ELSE GOTO980
1000F=OPENIN("ELECT")
1010w%=0:Y=18
1020REPEAT
1030INPUT#F,w%,normreadw%,normunitsw%,l
owreadw%,lowunitsw%
1040IF w%=0 THEN PRINTTAB(0,18)" Previo
us":PROCnormunits:PROCnorre:PROCnorun
1050IF w%>0 AND w%<10 THEN PROCnormunit
s:PRINTTAB(3,Y);w%;:PROCnorre:PROCnorun
1060IF w%>9 AND w%<18 THEN PROCnormunit
s:PRINTTAB(2,Y);w%:PROCnorre:PROCnorun
1070PROClowunits:PROClowre:PROClowun
1080w%=w%+1:Y=Y-1
1090UNTIL EOF#F
1100CLOSE#F
1110IF w%=0 THEN PROCclear:PRINTTAB(0,2
0)CHR$141CHR$135CHR$157CHR$132"Press a k
ey for Electricity Menu "CHR$156TAB(0,2
1)CHR$141CHR$135CHR$157CHR$132"Press a k
ey for Electricity Menu "CHR$156:PROCti
ng:A=GET:RUN
1120PROCclear:PRINTTAB(1,20)CHR$141CHR$
135CHR$157CHR$132"Press a key for Cost t
o week ";w%-1;" "CHR$156TAB(1,21)CHR$14
1CHR$135CHR$157CHR$132"Press a key for C
ost to week ";w%-1;" "CHR$156:PROCting:
A=GET:CLS
1130PRINTTAB(0,2)CHR$141CHR$135CHR$157C
HR$132"COST OF ELECTRICITY TO WEEK ";w%-
1;" "CHR$156:PRINTTAB(0,3)CHR$141CHR$
135CHR$157CHR$132"COST OF ELECTRICITY TO
WEEK ";w%-1;" "CHR$156
1140Total1=normreadw%-normA
1150PROCclear:PRINTTAB(0,6);" ";Total1;
" Normal Units @ .0";normalunitcost;" ="
:@%=&020208:Total2=Total1*normalunitcost
/10000:PRINTTAB(29,6);" £":PROCtot2:@%=1
0
1160Total3=lowreadw%-lowA
1170PRINTTAB(0,9);" ";Total3;" Low Unit
s @ .0";lowunitcost;" =":@%=&020208:Tota
l4=Total3*lowunitcost/1000:PRINTTAB(29,9
);" £":PROCtot4:@%=10
1180Total5=standingcharge/100
1190PRINTTAB(0,12)" Plus Standing Charg
e of ":PRINTTAB(30,12);"£":@%=&020208:PR
INTTAB(31,12):PROCtot5:@%=10
1200Total6=(Total2+Total4+Total5)/100*8
1210PRINTTAB(0,15)" Plus VAT @ 8% = ":P
RINTTAB(30,15);"£":@%=&020208:PRINTTAB(3
1,15):PROCtot6:@%=10
1220Total7=(Total2+Total4+Total5+Total6
)
1230PRINTTAB(0,18)" Total cost of Elect
ricity =":@%=&020208:PROCtot7:@%=10
1240PRINTTAB(0,21)CHR$141CHR$135CHR$157
CHR$132"Press any key for Electricty Men
u "CHR$156TAB(0,22)CHR$141CHR$135CHR$15
7CHR$132"Press any key for Electricty Me
nu "CHR$156:PROCting:A=GET:RUN
1250REM: *****
1260DEFPROCmenu
1270PROCbasicinfo:CLS:PROCtitle1
1280PRINTTAB(10,2)CHR$135CHR$157CHR$132
"Electricity Menu "CHR$156
1290PRINTTAB(0,4)CHR$141" Press 1 if us
ing this Program for the"TAB(0,5)CHR$141
" Press 1 if using this Program for the"
TAB(0,6)CHR$141" first time in a 13+ wee
k period"TAB(0,7)CHR$141" first time in
a 13+ week period"
1300PRINTTAB(0,8)CHR$141" Press 2 to en
ter readings"TAB(0,9)CHR$141" Press 2 to
enter readings"
1310PRINTTAB(0,10)CHR$141" Press 3 to s
ee readings entered to"TAB(0,11)CHR$141"
Press 3 to see readings entered to"TAB(
0,12)CHR$141" date - and total cost of e
lectricity"TAB(0,13)CHR$141" date - and
total cost of electricity"
1320PRINTTAB(0,14)CHR$141" Press 4 for
GAS Program"TAB(0,15)CHR$141" Press 4 fo
r GAS Program"
1330PRINTTAB(0,16)CHR$141" Press 5 for
SOUND On or OFF"TAB(0,17)CHR$141" Press
5 for SOUND On or OFF"
1340PRINTTAB(0,18)CHR$141" Press 6 for
Instructions"TAB(0,19)CHR$141" Press 6 f
or Instructions"
1350PRINTTAB(0,20)CHR$141" Press 7 to Q
UIT Program"TAB(0,21)CHR$141" Press 7 to
QUIT Program"
1360PRINTTAB(6,23)CHR$135CHR$157CHR$132
"Press 1 2 3 4 5 6 or 7 "CHR$156:PROCti
ng:A=GET
1370IF A<49 OR A>55 THEN PRINTTAB(6,23)
CHR$132CHR$157CHR$135"Press 1 2 3 4 5 6
or 7 "CHR$156:PROCrasp:PROCpause:GOTO13
60
1380IF A=49 THEN GOTO1470
1390IF A=50 THEN GOTO430
1400IF A=51 THEN GOTO920
1410IF A=52 THEN CHAIN"GasMenu"
1420IF A=53 THEN CHAIN"Sound"
1430IF A=54 THEN CHAIN"Instruc"
1440IF A=55 THEN CHAIN"Quit"
1450ENDPROC
1460END
1470REM: *****
1480CLS:PRINTTAB(1,1)CHR$141"Did you pr
ess 1 by mistake? Y or N?"TAB(1,2)CHR$14
1"Did you press 1 by mistake? Y or N?"TA
B(10,3)" -------------------"
1490PRINTTAB(0,6)" If you press Y (for
YES) then you will"TAB(0,7)" be returned
to the Menu and can select"
1500PRINTTAB(0,8)" another number/choic
e"
1510PRINTTAB(0,12)" If you press N (for
NO) you will WIPE"TAB(0,13)" OUT ALL PR
EVIOUS READINGS and will"TAB(0,14)" then
be able to enter new readings for"TAB(0
,15)" a new 13+ week period."
1520PRINTTAB(11,21)CHR$141" Press Y or
N"TAB(11,22)CHR$141" Press Y or N":PROCt
ing:A=GET
1530IF A=78 OR A=110 THEN CLS:GOTO1550
1540IF A=89 OR A=121 THEN RUN
1550PROCtitle1:PRINTTAB(4,6)"As this is
the first time you are"TAB(0,7)"using t
his Program, it is ESSENTIAL that"TAB(0,
8)"you should first confirm/amend certai
n"TAB(0,9)"basic data on the next page."
1560PRINTTAB(4,11)"(All these figures a
ppear on your"TAB(0,12)"last Gas Bill, a
nd should be carefully"TAB(0,13)"checked
.)"
1570PRINTTAB(5,22)CHR$135CHR$157CHR$132
"Press any key to continue "CHR$156:PRO
Cting:A=GET
1580*FX138,0,128
1590END
1600DEFPROCnorre
1610IF normreadw%<10 THEN PRINTTAB(13,Y
);" ";normreadw%:ENDPROC
1620IF normreadw%>9 AND normreadw%<100
THEN PRINTTAB(12,Y);" ";normreadw%:ENDPR
OC
1630IF normreadw%>99 AND normreadw%<100
0 THEN PRINTTAB(11,Y);" ";normreadw%:END
PROC
1640IF normreadw%>999 AND normreadw%<10
000 THEN PRINTTAB(10,Y);" ";normreadw%:E
NDPROC
1650IF normreadw%>9999 AND normreadw%<1
00000 THEN PRINTTAB(9,Y);" ";normreadw%:
ENDPROC
1660ENDPROC
1670IF INT Total7>9999 AND INT Total7<1
00000 THEN @%=&020208:PRINTTAB(27,18)"=
£ ";Total7:@%=&10:ENDPROC
1680ENDPROC
1690REM: *****
1700DEFPROCnorun
1710IF normunitsw%<10 THEN PRINTTAB(21,
Y);" ";normunitsw%:ENDPROC
1720IF normunitsw%>9 AND normunitsw%<10
0 THEN PRINTTAB(20,Y);" ";normunitsw%:EN
DPROC
1730IF normunitsw%>99 AND normunitsw%<1
000 THEN PRINTTAB(19,Y);" ";normunitsw%:
ENDPROC
1740IF normunitsw%>999 AND normunitsw%<
10000 THEN PRINTTAB(18,Y);" ";normunitsw
%:ENDPROC
1750IF normunitsw%>9999 AND normunitsw%
<100000 THEN PRINTTAB(17,Y);" ";normunit
sw%:ENDPROC
1760REM: *****
1770DEFPROCnormunits
1780IF w%=0 THEN normA=normreadw%:normu
nitsw%=0:ENDPROC
1790IF w%=1 THEN normB=normreadw%:normu
nitsw%=normB-normA:ENDPROC
1800IF w%=2 THEN normC=normreadw%:normu
nitsw%=normC-normB:ENDPROC
1810IF w%=3 THEN normD=normreadw%:normu
nitsw%=normD-normC:ENDPROC
1820IF w%=4 THEN normE=normreadw%:normu
nitsw%=normE-normD:ENDPROC
1830IF w%=5 THEN normF=normreadw%:normu
nitsw%=normF-normE:ENDPROC
1840IF w%=6 THEN normG=normreadw%:normu
nitsw%=normG-normF:ENDPROC
1850IF w%=7 THEN normH=normreadw%:normu
nitsw%=normH-normG:ENDPROC
1860IF w%=8 THEN normI=normreadw%:normu
nitsw%=normI-normH:ENDPROC
1870IF w%=9 THEN normJ=normreadw%:normu
nitsw%=normJ-normI:ENDPROC
1880IF w%=10 THEN normK=normreadw%:norm
unitsw%=normK-normJ:ENDPROC
1890IF w%=11 THEN normL=normreadw%:norm
unitsw%=normL-normK:ENDPROC
1900IF w%=12 THEN normM=normreadw%:norm
unitsw%=normM-normL:ENDPROC
1910IF w%=13 THEN normN=normreadw%:norm
unitsw%=normN-normM:ENDPROC
1920IF w%=14 THEN normO=normreadw%:norm
unitsw%=normO-normN:ENDPROC
1930IF w%=15 THEN normP=normreadw%:norm
unitsw%=normP-normO:ENDPROC
1940IF w%=16 THEN normQ=normreadw%:norm
unitsw%=normQ-normP:ENDPROC
1950REM: *****
1960DEFPROClowre
1970IF lowreadw%<10 THEN PRINTTAB(29,Y)
;" ";lowreadw%:ENDPROC
1980IF lowreadw%>9 AND lowreadw%<100 TH
EN PRINTTAB(28,Y);" ";lowreadw%:ENDPROC
1990IF lowreadw%>99 AND lowreadw%<1000
THEN PRINTTAB(27,Y);" ";lowreadw%:ENDPRO
C
2000IF lowreadw%>999 AND lowreadw%<1000
0 THEN PRINTTAB(26,Y);" ";lowreadw%:ENDP
ROC
2010IF lowreadw%>9999 AND lowreadw%<100
000 THEN PRINTTAB(25,Y);" ";lowreadw%:EN
DPROC
2020ENDPROC
2030REM: *****
2040DEFPROClowun
2050IF lowunitsw%<10 THEN PRINTTAB(37,Y
);" ";lowunitsw%:ENDPROC
2060IF lowunitsw%>9 AND lowunitsw%<100
THEN PRINTTAB(36,Y);" ";lowunitsw%:ENDPR
OC
2070IF lowunitsw%>99 AND lowunitsw%<100
0 THEN PRINTTAB(35,Y);" ";lowunitsw%:END
PROC
2080IF lowunitsw%>999 AND lowunitsw%<10
000 THEN PRINTTAB(34,Y);" ";lowunitsw%:E
NDPROC
2090IF lowunitsw%>9999 AND lowunitsw%<1
00000 THEN PRINTTAB(33,Y);" ";lowunitsw%
:ENDPROC
2100ENDPROC
2110REM: *****
2120DEFPROClowunits
2130IF w%=0 THEN lowA=lowreadw%:lowunit
sw%=0:ENDPROC
2140IF w%=1 THEN lowB=lowreadw%:lowunit
sw%=lowB-lowA:ENDPROC
2150IF w%=2 THEN lowC=lowreadw%:lowunit
sw%=lowC-lowB:ENDPROC
2160IF w%=3 THEN lowD=lowreadw%:lowunit
sw%=lowD-lowC:ENDPROC
2170IF w%=4 THEN lowE=lowreadw%:lowunit
sw%=lowE-lowD:ENDPROC
2180IF w%=5 THEN lowF=lowreadw%:lowunit
sw%=lowF-lowE:ENDPROC
2190IF w%=6 THEN lowG=lowreadw%:lowunit
sw%=lowG-lowF:ENDPROC
2200IF w%=7 THEN lowH=lowreadw%:lowunit
sw%=lowH-lowG:ENDPROC
2210IF w%=8 THEN lowI=lowreadw%:lowunit
sw%=lowI-lowH:ENDPROC
2220IF w%=9 THEN lowJ=lowreadw%:lowunit
sw%=lowJ-lowI:ENDPROC
2230IF w%=10 THEN lowK=lowreadw%:lowuni
tsw%=lowK-lowJ:ENDPROC
2240IF w%=11 THEN lowL=lowreadw%:lowuni
tsw%=lowL-lowK:ENDPROC
2250IF w%=12 THEN lowM=lowreadw%:lowuni
tsw%=lowM-lowL:ENDPROC
2260IF w%=13 THEN lowN=lowreadw%:lowuni
tsw%=lowN-lowM:ENDPROC
2270IF w%=14 THEN lowO=lowreadw%:lowuni
tsw%=lowO-lowN:ENDPROC
2280IF w%=15 THEN lowP=lowreadw%:lowuni
tsw%=lowP-lowO:ENDPROC
2290IF w%=16 THEN lowQ=lowreadw%:lowuni
tsw%=lowQ-lowP:ENDPROC
2300REM: *****
2310DEFPROCtot2
2320IF INT Total2 <10 THEN @%=&020208:P
RINTTAB(34,6)" ";;Total2:@%=&10:ENDPROC
2330IF INT Total2>9 AND INT Total2<100
THEN @%=&020208:PRINTTAB(33,6)" ";Total2
:@%=&10:ENDPROC
2340IF INT Total2>99 AND INT Total2<100
0 THEN @%=&020208:PRINTTAB(32,6)" ";Tota
l2:@%=&10:ENDPROC
2350IF INT Total2>999 AND INT Total2<10
000 THEN @%=&020208:PRINTTAB(31,6)" ";To
tal2:@%=&10:ENDPROC
2360ENDPROC
2370REM: *****
2380DEFPROCtot4
2390IF INT Total4 <10 THEN @%=&020208:P
RINTTAB(34,9)" ";Total4::@%=&10:ENDPROC
2400IF INT Total4>9 AND INT Total4<100
THEN @%=&020208:PRINTTAB(33,9)" ";Total4
:@%=&10:ENDPROC
2410IF INT Total4>99 AND INT Total4<100
0 THEN @%=&020208:PRINTTAB(32,9)" ";Tota
l4:@%=&10:ENDPROC
2420IF INT Total4>999 AND INT Total4<10
000 THEN @%=&020208:PRINTTAB(31,9)" ";To
tal4:@%=&10:ENDPROC
2430ENDPROC
2440REM: *****
2450DEFPROCtot5
2460IF INT Total5 <10 THEN @%=&020208:P
RINTTAB(34,12)" ";Total5:@%=&10:ENDPROC
2470IF INT Total5 >9 AND INT Total5<100
THEN @%=&020208:PRINTTAB(33,12)" ";Tota
l5::@%=&10:ENDPROC
2480IF INT Total5>99 AND INT Total5<100
0 THEN @%=&020208:PRINTTAB(32,12)" ";Tot
al5:@%=&10:ENDPROC
2490IF INT Total5>999 AND INT Total5<10
000 THEN @%=&020208:PRINTTAB(31,12)" ";T
otal5:@%=&10:ENDPROC
2500ENDPROC
2510END
2520REM: *****
2530DEFPROCtot6
2540IF INT Total6 <10 THEN @%=&020208:P
RINTTAB(34,15)" ";Total6:@%=&10:ENDPROC
2550IF INT Total6 >9 AND INT Total6<100
THEN @%=&020208:PRINTTAB(33,15)" ";Tota
l6:@%=&10:ENDPROC
2560IF INT Total6>99 AND INT Total6<100
0 THEN @%=&020208:PRINTTAB(32,15)" ";Tot
al6:@%=&10:ENDPROC
2570IF INT Total6>99 AND INT Total6<100
0 THEN @%=&020208:PRINTTAB(31,15)CHR$141
" ";Total6:@%=&10:ENDPROC
2580IF INT Total6>999 AND INT Total6<10
000 THEN @%=&020208:PRINTTAB(30,15)" ";T
otal6:@%=&10:ENDPROC
2590ENDPROC
2600REM: *****
2610DEFPROCtot7
2620IF INT Total7 <10 THEN @%=&020208:P
RINTTAB(32,18)" £ ";Total7:@%=&10:ENDPRO
C
2630IF INT Total7 >9 AND INT Total7<100
THEN @%=&020208:PRINTTAB(31,18)" £ ";To
tal7:@%=&10:ENDPROC
2640IF INT Total7>99 AND INT Total7<100
0 THEN @%=&020208:PRINTTAB(30,18)" £ ";T
otal7:@%=&10:ENDPROC
2650IF INT Total7>999 AND INT Total7<10
000 THEN @%=&020208:PRINTTAB(29,18)" £ "
;Total7:@%=&10:ENDPROC
2660IF INT Total7>9999 AND INT Total7<1
00000 THEN @%=&020208:PRINTTAB(27,18)"=
£ ";Total7:@%=&10:ENDPROC
2670ENDPROC
2680REM: *****
2690
2700
2710DEFPROCbasicinfo
2720
2730
2740normalunitcost=0725
2750lowunitcost=027
2760standingcharge=1308
2770VAT=8
2780
2790
2800REM: When you have altered or
decided NOT to change any
of these figures, press
ANY KEY except ESCAPE
to return to the Menu
2810
2820
2830ENDPROC
2840REM: *****
2850DEFPROCclear:PRINTTAB(0,20)SPC(40);
:ENDPROC
2860END
2870REM: *****
2880DEFPROCclear1:PRINTTAB(0,20)SPC(80)
;:ENDPROC
2890REM: *****
2900DEFPROCclear2:PRINTTAB(0,20)SPC(160
);:ENDPROC
2910REM: *****
2920DEFPROCpause:FOR X=1 TO 3000:NEXT X
:ENDPROC
2930REM: *****
2940DEFPROCpause1:FOR X=1 TO 1000:NEXT
X:ENDPROC
2950REM: *****
2960REM: *****
2970DEFPROCtitle:PRINTTAB(0,0)CHR$141CH
R$131CHR$157CHR$129" ELECTRICITY/GAS
PROGRAMS "CHR$156TAB(0,1)CHR$141CH
R$131CHR$157CHR$129" ELECTRICITY/GAS
PROGRAMS "CHR$156:ENDPROC
2980REM: *****
2990DEFPROCtitle1:PRINTTAB(0,0)CHR$141C
HR$135CHR$157CHR$132"ELECTRICITY CONSUMP
TION and COST "CHR$156TAB(0,1)CHR$141CH
R$135CHR$157CHR$132"ELECTRICITY CONSUMPT
ION and COST "CHR$156:ENDPROC
3000REM: *****
3010DEFPROCbeep:SOUND2,-15,100,1:FOR X=
1 TO 250:NEXT:SOUND2,-15,100,1:ENDPROC
3020END
3030REM: *****
3040DEFPROCting:ENVELOPE1,1,0,0,0,0,0,0
,126,-1,0,-1,126,0:SOUND 1,1,150,5:ENDPR
OC
3050REM: *****
3060DEFPROCrasp:ENVELOPE1,1,4,5,0,255,2
55,0,127,-1,-1,-1,0,0:SOUND0,-15,3,10:SO
UND1,1,80,10:ENDPROC
3070REM: *****
3080DEFPROCjingle
3090ENVELOPE8,1,0,0,0,0,0,0,120,0,0,-1,
100,100
3100chan%=1
3110RESTORE3210
3120FORu=1TO7
3130READnote,dur
3140dur=dur+2
3150SOUNDchan%,8,note,dur
3160FORT=1TO400:NEXT
3170chan%=chan%+1:IFchan%=4chan%=1
3180NEXT
3190ENDPROC
3200REM: Jingle DATA
3210DATA129,4,125,4,109,4,101,4,89,4,81
,4,77,4
3220END
3230REM: *****
3240END