home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Compute! Gazette 1984 November
/
1984-11.d64
/
budgeteer_64
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-09-20
|
4KB
|
132 lines
100 x=1:rem make x=0 for tape,or x=1 to use disk
105 poke 53280,12:poke 53281,11:printchr$(14)
110 t$="[147][154] [146][155] [194][213][196][199][197][212][197][197][210] [154] [155]"
115 s=54272:for q=s to s+23:poke q,0:next
120 dim a$(11),a(11),b%(11):def fnr(x)=int(x*100+.5)/100:print t$""
130 print"[212]oday's [196]ate";:gosub1080:input dd$:print:goto230
140 print t$:print"[155] [196]ate:[152]"d$:print"[155] [204]ast [193]mount:$[152]"a
150 gosub190:print:for r=1to9:print" [155]"r"[157].."a$(r)"..$[152]"tab(b%(r))a(r):next
160 print" [155]10.."a$(10)"..$[152]"tab(b%(10))a(10):print
170 print" [155]11.."a$(11)"..$[152]"tab(b%(11))a(11):print:return
190 for r=1to11
200 if abs(a(r))=>1 then b%(r)=32-len(str$(int(abs(a(r)))))
210 if abs(a(r))<1 then b%(r)=31
220 next:return
230 for r=1to11:read a$(r):next
240 data"[200][207][213][211][201][206][199]........","[213][212][201][204][201][212][201][197][211]......"
243 data"[201][206][211][213][210][193][206][195][197]......","[211][197][210][214][201][195][197] [195][200][193][210][199][197][211]"
247 data"[195][210][197][196][201][212][160][195][193][210][196][211]..."
250 data"[214][193][195][193][212][201][207][206].......","[205][197][196][201][195][193][204]........"
253 data"[194][207][207][203][211]&[205][193][199][193][218][201][206][197][211]","[211][212][207][210][197] [195][200][193][210][199][197][211].."
257 data"[205][201][211][195][197][204][204][193][206][197][207][213][211]..","[212][207][212][193][204][160][194][193][204][193][206][195][197].."
270 gosub1050
280 if x then open1,8,2,"0:chbkfile,read":goto 350
290 print"[201]nsert data cassette and rewind to read balances.
300 [153]:[153]"(NULL)eady?...(NULL)ress (NULL)
310 get a$:if a$="" then310
320 if a$="n" then end
330 if a$<>"y" then290
340 open1,1,0,"chbkfile"
350 for r=1to11:input#1,a(r):next:input#1,d$:close1
360 gosub140
370 print"[155][212]ransaction? [217]/[206]"
375 gosub1080
380 get a$:if a$="" then380
390 if a$="y" then450
400 if a$="n" then740
410 gosub1160:for r=1to3
420 print""spc(14)" ":for m=1to300:next
430 print""spc(14)"[217]/[206]":for m=1to300:next
440 next:goto380
450 t=t+1:if t=1 then d$=dd$
460 print"[205]enu: [212]=acct [212]ransfer
470 [153][166]6)"len=write lenheck
480 printspc(6)"[196]=make [196]eposit
485 [141]1080
490 [161] a$:[139] a$[178]""[167]490
500 [139] a$[178]"c"[167]590
510 [139] a$[178]"d"[167]620
520 [139] a$[178]"t"[167]650
530 [141]1160:[129] r[178]1[164]3
540 [153]""[166]6)" "
550 [153][166]6)" ":[153][166]6)" ":[129] m[178]1[164]300:[130]
560 [153]""[166]6)"(NULL)"
570 [153][166]6)"len":[153][166]6)"str$":[129] m[178]1[164]300:[130]
580 [130]:[137]490
590 [153]""
591 [153]"atnmt of lenheck,atncct #";:[141]1080:[133] a,l
600 [139] l[177]10 [176] l[179]1 [176] l[171][181](l)[177]0 [167] [141]1160:[137]590
610 a(11)[178][165]r(a(11)[171]a):a(l)[178][165]r(a(l)[171]a):[137]640
620 [153]:[153]"atnmt of str$eposit";:[141]1080:[133] a
630 l[178]10:a(11)[178][165]r(a(11)[170]a):a(l)[178][165]r(a(l)[170]a)
640 [141]140:e[178]l:f[178]12:[137]690
650 [153]""
651 [153]"atnmt,from #,to #";:[141]1080:[133] a,a1,a2
653 [139] a1[177]10 [176] a1[179]1 [176] a1[171][181](a1)[177]0 [167] [141]1160:[137]650
660 [139] a2[177]10 [176] a2[179]1 [176] a2[171][181](a2)[177]0 [167] [141]1160:[137]650
670 a(a1)[178][165]r(a(a1)[171]a):a(a2)[178][165]r(a(a2)[170]a)
680 [141]140:e[178]a1:f[178]a2
690 [139] e[177]6 [167] [153]""[166]255)[166]198)[166]e[172]40[171]255)"*":[137]710
700 [153]""[166]198)[166]e[172]40)"*"
710 [139] f[177]6 [167] [153]""[166]255)[166]198)[166]f[172]40[171]255)"*":[137]730
720 [153]""[166]198)[166]f[172]40)"*"
730 [129] m[178]1[164]750:[130]:[153]"":[137]370
740 [139] t[178]0 [167]870
750 z[178]0:[129] r[178]1[164]10:z[178]z[170]a(r):[130]
760 [139] [182](z[171]a(11))[178][177].01 [167]940
770 [141] 140:[153]"(NULL)um of atnccounts=(NULL)otal peekalance":[141] 1000
780 [139] x [167] [159]1,8,2,"@0:chbkfile,write":[137]840
790 [153]:[153]"(NULL)eady?...press (NULL)
800 get a$:if a$=""then800
810 if a$="n" then880
820 if a$<>"y" then780
830 open1,1,1,"chbkfile"
840 r$=chr$(13):for r=1to11:print#1,a(r);r$;:next
850 print#1,d$;r$;:close1
855 print t$:print"[196]ate:"d$:print"[200]ad"t" trans.":gosub150
860 print"[206]ew file done.":end
870 gosub140:print"[206]o transactions.":print"[198]ile not changed.":end
880 gosub140:print"[194]alances have changed."
890 print"[215]rite new file?"
900 get a$:if a$="" then900
910 if a$="n" then end
920 if a$<>"y" then880
930 goto360
935 gosub140:print"[197]rror - [206]o balance.":print"[193]cct [211]um="z
940 print"[195]hbk [194]alance="a(11)
950 print"[196]o you wish to continue?"
960 get a$:if a$="" then960
970 if a$="n" thenend
980 if a$<>"y" then940
990 goto360
1000 print"[201]nsert data disk or tape"
1002 print"[208]ressing '[211][212][207][208]' will abort session"
1005 print" (transactions will be lost)
1008 [153]" any other key will save data."
1009 [141]1080
1010 [161] a$:[139] a$[178]"" [167]1010
1030 [142]
1050 [153]"right$nsert data disk or tape"
1055 [153]"(NULL)ress any key to load data."
1058 [141]1080
1060 [161] a$:[139] a$[178]"" [167]1060
1070 [142]
1080 [129] q[178]s [164] s[170]22:[151] q,0:[130]
1090 [151] s[170]5,0:[151] s[170]19,0
1095 [151] s[170]6,7:[151] s[170]20,7
1100 [151] s[170]24,15
1110 [151] s[170]4,33:[151]s[170]18,19
1120 [151] s,0:[151] s[170]1,75
1130 [151] s[170]14,1:[151] s[170]15,75
1135 [151] s[170]4,32:[151]s[170]18,18
1140 [129] q[178]1[164]150:[130]
1150 [151] s[170]1,0:[151] s[170]15,0:[142]
1160 [129] q[178]s [164] s[170]22:[151] q,0:[130]
1170 [151] s[170]5,15:[151] s[170]12,15
1175 [151] s[170]3,4:[151]3[170]10,4
1180 [151] s[170]24,6
1190 [151] s[170]4,65:[151]s[170]18,65
1200 [151] s[170]1,12:[151] s[170]8,14
1210 [129] q[178]1[164]250:[130]
1220 [151] s[170]1,0:[151] s[170]8,0:[142]