home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carousel Volume 2 #1
/
carousel.iso
/
comdore
/
64apps
/
chkacct.prg
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
1988-12-29
|
7KB
|
268 lines
1 REM:A SIMPLE CHECK ACCOUNT PROGRAM WRITTEN BY
2 REM:BILL GALLAGHER AS FREE WARE
3 REM:WITH BASIC PROGRAM KNOWLEDGE THIS COULD
4 REM:MEET YOUR CHECKBALANCE NEEDS
5 REM:MODIFY ALL YOU NEED GOOD LUCK
10 CLR
11 OPEN15,8,15
12 PRINT#15,"I"
15 POKE53281,0:POKE53280,6
50 PRINTCHR$(147):PRINTCHR$(14)
52 PRINT TAB(6)"[206]EED [201]NSTRUCTIONS [208]RESS F5"
55 PRINT:PRINT"[212]O USE [205]ONTHLY BAR CHART"
56 PRINT"([208]RESS [211][200][201][198][212] F2)"
60 PRINT:PRINT"[212]O START NEW MONTHLY CHECK FILE"
61 PRINT"([208]RESS F1)"
65 PRINT:PRINT"[210]ECEIVE ALL CHECKS FOR A CHOSEN MONTH"
66 PRINT"([208]RESS F3)"
68 PRINT:PRINT"[212]O ADD CHECKS TO A CHOSEN MONTH"
69 PRINT"([208]RESS F7)"
70 GETZ$:IFZ$=""THEN70
71 IFZ$=CHR$(135)THEN800
72 IFZ$=CHR$(133)THEN99
73 IFZ$=CHR$(134)THEN399
74 IFZ$=CHR$(136)THEN499
75 IFZ$=CHR$(137)THEN1050
76 GOTO70
99 PRINTCHR$(142)
100 PRINTCHR$(147)
101 PRINT"HOW MANY TRANSACTIONS INCLUDING "
102 PRINT"DEPOSITS "
103 PRINT
120 REMENTER DATE
131 INPUTN%
132 PRINTCHR$(147)
140 DIMNA$(N%)
160 PRINT" DATE CK# TRANSACTION AMT$ "
162 PRINT" 00XXX 000 12345678901234567890 000.00"
163 PRINT
164 FORI=1TON%
170 INPUTNA$(I)
175 NEXTI
180 REMSAVE DATA
181 PRINTCHR$(147)
182 PRINT"WHAT MONTH TO FILE DATA TO "
185 PRINT" XXX 0000 "
186 INPUT"";A$
187 IFLEN(A$)=8THEN189
188 GOTO186
189 OPEN2,8,2,"@0:"+A$+"S,W"
190 GOSUB900
191 FORI=1TON%
195 PRINT#2,NA$(I)
196 NEXTI
198 CLOSE2
200 PRINT:PRINT"DO YOU WISH TO GO ON (Y/N)"
201 GETZ$:IFZ$=""THEN201
202 IFZ$="Y"THEN10
203 IFZ$="N"THENEND
204 GOTO201
399 PRINTCHR$(142):PRINTCHR$(147)
400 PRINT" NAME OF MONTH TO RECEIVE DATA "
401 PRINT" XXX 0000 "
403 INPUT"";A$
404 IFLEN(A$)=8THEN412
405 GOTO401
412 OPEN2,8,2,"@0:"+A$+"S,R"
413 GOSUB900
414 PRINT"[147]":PRINT"MONTH OF ";A$
415 PRINT"DATE CK# TRANSACTION AMT$ "
416 PRINT
418 DIMDA$(18)
419 FORK=1TO18
420 INPUT#2,DA$(K)
427 PRINTDA$(K)
428 IFK=18THEN450
429 NEXTK
430 CLOSE2
431 STOP
450 PRINT:PRINT"MORE DATA PRESS F3"
451 GETZ$:IFZ$=""THEN451
452 IFZ$=CHR$(134)THEN460
454 GOTO451
460 PRINTCHR$(147)
461 PRINT"PAGE TWO MONTH OF ";A$
462 PRINT"DATE CK# TRANSACTION AMT$ "
464 INPUT#2,DA$
465 PRINTDA$
466 IFST=0THENGOTO464
467 CLOSE2
471 PRINT:PRINT"DO YOU WISH TO GO ON (Y/N)"
472 GETZ$:IFZ$=""THEN472
473 IFZ$="Y"THEN10
474 IFZ$="N"THENEND
499 PRINTCHR$(142)
500 PRINTCHR$(147)
520 DIMNA$(36):REM DIM VALUE SHOULD BE NUMBER OF NAMES TOTAL
522 PRINT" WHAT MONTH TO ADD DATA "
523 PRINT" XXX 0000 "
531 INPUT"";A$
532 IFLEN(A$)=8THEN535
533 GOTO531
535 OPEN2,8,2,"@0:"+A$+"S,R"
536 GOSUB900
540 N=0:REM COUNTER VARIABLE
550 INPUT#2,NA$(N)
570 N=N+1
580 IFST=0THEN550
590 CLOSE2
600 REM NEW DATA ENTRY
605 PRINTCHR$(147)
606 PRINT" "
607 PRINT"HOW MANY NEW TRANSACTIONS ? "
610 INPUTNN
611 PRINTCHR$(147)
630 PRINT" DATE CK# TRANSACTION AMT$ "
631 PRINT" 00XXX 000 12345678901234567890 000.00"
632 PRINT
633 FORI=(N+1)TO(N+NN)
635 INPUTNA$(I)
650 NEXTI
700 REM COMBINE OLD AND NEW ON TAPE
710 NP=N+NN:REM COMBINE ALL
711 PRINTCHR$(147)
720 PRINT" WHAT MONTH AM I TO FILE DATA TO ?"
721 PRINT" XXX 0000 "
722 INPUT"";A$
723 IFLEN(A$)=8THEN730
724 GOTO722
730 OPEN2,8,2,"@0:"+A$+"S,W"
735 GOSUB900
740 FORI=0TONP
750 PRINT#2,NA$(I)
760 NEXTI
770 CLOSE2
775 PRINT:PRINT"DO YOU WISH TO GO ON (Y/N)"
776 GETZ$:IFZ$=""THEN776
777 IFZ$="Y"THEN10
778 IFZ$="N"THENEND
779 GOTO776
800 REM INSTRUCTIONS
801 PRINTCHR$(147):PRINTCHR$(142)
802 PRINTTAB(10)"INSTRUCTIONS"
803 PRINT" DATE CK# TRANSACTION AMT$ "
804 PRINT" 00XXX 000 12345678901234567890 000.00"
805 PRINT:PRINT"FOR THE COLUMNS ABOVE USE THE FOLLOWING"
806 PRINT:PRINT"DATE01JAN OR 11JAN"
808 PRINT:PRINT"CK# 921"
810 PRINT:PRINT"TRANSACTION UP TO 20 CHARACTERS"
812 PRINT:PRINT"AMT$123.45[146] OR 12.34[146]"
814 PRINT"USE NO $ SIGH USE SPACE BAR FOR "
815 PRINT"POSITIONING AREA TO TYPE"
816 PRINT:PRINT"ANY TIME ERROR LITE ON DISK FLASH'S"
817 PRINT"HIT RUN/STOP[146] KEY THEN TYPE GOTO 900"
818 PRINT"AND HIT THE RESTORE[146] KEY"
819 PRINT:PRINT"HIT ANY KEY TO GO ON"
820 GETL$:IFL$=""THEN820
821 GOTO10
900 REMCHANNEL ERROR STATUS
902 PRINTCHR$(147):PRINT"ERROR CHANNEL OPEN"
904 INPUT#15,E$,B$,C$,D$
906 PRINTE$,B$,C$,D$
907 PRINT"IS DISK STATUS OK ? (Y/N)"
910 GETJ$:IFJ$=""THEN910
911 IFJ$="Y"THENRETURN
912 IFJ$="N"THEN10
913 GOTO900
1050 PRINTCHR$(142)
1051 PRINTCHR$(147):PRINT"":PRINTTAB(6):PRINT"MONTHLY CASH FLOW BAR CHART"
1055 PRINT"":CLR:CLOSE9:CLOSE15
1056 PRINTTAB(10);"SELECT BY NUMBER"
1058 PRINTTAB(10);"1[146] SEE A MONTHS CHART"
1059 PRINTTAB(10);"2[146] ADD A MONTHS CHART"
1060 PRINTTAB(10);"3[146] CONTINUE PROGRAM"
1061 PRINTTAB(10);"4[146] END"
1065 GETN$:IFN$=""THEN1065
1066 IFN$="1"THENGOTO7000
1067 IFN$="2"THEN2000
1068 IFN$="3"THEN10
1069 IFN$="4"THEN1071
1070 GOTO1050
1071 CLOSE9:CLOSE15
1072 END
1080 REM**INPUT INFO***
1081 STOP
2000 REM***SAVE DATA TO DISK****
2101 PRINTCHR$(147)
2102 PRINT"TYPE IN MONTH AND YEAR YOU WISH TO ADD"
2103 PRINTTAB(12):PRINT"A BAR CHART TO !"
2104 PRINTTAB(12):PRINT"EXAMPLE JAN84[146]"
2105 INPUTA$
2114 OPEN9,8,9,"0:"+A$+"B,W"
2115 GOSUB9000
2116 PRINT" TYPE DATA IN THE FOLLOWING MANNER":PRINT""
2117 PRINTTAB(8);"1 MONTHS FOOD BILL"
2118 PRINTTAB(8);"2 MONTHS BILLS (IE TELEPHONE)"
2119 PRINTTAB(8);"3 CREDIT CARD PAYMENTS"
2120 PRINTTAB(8);"4 ENTERTAINMENT (IE BOWLING)"
2121 PRINTTAB(8);"5 OTHER (IE INSURANCE,AUTO,GAS)"
2124 FORI=1TO5
2125 PRINT"NUMBER";I;:INPUTPV(I)
2130 PRINT#9,PV(I)
2150 NEXTI
2160 CLOSE9:CLOSE15
2190 CLR:GOTO1050
2199 REM*************************
7000 REM***INPUT RECEIVE INFO***
8000 PRINTCHR$(147)
8010 MV=300
8030 N=.01:NN=MV
8040 IFNN>20THENN=N+1:NN=MV/N:GOTO8040
8041 PRINT"EXAMPLE JAN84[146]"
8042 INPUT"MONTH YEAR";A$
8045 OPEN9,8,9,"@0:"+A$+"B,R"
8046 GOSUB9000
8052 FORI =1TO5
8053 INPUT#9,PV(I)
8054 PV(I)=INT(PV(I)/N)
8055 PRINTPV(I)
8056 NEXTI
8081 CLOSE9
8090 REM***END OF INPUT***
8100 PRINTCHR$(147);:FORPL=1TO5
8110 C$=CHR$(32)+CHR$(32)
8120 PRINTCHR$(19):FORV=0TO(20-PV(PL)):PRINT:NEXT
8130 FORPT=1TOPV(PL):PRINTCHR$(18);CHR$(28);SPC(PL*4);C$:NEXTPT
8140 NEXTPL
8150 FORLN=1TO39:PRINTCHR$(30);CHR$(100);:NEXT
8160 PRINTCHR$(5)
8161 A=1144:B=55416:C=1864:D=56136
8162 E=1664:F=55936:G=1784:H=56056
8163 I=1544:J=55816:K=1384:L=55656
8164 W=1264:X=55536:AA=1464:BB=55736
8170 PRINT" FD BL CC ET ML"
8172 PRINT"[145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145][145] ";A$
8173 PRINTTAB(25)"CHART READS"
8174 PRINTTAB(25)"FD=FOOD"
8175 PRINTTAB(25)"BL=BILLS"
8176 PRINTTAB(25)"CC=CREDIT CARD"
8177 PRINTTAB(25)"ET=ENTERTAINE"
8178 PRINTTAB(25)"ML=MISS (IE)"
8179 PRINTTAB(25)" INSURANCE"
8180 PRINTTAB(25)" AUTO EXP"
8500 REM0 1 2 3 4 5 6
8501 M=48:N=49:O=50:P=51:Q=52:R=53:S=54
8502 REM7 8 9
8503 T=55:U=56:V=57
8562 POKEA,P:POKEA+1,M:POKEA+2,M:POKEB,1:POKEB+1,1:POKEB+2,1
8563 POKEC,O:POKEC+1,R:POKED,1:POKED+1,1:POKEE,N:POKEE+1,M:POKEE+2,M
8564 POKEF,1:POKEF+1,1:POKEF+2,1
8565 POKEG,R:POKEG+1,M:POKEG+2,M:POKEH,1:POKEH+1,1
8566 POKEI,N:POKEI+1,R:POKEI+2,M:POKEJ,1:POKEJ+1,1:POKEJ+2,1
8567 POKEK,O:POKEK+1,M:POKEK+2,M:POKEL,1:POKEL+1,1:POKEL+2,1
8568 POKEW,O:POKEW+1,R:POKEW+2,M:POKEX,1:POKEX+1,1:POKEX+2,1
8569 POKEAA,N:POKEAA+1,T:POKEAA+2,R:POKEBB,1:POKEBB+1,1:POKEBB+2,1
8580 GETA$:IFA$=""THEN8580
8581 GOTO1050
9000 PRINT"[147]"
9020 OPEN15,8,15
9030 INPUT#15,M$,N$,B$,V$
9040 PRINT A$,N$
9042 PRINT" ^ "
9045 PRINT"IF OK PRESS Y"
9050 PRINT"IF NOT PRESS N"
9060 GETZ$:IFZ$=""THEN9060
9070 IFZ$="Y"THENRETURN
9080 IFZ$="N"THENGOTO1050
9090 GOTO9045