home *** CD-ROM | disk | FTP | other *** search
/ Carousel Volume 2 #1 / carousel.iso / comdore / 64apps / chkacct.prg (.txt) < prev    next >
Commodore BASIC  |  1988-12-29  |  7KB  |  268 lines

  1. 1 REM:A SIMPLE CHECK ACCOUNT PROGRAM WRITTEN BY
  2. 2 REM:BILL GALLAGHER AS FREE WARE
  3. 3 REM:WITH BASIC PROGRAM KNOWLEDGE THIS COULD
  4. 4 REM:MEET YOUR CHECKBALANCE NEEDS
  5. 5 REM:MODIFY ALL YOU NEED GOOD LUCK
  6. 10 CLR
  7. 11 OPEN15,8,15
  8. 12 PRINT#15,"I"
  9. 15 POKE53281,0:POKE53280,6
  10. 50 PRINTCHR$(147):PRINTCHR$(14)
  11. 52 PRINT TAB(6)"[206]EED [201]NSTRUCTIONS [208]RESS F5"
  12. 55 PRINT:PRINT"[212]O USE [205]ONTHLY BAR CHART"
  13. 56 PRINT"([208]RESS [211][200][201][198][212] F2)"
  14. 60 PRINT:PRINT"[212]O START NEW MONTHLY CHECK FILE"
  15. 61 PRINT"([208]RESS F1)"
  16. 65 PRINT:PRINT"[210]ECEIVE ALL CHECKS FOR A CHOSEN MONTH"
  17. 66 PRINT"([208]RESS F3)"
  18. 68 PRINT:PRINT"[212]O ADD CHECKS TO A CHOSEN MONTH"
  19. 69 PRINT"([208]RESS F7)"
  20. 70 GETZ$:IFZ$=""THEN70
  21. 71 IFZ$=CHR$(135)THEN800
  22. 72 IFZ$=CHR$(133)THEN99
  23. 73 IFZ$=CHR$(134)THEN399
  24. 74 IFZ$=CHR$(136)THEN499
  25. 75 IFZ$=CHR$(137)THEN1050
  26. 76 GOTO70
  27. 99 PRINTCHR$(142)
  28. 100 PRINTCHR$(147)
  29. 101 PRINT"HOW MANY TRANSACTIONS INCLUDING "
  30. 102 PRINT"DEPOSITS                        "
  31. 103 PRINT
  32. 120 REMENTER DATE
  33. 131 INPUTN%
  34. 132 PRINTCHR$(147)
  35. 140 DIMNA$(N%)
  36. 160 PRINT"  DATE  CK# TRANSACTION          AMT$  "
  37. 162 PRINT"  00XXX 000 12345678901234567890 000.00"
  38. 163 PRINT
  39. 164 FORI=1TON%
  40. 170 INPUTNA$(I)
  41. 175 NEXTI
  42. 180 REMSAVE DATA
  43. 181 PRINTCHR$(147)
  44. 182 PRINT"WHAT MONTH TO FILE DATA TO           "
  45. 185 PRINT"  XXX 0000                             "
  46. 186 INPUT"";A$
  47. 187 IFLEN(A$)=8THEN189
  48. 188 GOTO186
  49. 189 OPEN2,8,2,"@0:"+A$+"S,W"
  50. 190 GOSUB900
  51. 191 FORI=1TON%
  52. 195 PRINT#2,NA$(I)
  53. 196 NEXTI
  54. 198 CLOSE2
  55. 200 PRINT:PRINT"DO YOU WISH TO GO ON (Y/N)"
  56. 201 GETZ$:IFZ$=""THEN201
  57. 202 IFZ$="Y"THEN10
  58. 203 IFZ$="N"THENEND
  59. 204 GOTO201
  60. 399 PRINTCHR$(142):PRINTCHR$(147)
  61. 400 PRINT" NAME OF MONTH TO RECEIVE DATA       "
  62. 401 PRINT"  XXX 0000                           "
  63. 403 INPUT"";A$
  64. 404 IFLEN(A$)=8THEN412
  65. 405 GOTO401
  66. 412 OPEN2,8,2,"@0:"+A$+"S,R"
  67. 413 GOSUB900
  68. 414 PRINT"[147]":PRINT"MONTH OF   ";A$
  69. 415 PRINT"DATE  CK# TRANSACTION          AMT$  "
  70. 416 PRINT
  71. 418 DIMDA$(18)
  72. 419 FORK=1TO18
  73. 420 INPUT#2,DA$(K)
  74. 427 PRINTDA$(K)
  75. 428 IFK=18THEN450
  76. 429 NEXTK
  77. 430 CLOSE2
  78. 431 STOP
  79. 450 PRINT:PRINT"MORE DATA PRESS F3"
  80. 451 GETZ$:IFZ$=""THEN451
  81. 452 IFZ$=CHR$(134)THEN460
  82. 454 GOTO451
  83. 460 PRINTCHR$(147)
  84. 461 PRINT"PAGE  TWO  MONTH OF   ";A$
  85. 462 PRINT"DATE  CK# TRANSACTION          AMT$    "
  86. 464 INPUT#2,DA$
  87. 465 PRINTDA$
  88. 466 IFST=0THENGOTO464
  89. 467 CLOSE2
  90. 471 PRINT:PRINT"DO YOU WISH TO GO ON (Y/N)"
  91. 472 GETZ$:IFZ$=""THEN472
  92. 473 IFZ$="Y"THEN10
  93. 474 IFZ$="N"THENEND
  94. 499 PRINTCHR$(142)
  95. 500 PRINTCHR$(147)
  96. 520 DIMNA$(36):REM DIM VALUE SHOULD BE NUMBER OF NAMES TOTAL
  97. 522 PRINT"  WHAT MONTH TO ADD DATA             "
  98. 523 PRINT"  XXX 0000                           "
  99. 531 INPUT"";A$
  100. 532 IFLEN(A$)=8THEN535
  101. 533 GOTO531
  102. 535 OPEN2,8,2,"@0:"+A$+"S,R"
  103. 536 GOSUB900
  104. 540 N=0:REM COUNTER VARIABLE
  105. 550 INPUT#2,NA$(N)
  106. 570 N=N+1
  107. 580 IFST=0THEN550
  108. 590 CLOSE2
  109. 600 REM NEW DATA ENTRY
  110. 605 PRINTCHR$(147)
  111. 606 PRINT"                                 "
  112. 607 PRINT"HOW MANY NEW TRANSACTIONS ?       "
  113. 610 INPUTNN
  114. 611 PRINTCHR$(147)
  115. 630 PRINT"  DATE  CK# TRANSACTION          AMT$  "
  116. 631 PRINT"  00XXX 000 12345678901234567890 000.00"
  117. 632 PRINT
  118. 633 FORI=(N+1)TO(N+NN)
  119. 635 INPUTNA$(I)
  120. 650 NEXTI
  121. 700 REM COMBINE OLD AND NEW  ON TAPE
  122. 710 NP=N+NN:REM COMBINE ALL
  123. 711 PRINTCHR$(147)
  124. 720 PRINT" WHAT MONTH AM I TO FILE  DATA TO ?"
  125. 721 PRINT"  XXX 0000                             "
  126. 722 INPUT"";A$
  127. 723 IFLEN(A$)=8THEN730
  128. 724 GOTO722
  129. 730 OPEN2,8,2,"@0:"+A$+"S,W"
  130. 735 GOSUB900
  131. 740 FORI=0TONP
  132. 750 PRINT#2,NA$(I)
  133. 760 NEXTI
  134. 770 CLOSE2
  135. 775 PRINT:PRINT"DO YOU WISH TO GO ON (Y/N)"
  136. 776 GETZ$:IFZ$=""THEN776
  137. 777 IFZ$="Y"THEN10
  138. 778 IFZ$="N"THENEND
  139. 779 GOTO776
  140. 800 REM INSTRUCTIONS
  141. 801 PRINTCHR$(147):PRINTCHR$(142)
  142. 802 PRINTTAB(10)"INSTRUCTIONS"
  143. 803 PRINT" DATE  CK# TRANSACTION          AMT$  "
  144. 804 PRINT" 00XXX 000 12345678901234567890 000.00"
  145. 805 PRINT:PRINT"FOR THE COLUMNS ABOVE USE THE FOLLOWING"
  146. 806 PRINT:PRINT"DATE01JAN OR 11JAN"
  147. 808 PRINT:PRINT"CK# 921"
  148. 810 PRINT:PRINT"TRANSACTION UP TO 20 CHARACTERS"
  149. 812 PRINT:PRINT"AMT$123.45[146] OR  12.34[146]"
  150. 814 PRINT"USE NO $ SIGH USE SPACE BAR FOR "
  151. 815 PRINT"POSITIONING AREA TO TYPE"
  152. 816 PRINT:PRINT"ANY TIME ERROR LITE ON DISK FLASH'S"
  153. 817 PRINT"HIT RUN/STOP[146] KEY THEN TYPE GOTO 900"
  154. 818 PRINT"AND HIT THE RESTORE[146] KEY"
  155. 819 PRINT:PRINT"HIT ANY KEY TO GO ON"
  156. 820 GETL$:IFL$=""THEN820
  157. 821 GOTO10
  158. 900 REMCHANNEL ERROR  STATUS
  159. 902 PRINTCHR$(147):PRINT"ERROR CHANNEL OPEN"
  160. 904 INPUT#15,E$,B$,C$,D$
  161. 906 PRINTE$,B$,C$,D$
  162. 907 PRINT"IS DISK STATUS OK ? (Y/N)"
  163. 910 GETJ$:IFJ$=""THEN910
  164. 911 IFJ$="Y"THENRETURN
  165. 912 IFJ$="N"THEN10
  166. 913 GOTO900
  167. 1050 PRINTCHR$(142)
  168. 1051 PRINTCHR$(147):PRINT"":PRINTTAB(6):PRINT"MONTHLY CASH FLOW BAR CHART"
  169. 1055 PRINT"":CLR:CLOSE9:CLOSE15
  170. 1056 PRINTTAB(10);"SELECT BY NUMBER"
  171. 1058 PRINTTAB(10);"1[146] SEE A MONTHS CHART"
  172. 1059 PRINTTAB(10);"2[146] ADD A MONTHS CHART"
  173. 1060 PRINTTAB(10);"3[146] CONTINUE PROGRAM"
  174. 1061 PRINTTAB(10);"4[146] END"
  175. 1065 GETN$:IFN$=""THEN1065
  176. 1066 IFN$="1"THENGOTO7000
  177. 1067 IFN$="2"THEN2000
  178. 1068 IFN$="3"THEN10
  179. 1069 IFN$="4"THEN1071
  180. 1070 GOTO1050
  181. 1071 CLOSE9:CLOSE15
  182. 1072 END
  183. 1080 REM**INPUT INFO***
  184. 1081 STOP
  185. 2000 REM***SAVE DATA TO DISK****
  186. 2101 PRINTCHR$(147)
  187. 2102 PRINT"TYPE IN MONTH AND YEAR YOU WISH TO ADD"
  188. 2103 PRINTTAB(12):PRINT"A BAR CHART TO !"
  189. 2104 PRINTTAB(12):PRINT"EXAMPLE JAN84[146]"
  190. 2105 INPUTA$
  191. 2114 OPEN9,8,9,"0:"+A$+"B,W"
  192. 2115 GOSUB9000
  193. 2116 PRINT"    TYPE DATA IN THE FOLLOWING MANNER":PRINT""
  194. 2117 PRINTTAB(8);"1  MONTHS FOOD BILL"
  195. 2118 PRINTTAB(8);"2  MONTHS BILLS (IE TELEPHONE)"
  196. 2119 PRINTTAB(8);"3  CREDIT CARD PAYMENTS"
  197. 2120 PRINTTAB(8);"4  ENTERTAINMENT (IE BOWLING)"
  198. 2121 PRINTTAB(8);"5  OTHER (IE INSURANCE,AUTO,GAS)"
  199. 2124 FORI=1TO5
  200. 2125 PRINT"NUMBER";I;:INPUTPV(I)
  201. 2130 PRINT#9,PV(I)
  202. 2150 NEXTI
  203. 2160 CLOSE9:CLOSE15
  204. 2190 CLR:GOTO1050
  205. 2199 REM*************************
  206. 7000 REM***INPUT RECEIVE INFO***
  207. 8000 PRINTCHR$(147)
  208. 8010 MV=300
  209. 8030 N=.01:NN=MV
  210. 8040 IFNN>20THENN=N+1:NN=MV/N:GOTO8040
  211. 8041 PRINT"EXAMPLE     JAN84[146]"
  212. 8042 INPUT"MONTH YEAR";A$
  213. 8045 OPEN9,8,9,"@0:"+A$+"B,R"
  214. 8046 GOSUB9000
  215. 8052 FORI =1TO5
  216. 8053 INPUT#9,PV(I)
  217. 8054 PV(I)=INT(PV(I)/N)
  218. 8055 PRINTPV(I)
  219. 8056 NEXTI
  220. 8081 CLOSE9
  221. 8090 REM***END OF INPUT***
  222. 8100 PRINTCHR$(147);:FORPL=1TO5
  223. 8110 C$=CHR$(32)+CHR$(32)
  224. 8120 PRINTCHR$(19):FORV=0TO(20-PV(PL)):PRINT:NEXT
  225. 8130 FORPT=1TOPV(PL):PRINTCHR$(18);CHR$(28);SPC(PL*4);C$:NEXTPT
  226. 8140 NEXTPL
  227. 8150 FORLN=1TO39:PRINTCHR$(30);CHR$(100);:NEXT
  228. 8160 PRINTCHR$(5)
  229. 8161 A=1144:B=55416:C=1864:D=56136
  230. 8162 E=1664:F=55936:G=1784:H=56056
  231. 8163 I=1544:J=55816:K=1384:L=55656
  232. 8164 W=1264:X=55536:AA=1464:BB=55736
  233. 8170 PRINT"    FD  BL  CC  ET  ML"
  234. 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$
  235. 8173 PRINTTAB(25)"CHART READS"
  236. 8174 PRINTTAB(25)"FD=FOOD"
  237. 8175 PRINTTAB(25)"BL=BILLS"
  238. 8176 PRINTTAB(25)"CC=CREDIT CARD"
  239. 8177 PRINTTAB(25)"ET=ENTERTAINE"
  240. 8178 PRINTTAB(25)"ML=MISS (IE)"
  241. 8179 PRINTTAB(25)"   INSURANCE"
  242. 8180 PRINTTAB(25)"   AUTO EXP"
  243. 8500 REM0 1    2    3    4    5    6
  244. 8501 M=48:N=49:O=50:P=51:Q=52:R=53:S=54
  245. 8502 REM7 8    9
  246. 8503 T=55:U=56:V=57
  247. 8562 POKEA,P:POKEA+1,M:POKEA+2,M:POKEB,1:POKEB+1,1:POKEB+2,1
  248. 8563 POKEC,O:POKEC+1,R:POKED,1:POKED+1,1:POKEE,N:POKEE+1,M:POKEE+2,M
  249. 8564 POKEF,1:POKEF+1,1:POKEF+2,1
  250. 8565 POKEG,R:POKEG+1,M:POKEG+2,M:POKEH,1:POKEH+1,1
  251. 8566 POKEI,N:POKEI+1,R:POKEI+2,M:POKEJ,1:POKEJ+1,1:POKEJ+2,1
  252. 8567 POKEK,O:POKEK+1,M:POKEK+2,M:POKEL,1:POKEL+1,1:POKEL+2,1
  253. 8568 POKEW,O:POKEW+1,R:POKEW+2,M:POKEX,1:POKEX+1,1:POKEX+2,1
  254. 8569 POKEAA,N:POKEAA+1,T:POKEAA+2,R:POKEBB,1:POKEBB+1,1:POKEBB+2,1
  255. 8580 GETA$:IFA$=""THEN8580
  256. 8581 GOTO1050
  257. 9000 PRINT"[147]"
  258. 9020 OPEN15,8,15
  259. 9030 INPUT#15,M$,N$,B$,V$
  260. 9040 PRINT A$,N$
  261. 9042 PRINT"          ^      "
  262. 9045 PRINT"IF OK PRESS  Y"
  263. 9050 PRINT"IF NOT PRESS N"
  264. 9060 GETZ$:IFZ$=""THEN9060
  265. 9070 IFZ$="Y"THENRETURN
  266. 9080 IFZ$="N"THENGOTO1050
  267. 9090 GOTO9045
  268.