start tok64 d64-Ye35O0 5 REM checkbook 10 FORi=828TO994 15 READx 20 POKEi,x 25 NEXT 30 FORj=679TO694 35 READx 40 POKEj,x 45 NEXT 50 GOTO505 55 PRINTMID$(dc$,1,32) 60 PRINT"{down}{light blue}"de$(cn) 65 SYS679,2,19 70 SYS981(de(cn)) 75 PRINT"{156} 80 RETURN 85 PRINTMID$(dc$,1,32) 90 PRINT"{down}{light blue}"ch$(cn) 95 SYS679,2,19 100 SYS981(am(cn)) 105 PRINT"{156} 110 RETURN 115 GOSUB430 120 PRINT"{down}month year{space*3}"yr$ 125 SYS679,3,11 130 INPUTyr$ 135 GOTO315 140 GOSUB440 145 OPEN15,8,15 150 IFb$="w"THENPRINT#15,"s0:cb: "+LEFT$(yr$,8)+".bak": 155 IFb$="w"THENPRINT#15,"r0:cb: "+LEFT$(yr$,8)+".bak=cb: "yr$ 160 OPEN8,8,8,"0:cb: "+yr$+",s,"+b$ 165 RETURN 170 CLOSE8 175 INPUT#15,t,t$,e$,s$ 180 CLOSE15 185 PRINT"{down}"yr$"{space*2}!{space*2}"t$ 190 GOTO295 195 ls$="sending " 200 d$=CHR$(16) 205 CLOSE1 210 OPEN1,4 215 n=bu+1 220 GOTO440 225 s=de(i) 230 IFs>0THENtd=td+s:GOTO245 235 tw=tw+s 240 tc=tc+1 245 sb=sb+s 250 RETURN 255 t$=t$+"{space*5}" 260 t$=LEFT$(t$,4) 265 FORcn=1TOnu 270 IFt$=MID$(ch$(cn),1,4)THENj3=1:RETURN 275 NEXT 280 PRINT"{clear}{reverse on}chk no "t$" {reverse on}not found!! try again! " 285 r=8 290 RETURN 295 PRINT"{cyan}{space*15}{down}hit a key{dark gray}" 300 POKE198,0 305 WAIT198,1 310 RETURN 315 PRINT"{down}{red}correct{space*4}{reverse on}(y/n/r){dark gray}" 320 t=1 325 POKE198,0 330 GOTO345 335 POKE198,0 340 t=2 345 POKE198,0 350 WAIT198,1 355 GETky$ 360 ON-(ky$="")GOTO345 365 e=ASC(ky$) 370 g=e-132 375 IFt=1THEN385 380 RETURN 385 yn=3 390 ON-(e=89)GOTO380 395 yn=2 400 ON-(e=78)GOTO380 405 yn=1 410 ON-(e=82)GOTO380 415 GOTO345 420 PRINT"{clear}{red}there was not enough data found {!*5}{cyan}" 425 GOTO620 430 PRINT"{clear}{down}{156}"MID$(l$(r),8,28)"{dark gray}" 435 RETURN 440 df$="{blue}{up}"+ls$+" ' "+yr$+" ' "+MID$(l$(r),17,20) 445 PRINTdf$ 450 RETURN 455 FORi=1TOdl 460 de$(i)="" 465 de(i)=0 470 NEXT 475 tw=0 480 td=0 485 dl=0 490 tb=nb 495 ob=nb 500 RETURN 505 m=100 510 i=20 515 DIMch$(m),am(m),de$(m),de(m) 520 FORi=0TO4 525 READl$(i) 530 NEXT 535 FORj=2TO7 540 READc$(j) 545 NEXT 550 c$(0)=l$(0) 555 c$(1)=l$(1) 560 r$=CHR$(13) 565 c$="," 570 sp$="{space*26}" 575 st$="{red}stand-by please{down}{dark gray}" 580 GOSUB455 585 dc$="{clear}{yellow}ck#{space*2}date{space*3}purpose{space*5}amount{space*2}balance{pink}" 590 co$="{space*6}{cyan}correcting{dark gray}"+r$ 595 p4$="{clear}{cyan}{space*3}deleted"+r$ 600 p9$="{red}change balance:"+r$+"{down*2}{orange}{space*3}f1{light blue}..skip{space*4}{orange}f3{light blue}..new/old{space*4}{orange}f5{light blue}..new 605 PRINT"{clear}{dark gray}" 610 POKE53280,0 615 POKE53281,0 620 PRINT"{156} f1-list{space*2}f3-c/d/w{space*2}f5-dir{space*2}f7-enter{space*5}f2-stop{space*2}f4-s/l/p{space*2}f6-bal{dark gray} 625 GOSUB335 630 ON-(g<1ORg>7)GOTO625 635 ONgGOTO645,820,2520,1540,1825,1930,1830 640 ln=nu 645 GOSUB655 650 GOTO620 655 IFln=nuTHENln=0:sb=nb 660 sn=ln+1 665 ln=ln+20 670 PRINTdc$TAB(68); 675 SYS981(sb) 680 PRINT 685 IFln>nuTHENln=nu 690 c=3 695 ya=2 700 FORi=snTOln 705 POKE646,c 710 sb=sb+am(i) 715 IFc=14THENc=-8 720 h=PEEK(214) 725 SYS679,h,28 730 SYS981(sb) 735 SYS679,h,19 740 SYS981ABS((am(i))) 745 SYS679,h,0 750 PRINTMID$(ch$(i),1,22)"{dark gray}" 755 c=c+11 760 ON-(ya=1)GOTO380 765 NEXT 770 RETURN 775 sb=nb 780 FORi=1TOb 785 sb=sb+am(i) 790 NEXT 795 i=b 800 GOTO720 805 i=b 810 sb=sb+am(i) 815 GOTO720 820 FORi=0TO7 825 PRINTTAB(4)c$(i)"{down}" 830 NEXT 835 GOSUB335 840 ON-(g<1ORg>7)GOTO820 845 ONgGOTO640 850 en=g 855 x=28 860 dc=0 865 PRINT"{clear}" 870 jd=2 875 ON-(g=7)GOTO1170:jd=1:r=en 880 PRINT"{down}"MID$(c$(en),8,x) 885 t$="" 890 INPUT"{down}{dark gray}enter check# ";t$ 895 IFt$=""THEN1170 900 ON-(en=3)GOTO990 905 GOSUB255 910 ONr-1GOTO925,1005,1505,1425,945 915 r=en 920 GOTO880 925 dl=dl+1 930 de$(dl)=ch$(cn) 935 de(dl)=am(cn) 940 jd=2 945 ya=1 950 GOSUB85 955 FORi=cnTOnu 960 ch$(i)=ch$(i+1) 965 am(i)=am(i+1) 970 NEXT 975 nu=nu-1 980 j1=1 985 GOTO880 990 ON-(dl<1)GOTO420 995 t$=t$+"{space*5}" 1000 t$=LEFT$(t$,4) 1005 FORcn=1TOdl 1010 IFt$=MID$(de$(cn),1,4)THEN1035 1015 NEXTcn 1020 GOSUB280 1025 GOSUB295 1030 GOTO820 1035 PRINT"{clear}" 1040 SYS679,10,8 1045 PRINT"{orange}f1{light blue}..correct{space*2}{orange}f3{light blue}..delete" 1050 GOSUB335 1055 IFg<1ORg>2THEN1035 1060 jd=2 1065 j1=1 1070 j3=1 1075 ONg-1GOTO1135 1080 ch$(0)=de$(cn) 1085 am(0)=de(cn) 1090 nc=0 1095 b=0 1100 h=2 1105 ww=4 1110 yn=2 1115 GOSUB1590 1120 de$(cn)=ch$(0) 1125 de(cn)=am(0) 1130 GOTO880 1135 GOSUB55 1140 FORi=cnTOdl-1 1145 de$(i)=de$(i+1) 1150 de(i)=de(i+1) 1155 NEXT 1160 dl=dl-1 1165 GOTO880 1170 ONjdGOTO640 1175 jd=1 1180 ON-(dl<1)GOTO640 1185 PRINTdc$TAB(68) 1190 SYS981(ob) 1195 PRINT 1200 td=0 1205 tw=0 1210 sb=ob 1215 g=4 1220 FORi=1TOdl 1225 POKE646,g 1230 GOSUB225 1235 IFg=5THENg=3 1240 h=PEEK(214) 1245 SYS679,h,28 1250 SYS981(sb) 1255 SYS679,h,19 1260 SYS981ABS((de(i))) 1265 SYS679,h,0 1270 PRINTMID$(de$(i),1,20) 1275 g=g+1 1280 dc=dc+1 1285 IFdc=20ORi=dlTHENGOSUB295:dc=0 1290 NEXTi 1295 PRINT"{light gray}{down*2}total deposit"TAB(28) 1300 SYS981(td) 1305 PRINT 1310 PRINT"total withdraw"TAB(28) 1315 SYS981(tw) 1320 PRINT 1325 PRINTTAB(33)"{cm t*6}" 1330 IFj1<>1THEN1345 1335 tb=(td+tw) 1340 nb=(ob+tb) 1345 j1=0=z=0 1350 PRINTTAB(28) 1355 SYS981(tb) 1360 PRINT 1365 PRINT"old balance"TAB(28) 1370 SYS981(ob) 1375 PRINT 1380 PRINTTAB(33)"{cm t*6}" 1385 PRINT"new balance"TAB(28) 1390 SYS981(nb) 1395 PRINT 1400 PRINT"{down*2}{green}{space*9}{orange}f1{light blue}..clear"; 1405 PRINT" all withdraws{dark gray}" 1410 GOSUB335 1415 ON-(g=1)GOSUB455 1420 GOTO640 1425 nc=0 1430 b=0 1435 ww=5 1440 h=2 1445 ch$(0)="" 1450 am(0)=0 1455 GOSUB1585 1460 IFch$(0)=""THEN820 1465 FORi=nu+1TOcnSTEP-1 1470 ch$(i)=ch$(i-1) 1475 am(i)=am(i-1) 1480 NEXT 1485 nu=nu+1 1490 ch$(cn)=ch$(0) 1495 am(cn)=am(0) 1500 GOTO820 1505 nc=cn 1510 PRINT"new balance"TAB(28) 1515 ww=1 1520 yn=2 1525 b=cn 1530 GOSUB1585 1535 GOTO820 1540 nc=nu+1 1545 b=nc-1 1550 j3=2 1555 ww=1 1560 GOSUB1585 1565 ch$(nc)="" 1570 am(nc)=0 1575 nu=nc-1 1580 GOTO640 1585 PRINTdc$ 1590 ya=1 1595 v=9 1600 ONwwGOSUB775,805,720,55 1605 u=LEN(STR$(INT(am(nc)))) 1610 q$=ch$(nc) 1615 IFyn=2THENSYS679,h+14,0:PRINT"{space*2}"co$ 1620 SYS679,h+3,0 1625 PRINT"check entries:" 1630 PRINT"{down*2}check#{space*5}"MID$(q$,1,4) 1635 PRINT"{down}date{space*7}"MID$(q$,6,6) 1640 PRINT"{down}purpose{space*4}"MID$(q$,13,20) 1645 e3$="" 1650 e4=0 1655 ON-(q$="")GOTO1670 1660 SYS679,h+12,2+u 1665 SYS981(ABS(am(nc))) 1670 SYS679,h+12,0 1675 PRINT"amount" 1680 SYS679,h+6,v 1685 e1$="" 1690 INPUTe1$ 1695 IFe1$=""THEN380 1700 SYS679,h+8,v 1705 e2$="" 1710 INPUTe2$ 1715 SYS679,h+10,v 1720 INPUTe3$ 1725 SYS679,h+12,v 1730 INPUTe4 1735 IFe3$="sure pay"ORe3$="deposit"ORe3$="dividend"THENe4=e4*-1 1740 e1$=e1$+sp$ 1745 e1$=MID$(e1$,1,4) 1750 e2$=e2$+sp$ 1755 e2$=MID$(e2$,1,6) 1760 e3$=e3$+sp$ 1765 e3$=MID$(e3$,1,20) 1770 am(nc)=e4*-1 1775 ch$(nc)=e1$+" "+e2$+" "+e3$ 1780 b=nc 1785 GOSUB315 1790 ONynGOTO380,1585 1795 ww=3 1800 ON-(j3=1)GOTO380 1805 nc=nc+1 1810 ww=2 1815 b=nc-1 1820 GOTO1585 1825 STOP:GOTO605 1830 PRINT"{clear}{down*3}balance changing:{down*3}"r$"{down}{red}f1) skip"r$"{down}{pink}f3) old & new"r$"{down}{red}f5) new 1835 GOSUB335 1840 ON-(g<1ORg>3)GOTO1830 1845 t$="{156}old/" 1850 IFg=3THENt$="" 1855 ONgGOTO640 1860 PRINT"{clear}{156}{down*7}"t$+"new balance" 1865 SYS679,7,17 1870 INPUTp 1875 IFp<1THEN640 1880 nb=p 1885 SYS679,7,15 1890 SYS981(p) 1895 GOSUB295 1900 j1=1 1905 jd=2 1910 ON-(g=3)GOTO1170 1915 tb=p 1920 ob=p 1925 GOTO1170 1930 FORi=0TO4 1935 PRINTTAB(10)l$(i)"{down}" 1940 NEXT 1945 GOSUB335 1950 r=g 1955 IFr<1ORr>4THEN1930 1960 ON-(r=1)GOTO605 1965 IFr=2ORr=3THENIFnu<1THEN420 1970 GOSUB115 1975 ONynGOTO605,1930 1980 ONr-1GOTO2130,2040 1985 ls$="loading " 1990 b$="r" 1995 GOSUB140 2000 INPUT#8,nu,dl,nb,ob,tb 2005 FORn=1TOnu 2010 INPUT#8,ch$(n),am(n) 2015 NEXT 2020 FORi=1TOdl 2025 INPUT#8,de$(i),de(i) 2030 NEXT 2035 GOTO2090 2040 ls$="saving " 2045 b$="w" 2050 GOSUB140 2055 PRINT#8,nu","dl","nb","ob","tb 2060 FORi=1TOnu 2065 PRINT#8,ch$(i)","am(i) 2070 NEXT 2075 FORi=1TOdl 2080 PRINT#8,de$(i)","de(i) 2085 NEXT 2090 ln=nu 2095 FORi=nu+1TOm 2100 ch$(i)="" 2105 am(i)=0 2110 NEXT 2115 GOSUB170 2120 GOTO605 2125 IFyn=2THENSYS679,h+12,0:PRINTco$ 2130 GOSUB195 2135 CMD1 2140 PRINTd$"21outstanding checks dated: "yr$r$"ck#"d$"04date"; 2145 sb=nb 2150 PRINTd$"11purpose"d$"43deposit"d$"57amount"d$"67balance"r$d$"63"; 2155 SYS981(sb) 2160 PRINT 2165 FORi=1TOnu 2170 sb=sb+am(i) 2175 PRINTMID$(ch$(i),1,38); 2180 IFam(i)<0THEN2200 2185 PRINTd$"39"; 2190 SYS981(am(i)) 2195 GOTO2210 2200 PRINTd$"52"; 2205 SYS981(am(i)) 2210 PRINTd$"63"; 2215 SYS981(sb) 2220 PRINT 2225 NEXT 2230 IFdl<1THENPRINT#1:CLOSE1:GOTO605 2235 sb=ob 2240 PRINTr$d$"19*** displaying all withdraws ***"d$"63"; 2245 SYS981(sb) 2250 PRINT 2255 tw=0 2260 td=0 2265 tc=0 2270 FORi=1TOdl 2275 GOSUB225 2280 PRINTMID$(de$(i),1,38); 2285 IFde(i)<0THEN2315 2290 PRINTd$"39"; 2295 SYS981(de(i)) 2300 PRINTd$"63"; 2305 SYS981(sb) 2310 GOTO2335 2315 PRINTd$"52"; 2320 SYS981(de(i)) 2325 PRINTd$"63"; 2330 SYS981(sb) 2335 PRINT 2340 NEXT 2345 PRINTr$"deposits -"; 2350 SYS981(td) 2355 PRINTd$"24sub bal{space*4}-"; 2360 SYS981(td+tw) 2365 PRINT 2370 PRINTr$"withdraws-"; 2375 SYS981(tw) 2380 PRINTd$"24old balance-"; 2385 SYS981(ob) 2390 PRINT 2395 PRINTr$"sub bal{space*2}-"; 2400 SYS981(td+tw) 2405 PRINTd$"24new balance-"; 2410 SYS981(nb) 2415 q$=STR$(tc) 2420 PRINTd$"46no. chks withdraw- "q$ 2425 PRINT#1 2430 CLOSE1 2435 GOTO605 2440 DATA1,10,2,32,162,,221,,1,240,6,232,224,12,208,246,24 2445 DATA96,169,69,32,64,3,176,90,173,60,3,240,94,173,2,1,208 2450 DATA11,172,61,3,169,48,153,2,1,136,208,250,169,46,32,64,3 2455 DATA168,144,2,160,48,169,,32,64,3,152,157,,1,169,46,32 2460 DATA64,3,172,62,3,232,136,208,252,236,61,3,176,33,172,61,3 2465 DATA169,,153,1,1,189,,1,201,32,208,3,169,32,234,153,0 2470 DATA1,202,16,6,173,63,3,136,16,244,136,16,231,169,,133,97 2475 DATA160,1,132,98,96,169,,032,64,3,144,240,138,168,173,2,1 2480 DATA240,9,169,46,32,64,3,144,2,138,168,152,170,202,16,181,0 2485 DATA032,158,173,32,221,189,32,78,3,32,30,171,96,0 2490 DATA032,155,183,138,72,32,155,183,104,170,164,101,24,76,240,255 2495 DATA"{clear}{yellow}{down*3}press:{light blue}","{orange}f1{light blue}{.*3}return to program","{orange}f3{light blue*2}{.*3}send to printer" 2500 DATA"{orange}f5{light blue}{.*3}save file to disk","{orange}f7{light blue}{.*3}load file from disk{dark gray}" 2505 DATA"{orange}f3{light blue}{.*3}withdraw a check","{orange}f5{light blue}{.*3}correct or delete a withdrawal" 2510 DATA"{orange}f7{light blue}{.*3}correct a check{blue}","{orange}f2{light blue}{.*3}insert a check" 2515 DATA"{orange}f4{light blue}{.*3}delete a check","{orange}f6{light blue}{.*3}display all withdrawals{dark gray}" 2520 PRINT"{clear} 2525 OPEN1,8,0,"$" 2530 GET#1,a$,b$ 2535 GET#1,a$,b$ 2540 GET#1,a$,b$ 2545 c=0 2550 PRINT"{light blue}"MID$(STR$(ASC(a$+CHR$(0))+ASC(b$+CHR$(0))*256),2,3)TAB(4)"{blue}"; 2555 GET#1,b$ 2560 IFst<>0THEN2635 2565 IFb$<>CHR$(34)THEN2555 2570 FORi=1TO17 2575 GET#1,b$ 2580 IFb$<>CHR$(34)THENPRINTb$;:NEXT 2585 FORi=1TO32 2590 GET#1,b$ 2595 IFb$=CHR$(32)THENNEXT 2600 PRINTTAB(21); 2605 c$="" 2610 c$=c$+b$ 2615 GET#1,b$ 2620 IFb$<>""THENGOTO2610 2625 PRINT"{light blue}"LEFT$(c$,3) 2630 IFst=0THEN2535 2635 PRINT"blocks free {down}" 2640 CLOSE1 2645 GOTO610 stop tok64 (bastext 1.0)