home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 117 / 117.d81 / scha (.txt) < prev    next >
Encoding:
Commodore BASIC  |  1994-01-01  |  9.9 KB  |  355 lines

  1. 0 w$="":dv=peek(186):ifdv<8thendv=8
  2. 1 ifa=0thena=1:load"scroll 9000",dv,1
  3. 2 remifa=1thena=2:load"notepad c900",dv,1
  4. 3 remifa=2thena=3:load"tool box c000",dv,1
  5. 4 poke55,0:poke56,144:clr
  6. 5 w$="":dv=peek(186):ifdv<8thendv=8
  7. 6 poke198,0:sp$="          ":max=37
  8. 7 dim m1$(max),m2$(20),d$(max),ch(max):fl=0:f1=0
  9. 8 fori=0tomax:d$(i)="0":next:d$(32)="108450"
  10. 10 poke53280,0:poke53281,0:ad=49152
  11. 21 readx:fori=1tox:readm1$(i):next
  12. 22 readx:fori=1tox:readm2$(i):next
  13. 23 readx:fori=1tox:readch(i):next
  14. 30 print"[147]";:gosub9500
  15. 40 sysad+21,"[212][193][216] [193][195][195][207][213][206][212][193][206][212]: [211]chedule [193]",0,10,0
  16. 43 sysad+18,0,1,38,19,7,0:sysad+15,1,2,38,20,160,14
  17. 46 gosub9000:gosub9500
  18. 50 x=0:y=1:d=36:w=38:tx=14:hi=1:bx=4:ex$=chr$(133):max=19:v=0
  19. 52 fori=217to242:pokei,peek(i)or128:next
  20. 54 poke214,y-1:print:print:poke646,tx
  21. 56 fori=1tomax:printtab(x+1)""left$(m1$(i+v)+sp$,w):next:r=1
  22. 57 hi=1:ifch(r+v)=1thenhi=10
  23. 58 r=1:r1=1:poke646,hi:poke214,r+y-1:print:printtab(x+1)""left$(m1$(r+v)+sp$,w)
  24. 62 getk$:ifk$=""then62
  25. 66 ifk$=chr$(13)then135
  26. 68 ifk$="[145]"thengosub800
  27. 70 ifk$=""thengosub850
  28. 79 ifk$="[136]"thengosub1000:ifk=10ork=1then52
  29. 88 ifk$="_"thengosub7000:rem exit
  30. 92 poke646,tx:poke214,r1+y-1:print:printtab(x+1)""left$(m1$(r1+v)+sp$,w)
  31. 93 hi=1:ifch(r+v)=1thenhi=10
  32. 94 poke646,hi:poke214,r+y-1:print:printtab(x+1)""left$(m1$(r+v)+sp$,w)
  33. 96 r1=r:goto62
  34. 98 :
  35. 135 ifch(r+v)=1then62
  36. 136 ifr+v=32then192
  37. 140 gosub9100:iflen(w$)=0then62
  38. 145 ww=val(w$):w$=str$(ww):d$(r+v)=w$
  39. 150 remgosub400
  40. 186 remgosub9500
  41. 187 m1$(r+v)=left$(m1$(r+v),27):d$(r+v)=right$(sp$+d$(r+v),10)
  42. 188 m1$(r+v)=m1$(r+v)+d$(r+v)
  43. 190 goto92
  44. 191 :
  45. 192 f1=notf1
  46. 193 iff1=0thenm1$(32)="[215]6. [202]oint, [211]ingle, [200][200], [209][215]     108450":d$(32)="108450"
  47. 194 iff1thenm1$(32)="[215]6. [205]arried [211]eparate           54225":d$(32)="54225"
  48. 195 goto187
  49. 200 gosub9300
  50. 210 ifval(w$)=0thenclose2:close15:gosub9000:return
  51. 220 open15,dv,15,"io":w$="scha."+w$
  52. 225 open2,dv,2,"0:"+w$+",s,r"
  53. 230 input#15,e,e$,e1,e2
  54. 234 poke214,21:print:print"                                    "
  55. 235 poke214,21:print:print"[196]isk [211]tatus:"e;e$:fori=1to2000:next
  56. 236 poke214,21:print:print"                                    "
  57. 240 ifethenclose2:close15:gosub9000:return
  58. 250 fori=0to36:input#2,d$(i):next
  59. 270 close2:close15
  60. 275 gosub9000:gosub9500:return
  61. 280 :
  62. 300 gosub9300:ifval(w$)=0then375
  63. 310 w$="scha."+w$:d$(0)=d$(36)
  64. 320 open15,dv,15,"s0:"+w$:close15
  65. 330 open15,dv,15,"io"
  66. 335 open2,dv,2,"0:"+w$+",s,w"
  67. 340 input#15,e,e$,e1,e2
  68. 344 poke214,21:print:print"                                    "
  69. 345 poke214,21:print:print"[196]isk [211]tatus: "e;e$:fori=1to2000:next
  70. 346 poke214,21:print:print"                                    "
  71. 350 ifethenclose2:close15:print"[145][198]ile [206]ot [211]aved":fori=1to2000:next:goto375
  72. 355 d$(0)=d$(36)
  73. 360 fori=0to36:print#2,d$(i):next
  74. 370 close2:close15
  75. 375 gosub9000:return
  76. 390 :
  77. 400 sysad+3,0:gosub9600:poke214,21:print:print"[195]alculating...   "
  78. 401 d$(3)=str$(int(val(d$(2))*.075)):d$(4)=str$(val(d$(1))-val(d$(3)))
  79. 402 ifval(d$(4))<0thend$(4)="0"
  80. 403 d$(8)=str$(val(d$(5))+val(d$(6))+val(d$(7)))
  81. 404 d$(13)=str$(val(d$(9))+val(d$(10))+val(d$(11))+val(d$(12)))
  82. 405 d$(17)=str$(val(d$(14))+val(d$(15))+val(d$(16)))
  83. 406 d$(22)=str$(val(d$(20))+val(d$(21)))
  84. 407 d$(24)=str$(int(val(d$(23))*.02+.5))
  85. 408 d$(25)="0":ifval(d$(22))<=val(d$(24))then410
  86. 409 d$(25)=str$(val(d$(22))-val(d$(24)))
  87. 410 tl=val(d$(4))+val(d$(8))+val(d$(13))+val(d$(17))+val(d$(18))+val(d$(19))
  88. 412 tl=tl+val(d$(25))+val(d$(26))
  89. 413 d$(27)=str$(tl)
  90. 415 d$(28)=str$(val(d$(4))+val(d$(12))+val(d$(18)))
  91. 420 tl=val(d$(27))-val(d$(28)):iftl=0thend$(36)=d$(27):goto460
  92. 425 d$(29)=str$(tl)
  93. 430 d$(30)=str$(int(tl*.8+.5))
  94. 435 tl=val(d$(31))-val(d$(32)):iftl<=0thend$(36)=d$(27):goto460
  95. 440 d$(33)=str$(tl)
  96. 445 d$(34)=str$(int(tl*.03+.5))
  97. 450 d$(35)=d$(34):ifval(d$(30))<val(d$(34))thend$(35)=d$(30)
  98. 455 d$(36)=str$(val(d$(27))-val(d$(35)))
  99. 460 gosub9500:return
  100. 465 :
  101. 500 poke781,23:sys59903
  102. 501 poke214,21:print:print"   [198]1=[204]oad  [198]3=[211]ave  [198]5=[208]rint  [198]7=[197]xit  "
  103. 502 sysad+15,1,2,38,20,32,14:n$="scha.n"
  104. 505 sys51456,1,2,38,20,3,0
  105. 510 ky=peek(197)
  106. 515 ifky=6thensysad+3,3:gosub9400:sysad+6,3:ifw$="y"thensysad+27,1,2,38,20,7
  107. 520 ifky=5thenopen15,dv,15,"s0:"+n$:close15:sys57812n$,dv
  108. 525 ifky=5thenpoke193,0:poke194,4:poke174,0:poke175,8:sys62954:goto505
  109. 530 ifky=4then poke147,0:sys57812n$,dv,1:sys62631:goto505:rem load
  110. 550 ifky=3thenreturn
  111. 555 goto505
  112. 560 :
  113. 600 sysad+3,1:print"[147]"tab(14)"[150]*** [200][197][204][208] ***"
  114. 601 sysad+18,0,1,38,21,1,0
  115. 602 h$="t.scha help":sysad+33
  116. 605 sysad+21,"[208]ress [210][197][212][213][210][206]     _ to [197]xit",24,13,0
  117. 606 open2,dv,2,h$+",p,r":sysad+30,14
  118. 610 poke198,0
  119. 611 sysad+21,"       [208]ress [210][197][212][213][210][206]       ",24,10,0
  120. 615 getk$:ifk$<>chr$(13)then615
  121. 620 poke198,0:close2:sysad+6,1:return
  122. 625 :
  123. 800 r=r-1:ifr<>0thenreturn
  124. 805 r=1:gosub875
  125. 806 v=v-1:ifv=-1thenv=0:return
  126. 807 poke646,tx:poke214,r+y-1:print:printtab(x+1)""left$(m1$(r+v+1)+sp$,w)
  127. 808 sys36864,x+1,x+w,y+1,y+max,1
  128. 810 return
  129. 815 :
  130. 850 r=r+1:ifr<=maxthenreturn
  131. 855 r=r-1:ifr>d then return
  132. 860 gosub875
  133. 861 v=v+1:ifv>d-maxthenv=v-1:return
  134. 862 poke646,tx:poke214,r+y-1:print:printtab(x+1)""left$(m1$(r+v-1)+sp$,w)
  135. 863 sys36864,x+1,x+w,y+1,y+max,0
  136. 865 return
  137. 870 :
  138. 875 poke646,tx:poke214,r1+y-1:print:printtab(x+1)left$(m1$(r1+v)+sp$,w)
  139. 880 poke646,tx:poke214,r+y-1:print:printtab(x+1)left$(m1$(r+v)+sp$,w)
  140. 885 return
  141. 890 :
  142. 900 gosub9400:ifw$<>"y"thengosub9000:return
  143. 905 poke214,21:print:print"[208]rinting...       ";
  144. 910 open4,4,7
  145. 915 print#4,sp$"[211][195][200][197][196][213][204][197] [193]"
  146. 920 print#4,sp$"-------------------------------------"
  147. 925 fori=1to4:print#4,sp$;m1$(i):next:print#4
  148. 926 fori=5to8:print#4,sp$;m1$(i):next:print#4
  149. 927 fori=9to13:print#4,sp$;m1$(i):next:print#4
  150. 928 fori=14to17:print#4,sp$;m1$(i):next:print#4
  151. 929 print#4,sp$;m1$(18):print#4
  152. 930 print#4,sp$;m1$(19):print#4
  153. 931 fori=20to25:print#4,sp$;m1$(i):next:print#4
  154. 932 print#4,sp$;m1$(26):print#4
  155. 933 fori=27to36:print#4,sp$;m1$(i):next
  156. 935 print#4:close4:gosub9000:return
  157. 936 :
  158. 1000 sysad+3,2
  159. 1005 sysad+18,10,5,20,12,13,1
  160. 1010 poke214,5:print
  161. 1015 printtab(11)"[153][204]oad [198]ile"
  162. 1020 printtab(11)"[211]ave [198]ile"
  163. 1025 printtab(11)"[208]rint [198]ile"
  164. 1030 printtab(11)"[200]elp"
  165. 1035 printtab(11)"[195]alculator"
  166. 1036 printtab(11)"[206]otepad"
  167. 1040 printtab(11)"[196]irectory"
  168. 1045 printtab(11)"[196]isk [196]rive #"+str$(dv)
  169. 1050 printtab(11)"[212]otals"
  170. 1055 printtab(11)"[195]alculate [211]heet"
  171. 1056 printtab(11)"[201]mport 1040, line 32"
  172. 1057 printtab(11)"[197]xit"
  173. 1060 sysad+12,11,6,30,12,13,1
  174. 1065 k=peek(828)
  175. 1070 onkgosub200,300,900,600,5000,500,6000,6100,2000,400,3000
  176. 1075 sysad+6,2:return
  177. 1080 :
  178. 2000 sysad+6,2
  179. 2005 print"[153][176][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]";
  180. 2010 print"[221]        [212]otals for [211]chedule [193]         [221]";
  181. 2015 print"[171][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][179]";
  182. 2020 print"[221][205]edical/[196]ental [197]xp.                   [221]";
  183. 2025 print"[221][212]axes                                 [221]";
  184. 2030 print"[221][201]nterest                              [221]";
  185. 2035 print"[221][195]ontributions                         [221]";
  186. 2040 print"[221][195]asualty/[212]heft                        [221]";
  187. 2045 print"[221][205]oving [197]xpenses                       [221]";
  188. 2050 print"[221][202]ob [197]xpenses                          [221]";
  189. 2055 print"[221][205]iscellaneous                         [221]";
  190. 2060 print"[221][212]otal                                 [221]";
  191. 2065 print"[171][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][179]";
  192. 2070 print"[221][193]djusted [212][207][212][193][204]                        [221]";
  193. 2075 print"[173][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][189]";
  194. 2080 fori=217to242:pokei,peek(i)or128:next
  195. 2085 gosub400
  196. 2090 print""
  197. 2095 printtab(28)right$(sp$+d$(4),10)
  198. 2100 printtab(28)right$(sp$+d$(8),10)
  199. 2105 printtab(28)right$(sp$+d$(13),10)
  200. 2110 printtab(28)right$(sp$+d$(17),10)
  201. 2115 printtab(28)right$(sp$+d$(18),10)
  202. 2120 printtab(28)right$(sp$+d$(19),10)
  203. 2125 printtab(28)right$(sp$+d$(25),10)
  204. 2130 printtab(28)right$(sp$+d$(26),10)
  205. 2135 printtab(28)right$(sp$+d$(27),10)
  206. 2140 print
  207. 2145 printtab(28)right$(sp$+d$(36),10)
  208. 2150 getk$:ifk$<>chr$(13)then2150
  209. 2155 sysad+6,2:return
  210. 2160 :
  211. 3000 gosub9300
  212. 3005 ifval(w$)=0thenclose2:close15:gosub9000:return
  213. 3010 open15,dv,15,"io":w$="1040."+w$
  214. 3015 open2,dv,2,"0:"+w$+",s,r"
  215. 3020 input#15,e,e$,e1,e2
  216. 3025 poke214,21:print:print"                                    "
  217. 3030 poke214,21:print:print"[196]isk [211]tatus:"e;e$:fori=1to2000:next
  218. 3035 poke214,21:print:print"                                    "
  219. 3040 ifethenclose2:close15:gosub9000:return
  220. 3045 input#2,d$(2):d$(23)=d$(2):d$(31)=d$(2)
  221. 3050 close2:close15
  222. 3055 gosub9000:gosub9500:return
  223. 3060 :
  224. 5000 sysad+6,2:gosub9600
  225. 5001 sysad+18,11,5,18,1,5,0
  226. 5002 sysad+18,11,8,18,6,5,0:sysad+33:poke214,8:print
  227. 5003 fori=1to6:printtab(12)""m2$(i):next
  228. 5004 ac=0:ac$="0":sysad+3,1
  229. 5005 ac$=right$(sp$+ac$,10):poke646,tx
  230. 5006 sysad+6,1:print""tab(19)ac$
  231. 5010 sysad+12,12,9,29,6,1,10
  232. 5020 k=peek(828)
  233. 5025 ifk=6thensysad+6,2:return
  234. 5030 ifk=1thenac=0:goto5065
  235. 5035 gosub9100
  236. 5040 p=val(w$):ifp=0then5005
  237. 5045 ifk=2thenac=ac+p
  238. 5050 ifk=3thenac=ac-p
  239. 5055 ifk=4thenac=ac*p
  240. 5060 ifk=5thenac=ac/p
  241. 5065 ac$=str$(ac):goto5005
  242. 5070 :
  243. 6000 print"[147][154]"
  244. 6005 sysad,dv
  245. 6007 sysad+21,"[208]ress [210][197][212][213][210][206]",24,10,0
  246. 6008 getk$:ifk$<>chr$(13)then6008
  247. 6015 :return
  248. 6020 :
  249. 6100 gosub9600:poke646,tx
  250. 6105 poke214,21:print:print"[197]nter [196]rive: ";
  251. 6110 sysad+9,2,0,32,1
  252. 6111 ifval(w$)<8orval(w$)>16then6115
  253. 6112 ww=val(w$):open1,ww,1:close1
  254. 6113 ifst=0thendv=ww
  255. 6114 ifst<>0thengosub9200
  256. 6115 gosub9000:return
  257. 6120 :
  258. 7000 gosub9600:poke646,tx
  259. 7005 poke214,21:print:print"[209]uit? [193]re [217]ou [211]ure? ";
  260. 7010 sysad+9,1,1,32,1
  261. 7015 ifw$<>"y"thengosub9000:return
  262. 7020 open15,dv,15,"r0:tax boot=tax boot":input#15,er%:close15
  263. 7025 ifer%<>63thenend
  264. 7030 poke646,peek(53281)
  265. 7035 print"[147]load"chr$(34)"tax boot"chr$(34)","dv
  266. 7040 print"run"
  267. 7045 poke631,13:poke632,13:poke633,13:poke198,3:end
  268. 9000 sysad+33
  269. 9001 poke214,21:print:print"[153][195][210][211][210] [203]eys/[210][197][212][213][210][206] to [211]elect [198]7=[205]enu _[197]xit"
  270. 9015 return
  271. 9020 :
  272. 9100 gosub9600:poke646,tx
  273. 9105 poke214,21:print:print"[197]nter: ";
  274. 9110 sysad+9,9,0,32,1
  275. 9115 gosub9000:return
  276. 9120 :
  277. 9200 sysad+3,3
  278. 9205 sysad+18,6,7,25,3,10,1
  279. 9210 sysad+21,"[201]nvalid [196]rive",9,10,1
  280. 9215 fort=1to1500:next
  281. 9220 sysad+6,3:return
  282. 9300 gosub9600:poke646,tx
  283. 9305 poke214,21:print:print"[197]nter [217]ear: ";
  284. 9310 sysad+9,4,0,32,1
  285. 9315 return
  286. 9320 :
  287. 9400 gosub9600:poke646,tx
  288. 9405 poke214,21:print:print"[208]rinter [210]eady? ";
  289. 9410 sysad+9,1,1,32,1
  290. 9415 return
  291. 9420 :
  292. 9500 fori=1to36
  293. 9505 m1$(i)=left$(m1$(i),27):d$(i)=right$(sp$+d$(i),10)
  294. 9510 m1$(i)=m1$(i)+d$(i):next
  295. 9515 return
  296. 9520 :
  297. 9600 fori=217to242:pokei,peek(i)or128:next
  298. 9602 poke781,22:sys59903
  299. 9603 poke781,23:sys59903
  300. 9605 return
  301. 9610 :
  302. 10000 open15,8,15,"s0:scha":close15:save"0:scha",8:end
  303. 10998 :
  304. 11099 rem menu1
  305. 11100 data 36
  306. 11101 data " 1. [205]edical and [196]ental [197]xp.         0"
  307. 11102 data " 2. [197]nter line 32 from 1040         0"
  308. 11103 data " 3. [205]ultiply line 2 * 7.5%          0"
  309. 11104 data " 4. [212][207][212][193][204] [205][197][196][201][195][193][204]                   0"
  310. 11201 data " 5. [211]tate and [204]ocal [212]axes           0"
  311. 11202 data " 6. [210]eal [197]state [212]axes               0"
  312. 11203 data " 7. [207]ther [212]axes                     0"
  313. 11204 data " 8. [212][207][212][193][204] [212][193][216][197][211]                     0"
  314. 11301 data "9a. [196]eductible [200]ome [205]ort.           0"
  315. 11302 data "9b. [207]ther [200]ome [201]nterest             0"
  316. 11303 data "10. [208]oints                          0"
  317. 11304 data "11. [201]nvestment [201]nterest             0"
  318. 11307 data "12. [212][207][212][193][204] [201][206][212][197][210][197][211][212]                  0"
  319. 11401 data "13. [195]ontributions by cash           0"
  320. 11402 data "14. [207]ther than cash/check           0"
  321. 11403 data "15. [195]arryover from prior yr         0"
  322. 11404 data "16. [212][207][212][193][204] [195][207][206][212][210][201][194][213][212][201][207][206][211]             0"
  323. 11501 data "17. [195][193][211][213][193][204][212][217]/[212][200][197][198][212] (4684)           0"
  324. 11601 data "18. [205][207][214][201][206][199] [197][216][208][197][206][211][197][211] (3903)          0"
  325. 11701 data "19. [213]nreimbursed exp.               0"
  326. 11702 data "20. [207]ther expenses                  0"
  327. 11703 data "21. [212]otal lines 19+20               0"
  328. 11704 data "22. [197]nter line 32 from 1040         0"
  329. 11705 data "23. [205]ultiply line 22 * 2%           0"
  330. 11706 data "24. [212][207][212][193][204] [194][213][211][201][206][197][211][211]                  0"
  331. 11801 data "25. [207][212][200][197][210]                           0"
  332. 12001 data "26. [212][207][212][193][204] [196][197][196][213][195][212][201][207][206][211]                0"
  333. 12002 data "[215]2. [204]ines 4 + 11 + 17               0"
  334. 12003 data "[215]3. [204]ine 1 - 2                      0"
  335. 12004 data "[215]4. [204]ine 3 * 80%                    0"
  336. 12005 data "[215]5. [204]ine 32, 1040                   0"
  337. 12006 data "[215]6. [202]oint, [211]ingle, [200][200], [209][215]      108450"
  338. 12007 data "[215]7. [204]ine 5 - 6                      0"
  339. 12008 data "[215]8. [204]ine 7 * 3%                     0"
  340. 12009 data "[215]9. [211]maller of line 4 or 8          0"
  341. 12010 data "[215]10. [193][196][202][213][211][212][197][196][160][196][197][196][213][195][212][201][207][206][211]            0"
  342. 12015 :
  343. 20000 data 6
  344. 20001 data "[218]ero [193]cc.         "
  345. 20002 data "[193]dd to [193]cc.       "
  346. 20003 data "[211]ubtract from [193]cc."
  347. 20004 data "[205]ultiply [193]cc.     "
  348. 20005 data "[196]ivide [193]cc.       "
  349. 20006 data "[197]xit              "
  350. 21000 data 37
  351. 21050 data 0,0,1,1,0,0,0,1,0,0
  352. 21100 data 0,0,1,0,0,0,1,0,0,0
  353. 21150 data 0,1,0,1,1,0,1,1,1,1
  354. 21200 data 0,0,1,1,1,1,1
  355.