home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 93 / 093.d81 / 2441 (.txt) < prev    next >
Commodore BASIC  |  2022-08-26  |  9KB  |  304 lines

  1. 0 dv=peek(186):ifdv<8thendv=8
  2. 1 ifa=0thena=1:load"help-2441",dv,1
  3. 2 ifa=1thena=2:load"notepad",dv,1
  4. 3 poke198,0
  5. 5 dim m0$(20),m1$(20),m2$(20),m3$(20),m4$(20)
  6. 6 dimm9$(20):sp$="          "
  7. 7 dimd$(36):fori=0to26:d$(i)="0":next:d$(3)="1":d$(5)="2400"
  8. 10 poke53280,0:poke53281,0:ad=36864
  9. 20 readx:fori=1tox:readm0$(i):next
  10. 21 readx:fori=1tox:readm1$(i):next
  11. 22 readx:fori=1tox:readm2$(i):next
  12. 24 readx:fori=1tox:readm3$(i):next
  13. 25 readx:fori=1tox:readm4$(i):next
  14. 30 readx:fori=1tox:readm9$(i):next
  15. 31 dimfs$(5):fori=1to2:readfs$(i):next:fs=1
  16. 32 dimsd$(5):fori=1to2:readsd$(i):next
  17. 33 print"";
  18. 40 sysad,"[212][160][193][160][216][160] [160][193] [195][160][195] [207] [213] [206] [212][160][193][160][206] [212]","[198]orm 2441"
  19. 50 ifpeek(198)<>1thenend
  20. 55 sysad+15:getdv$:getme$:gethi$:gettx$
  21. 56 dv=asc(dv$):m=asc(me$)and15:h=asc(hi$)and15:tx=asc(tx$)and15
  22. 60 sysad+18:poke198,0:gosub9000
  23. 70 sysad+3,8+64,10,8,m,h,tx,m0$(1),m0$(2),m0$(3),m0$(4),m0$(5),m0$(6),m0$(7),m0$(8)
  24. 80 getk$:k$=str$(asc(k$)-48):k=val(k$)
  25. 85 ifk>3thensysad+18:poke781,21:sys59903
  26. 90 onkgoto 200,300,900,1070,2070,3070,4070,40
  27. 95 goto70
  28. 100 :
  29. 200 gosub9300
  30. 210 ifval(w$)=0then275
  31. 220 open15,dv,15,"io":w$="2441."+w$
  32. 225 open2,dv,2,"0:"+w$+",s,r"
  33. 230 input#15,e,e$,e1,e2
  34. 234 poke214,21:print:print"                                    "
  35. 235 poke214,21:print:print"[196]isk [211]tatus:"e;e$:fori=1to2000:next
  36. 236 poke214,21:print:print"                                    "
  37. 240 ifethenclose2:close15:print"[145][198]ile [206]ot [204]oaded":fori=1to2000:next:goto275
  38. 250 fori=0to26:input#2,d$(i):next
  39. 255 print#2,fs:print#2,m1$(1)
  40. 270 close2:close15
  41. 275 gosub9000:goto70
  42. 280 :
  43. 300 gosub9300:ifval(w$)=0then375
  44. 310 w$="2441."+w$
  45. 320 open15,dv,15,"s0:"+w$:close15
  46. 330 open15,dv,15,"io"
  47. 335 open2,dv,2,"0:"+w$+",s,w"
  48. 340 input#15,e,e$,e1,e2
  49. 344 poke214,21:print:print"                                    "
  50. 345 poke214,21:print:print"[196]isk [211]tatus: "e;e$:fori=1to2000:next
  51. 346 poke214,21:print:print"                                    "
  52. 350 ifethenclose2:close15:print"[145][198]ile [206]ot [211]aved":fori=1to2000:next:goto375
  53. 360 fori=0to26:print#2,d$(i):next
  54. 365 input#2,fs:print#2,m1$(1)
  55. 370 close2:close15
  56. 375 gosub9000:goto70
  57. 390 :
  58. 400 d$(5)="2400":ifval(d$(3))>1thend$(5)="4800"
  59. 402 gosub700
  60. 405 d$(6)=d$(25)
  61. 410 d$(7)=str$(val(d$(5))-val(d$(6)))
  62. 415 d$(8)=d$(4):ifval(d$(4))>val(d$(7))thend$(8)=d$(7)
  63. 420 iffs=1thend$(11)=d$(9):ifval(d$(9))>val(d$(10))thend$(11)=d$(10)
  64. 425 iffs=1thenifval(d$(8))<val(d$(11))thend$(11)=d$(8)
  65. 427 iffs=1then435
  66. 430 d$(11)=d$(8):ifval(d$(8))>val(d$(9))thend$(11)=d$(9)
  67. 435 d$(14)=str$(int(val(d$(11))*val(d$(13))/100+.5))
  68. 440 d$(16)=str$(val(d$(14))+val(d$(15)))
  69. 441 return
  70. 480 :
  71. 500 sysad+6,2:sysad+9,1
  72. 505 sys50176,1,3,38,20,tx,0
  73. 510 ky=peek(197)
  74. 515 ifky=3thensys51712,1,3,38,20,7:goto505
  75. 520 ifky=6thenopen15,dv,15,"s0:"+n$:close15:sysad+12,n$,1:goto505
  76. 530 ifky=5then poke147,0:sys57812n$,dv,1:sys62631:sysad+9,1:goto505
  77. 550 sysad+6,1:sysad+9,2:return
  78. 560 :
  79. 600 sysad+6,2:poke646,tx:print"[147]"tab(14)"*** [200][197][204][208] ***"
  80. 601 poke646,m
  81. 602 print"[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]";
  82. 603 fori=1to21:print"[221]                                      [221]";:next
  83. 604 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]";:poke646,tx
  84. 605 print"              [208]ress [210][197][212][213][210][206]";:poke52346,tx
  85. 606 open2,dv,2,h$+",p,r":sys51968
  86. 610 poke198,0
  87. 615 getk$:ifk$<>chr$(13)then615
  88. 620 close2:sysad+9,2:return
  89. 625 :
  90. 700 d$(19)=str$(val(d$(17))-val(d$(18)))
  91. 705 d$(21)=d$(20):ifval(d$(20))>val(d$(19))thend$(21)=d$(19)
  92. 710 iffs=1thend$(24)=d$(22):ifval(d$(22))>val(d$(23))thend$(24)=d$(23):goto720
  93. 715 d$(24)=d$(22)
  94. 720 a=val(d$(21)):b=val(d$(24)):c=val(sd$(fs)):d=0
  95. 725 ifa<=bthend=a:ifa<=cthend=a:goto750
  96. 730 ifa<=bthend=a:ifa>cthend=c:goto750
  97. 735 ifa>bthend=b:ifb<=cthend=b:goto750
  98. 740 ifa>bthend=b:ifb>cthend=c
  99. 750 d$(25)=str$(d)
  100. 755 d$(26)=str$(val(d$(19))-val(d$(25)))
  101. 760 return
  102. 765 :
  103. 900 gosub9400:ifw$<>"y"thengosub9000:goto70
  104. 905 poke214,22:print:print"[208]rinting...      "
  105. 910 open4,4,7
  106. 915 print#4,sp$;"[198]orm 2441"
  107. 920 print#4,sp$;"-------------------------------------"
  108. 921 print#4,sp$;left$(m1$(1),27)
  109. 922 fori=2to8:print#4,sp$;left$(m1$(i),27)+right$(sp$+d$(i),10):next:print#4
  110. 925 fori=1to8:print#4,sp$;left$(m2$(i),27)+right$(sp$+d$(i+8),10):next:print#4
  111. 930 fori=1to5:print#4,sp$;left$(m3$(i),27)+right$(sp$+d$(i+16),10):next:print#4
  112. 935 fori=1to5:print#4,sp$;left$(m4$(i),27)+right$(sp$+d$(i+21),10):next:print#4
  113. 990 print#4:close4:gosub9000:goto70
  114. 995 :
  115. 1000 sysad+3,12+64,1,8,m,h,tx,m1$(1),m1$(2),m1$(3),m1$(4),m1$(5),m1$(6),m1$(7),m1$(8),m1$(9),m1$(10),m1$(11),m1$(12)
  116. 1010 getk$:k$=str$(asc(k$)-48):k=val(k$)
  117. 1020 ifk=12thensysad+18:goto70
  118. 1025 ifk=11thenh$="2441.h1":gosub600:goto1000
  119. 1030 ifk=9thenn$="2441.n1":gosub500:goto1000
  120. 1035 ifk=10thengosub9500:goto1000
  121. 1045 ifk=5then1000
  122. 1046 ifk>6then1000
  123. 1047 ifk=1thengosub1500:gosub400:goto1000
  124. 1050 gosub9100:iflen(w$)=0then1000
  125. 1055 d$(k)=w$
  126. 1060 ifk=4thend$(20)=d$(4)
  127. 1067 gosub400
  128. 1070 fori=2to8:m1$(i)=left$(m1$(i),27)+right$(sp$+d$(i),10):next
  129. 1075 goto1000
  130. 1080 :
  131. 1500 fs=fs+1:iffs=3thenfs=1
  132. 1505 m1$(1)=fs$(fs)
  133. 1510 return
  134. 1515 :
  135. 2000 sysad+3,12+64,1,8,m,h,tx,m2$(1),m2$(2),m2$(3),m2$(4),m2$(5),m2$(6),m2$(7),m2$(8),m2$(9),m2$(10),m2$(11),m2$(12)
  136. 2010 getk$:k$=str$(asc(k$)-48):k=val(k$)
  137. 2020 ifk=12thensysad+18:goto70
  138. 2025 ifk=11thenh$="2441.h2":gosub600:goto2000
  139. 2030 ifk=9thenn$="2441.n2":gosub500:goto2000
  140. 2035 ifk=10thengosub9500:goto2000
  141. 2040 ifk=3then2000
  142. 2042 ifk=6then2000
  143. 2043 ifk=8then2000
  144. 2050 gosub9100:iflen(w$)=0then2000
  145. 2055 d$(k+8)=w$
  146. 2056 ifk=1thend$(22)=d$(9)
  147. 2057 ifk=2thend$(23)=d$(10)
  148. 2060 gosub400
  149. 2070 fori=1to8:m2$(i)=left$(m2$(i),27)+right$(sp$+d$(i+8),10):next
  150. 2087 goto2000
  151. 2090 :
  152. 3000 sysad+3,9+64,1,8,m,h,tx,m3$(1),m3$(2),m3$(3),m3$(4),m3$(5),m3$(6),m3$(7),m3$(8),m3$(9)
  153. 3010 getk$:k$=str$(asc(k$)-48):k=val(k$)
  154. 3020 ifk=9thensysad+18:goto70
  155. 3025 ifk=8thenh$="2441.h3":gosub600:goto3000
  156. 3030 ifk=7thengosub9500:goto3000
  157. 3035 ifk=6thenn$="2441.n3":gosub500:goto3000
  158. 3040 ifk=3then3000
  159. 3041 ifk=5then3000
  160. 3050 gosub9100:iflen(w$)=0then3000
  161. 3052 d$(k+16)=w$
  162. 3053 ifk=4thend$(4)=d$(20)
  163. 3060 gosub400
  164. 3070 fori=1to5:m3$(i)=left$(m3$(i),27)+right$(sp$+d$(i+16),10):next
  165. 3085 goto3000
  166. 3090 :
  167. 4000 sysad+3,9+64,1,8,m,h,tx,m4$(1),m4$(2),m4$(3),m4$(4),m4$(5),m4$(6),m4$(7),m4$(8),m4$(9)
  168. 4010 getk$:k$=str$(asc(k$)-48):k=val(k$)
  169. 4020 ifk=9thensysad+18:goto70
  170. 4025 ifk=8thenh$="2441.h3":gosub600:goto4000
  171. 4030 ifk=7thengosub9500:goto4000
  172. 4035 ifk=6thenn$="2441.n4":gosub500:goto4000
  173. 4040 ifk>2then4000
  174. 4050 gosub9100:iflen(w$)=0then4000
  175. 4055 d$(k+21)=w$
  176. 4056 ifk=1thend$(9)=d$(22)
  177. 4057 ifk=2thend$(10)=d$(23)
  178. 4060 gosub400
  179. 4070 fori=1to5:m4$(i)=left$(m4$(i),27)+right$(sp$+d$(i+21),10):next
  180. 4085 goto4000
  181. 4090 :
  182. 9000 poke214,21:print:print"[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]";
  183. 9005 print"[221]  [213]se [195]ursor [203]eys/[210][197][212][213][210][206] to select.   [221]";
  184. 9010 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]";:poke2023,125:poke56295,1
  185. 9015 return
  186. 9100 gosub9600:poke646,tx
  187. 9105 poke214,22:print:print"[197]nter: ";
  188. 9110 sys49152+3,tx,tx,9
  189. 9115 gosub9000:return
  190. 9200 poke214,21:print:print"[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]";
  191. 9205 print"[221]             [208]ress [210][197][212][213][210][206]             [221]";
  192. 9210 print"[173][192][192][192][192][192][192][192][192][192][192][192][192][192][19