home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 11 / 011.d81 / presenter (.txt) < prev    next >
Encoding:
Commodore BASIC  |  1985-01-01  |  8.8 KB  |  245 lines

  1. 1 rem sidirq presenter 12/28/84
  2. 2 ifpeek(49153)=11thenifpeek(49154)=192then5
  3. 3 load"sidirq v3",8,1
  4. 5 ifpeek(51201)<>12orpeek(51202)<>200orpeek(52222)<>5then7
  5. 6 goto8
  6. 7 load"routines v4",8,1
  7. 8 ifpeek(927)=248then10
  8. 9 load"menu.sp1",8,1
  9. 10 poke49161,0:poke49162,160:old$="":goto6000
  10. 1000 poke646,c%(2):print"[147]"tl$:pokev+33,c%(1):poke1021,17:lp=1:poke646,c%(4)
  11. 1010 printwt$;:fori=2to17:print"[221]"spc(38)"[221]";:next:printwb$;:poke646,c%(3)
  12. 1020 print"[176][192][192][192][192][192][192][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]";
  13. 1025 print"[221]f1[146][208]age [194]ack  [221][208][146]rinter[221][202]oystick[146] scrolls[221]";
  14. 1030 print"[221]f3[146][211]croll [194]ack[221][195][146]olors [221]    ([208]ort 1)    [221]";
  15. 1035 print"[221]f5[146][211]croll [198]wd.[221]"mu$"  [171][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][179]";
  16. 1040 print"[221]f7[146][208]age [198]wd.  [221][216][146]=[197]xit [221]"spc((16-len(mo$))/2)mo$tab(39)"[221]";
  17. 1045 print"[173][192][192][192][192][192][192][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]";
  18. 1050 fori=217to242:pokei,peek(i)or128:next:poke646,c%(5):sys51203
  19. 1055 poke2023,125:poke56295,c%(3):return
  20. 1100 poke783,peek(783)and254:poke781,y%:poke782,x%:sys65520:return
  21. 1200 input#15,er%,er$,et%,es%
  22. 1205 if(er%>19ander%<30)orer%=66orer%=67orer%=71orer%=73then1250
  23. 1210 return
  24. 1250 print"[147][212]here has been a disk error."
  25. 1251 print
  26. 1252 print"[208]ress <space> to continue."
  27. 1253 getk$:if k$=""then 1253
  28. 1261 run
  29. 1300 ifpeek(788)<>49thenreturn
  30. 1305 pokes+4,20:pokes,rnd(.)*256:pokes+1,rnd(.)*256:pokes+14,rnd(.)*256
  31. 1310 pokes+15,rnd(.)*256:pokes+4,21:return
  32. 1400 gosub1300:fori=27to24step-1:waitr,c:poker,i:next
  33. 1405 fori=24to29:waitr,c:waitr,c:poker,i:next
  34. 1410 fori=29to27step-1:waitr,c:waitr,c:waitr,c:waitr,c:poker,i:next:return
  35. 1450 gosub1300:fori=27to31:waitr,c:poker,i:next
  36. 1455 fori=31to25step-1:waitr,c:waitr,c:poker,i:next
  37. 1460 fori=25to27:waitr,c:waitr,c:waitr,c:waitr,c:poker,i:next:return
  38. 1500 iff$=old$thenreturn
  39. 1501 old$=f$
  40. 1502 open8,8,8,f$:gosub1200:ifer%=62thenreturn
  41. 1505 x%=3:y%=10:gosub1100:print"[158][204]oading:":
  42. 1510 ll=1:poke781,8:sys65478
  43. 1515 sysli,b$:t$(ll)=left$(b$,38):ifst=.thenll=ll+1:goto1515
  44. 1520 sys65484:close8:gosub1200:fori=ll+1toll+20:t$(i)="":next:return
  45. 2000 getk$:j%=notpeek(j)and31:ifk$=""andj%=.then2000
  46. 2010 ifk$="[145]"ork$=""ork$="[134]"orj%=1thengosub2100:goto2000
  47. 2015 ifk$=""ork$="[157]"ork$="[135]"orj%=2thengosub2200:goto2000
  48. 2020 ifk$="[133]"then2300
  49. 2025 ifk$="[136]"then2400
  50. 2030 ifk$="p"ork$="[208]"ork$="[175]"ork$=""then50000
  51. 2035 ifk$="c"ork$="[195]"ork$="[188]"ork$=""then2500
  52. 2040 ifk$="m"ork$="[205]"ork$="[167]"thenmu%=-1:gosub2700:mu$="[209][146]uiet":goto2800
  53. 2045 ifk$="q"ork$="[209]"ork$="[171]"thenmu%=0:gosub2705:mu$="[205][146]usic":goto2800
  54. 2050 ifk$="x"ork$="[216]"ork$="[189]"ork$=""orj%=16then5000
  55. 2055 goto2000
  56. 2100 iflp=1then1450
  57. 2105 lp=lp-1:sys51209:x%=1:y%=2:gosub1100:printt$(lp):return
  58. 2200 iflp+16>llthen1400
  59. 2205 lp=lp+1:sys51206:x%=1:y%=17:gosub1100:printt$(lp+15):return
  60. 2300 fori=1to15:gosub2100:next:goto2000
  61. 2400 fori=1to15:gosub2200:next:goto2000
  62. 2500 poke646,c%(2):print"            [195]olor [211]election            ":r%=.
  63. 2505 poke646,c%(5):sys51200:print"[198]rom here, you can select the colors
  64. 2510 [153]"that you find most ledgible for read-
  65. 2515 print"ing text.  [212]hese colors are only ac-
  66. 2520 [153]"tive when you are actually reading an
  67. 2525 print"article.  [217]ou may change the colors of
  68. 2530 [153]"any of the following:
  69. 2535 print"      [212]he [194]order: ";:poke646,c%(.):print"  [146]";:poke646,c%(5):print"_"
  70. 2540 print"  [212]he [194]ackground:
  71. 2545 [153]"  (NULL)he (NULL)itle (NULL)ine: ";:[151]646,c%(2):[153]"  ":[151]646,c%(5)
  72. 2550 [153]"(NULL)he lenommand (NULL)enu: ";:[151]646,c%(3):[153]"  ":[151]646,c%(5)
  73. 2555 [153]"    (NULL)he (NULL)ext peekox: ";:[151]646,c%(4):[153]"  ":[151]646,c%(5)
  74. 2560 [153]" (NULL)he (NULL)ext right$tself:   ":[151]646,c%(3):[153]wt$;
  75. 2565 [153]"(NULL) (NULL)se len(NULL)(NULL)(NULL) keys/mid$oystick to move the   (NULL)";
  76. 2570 [153]"(NULL) arrows, and (NULL)pacebar/peekutton to exit. (NULL)";
  77. 2575 [129]i[178]1[164]2:[153]"(NULL)                                      (NULL)";:[130]
  78. 2580 [153][200](wb$,39);:[129]i[178]217[164]242:[151]i,[194](i)[176]128:[130]:[141]1055
  79. 2585 x%[178]3:y%[178]22:[141]1100:[153]"";:[129]i[178].[164]15:[151]646,i:[153]"  ";:[130]:[153]
  80. 2590 x%[178]4[170]c%(r%)[172]2:y%[178]23:[141]1100:[151]646,c%(3):[153]"^";
  81. 2600 [161]k$:j%[178][168][194](j)[175]31:[139]k$[178]""[175]j%[178].[167]2600
  82. 2601 [139]k$[178]"on"[176]j%[178]1[167]2650
  83. 2602 [139]k$[178]""[176]j%[178]2[167]2670
  84. 2603 [139]k$[178]"cmd"[176]j%[178]4[167]2610
  85. 2604 [139]k$[178]""[176]j%[178]8[167]2630
  86. 2605 [139]j%[178]16[167]5999
  87. 2606 [137]2600
  88. 2610 x%[178]4[170]c%(r%)[172]2:y%[178]23:[141]1100:[153]" "
  89. 2612 c%(r%)[178]c%(r%)[171]1:[139]c%(r%)[179].[167]c%(r%)[178]15
  90. 2615 [139]r%[177]1[167][139]c%(r%)[178]c%(1)[167]2612
  91. 2617 [139]r%[178]1[167][139]c%(1)[178]c%(2)[176]c%(1)[178]c%(3)[176]c%(1)[178]c%(4)[176]c%(1)[178]c%(5)[167]2612
  92. 2618 x%[178]4[170]c%(r%)[172]2:y%[178]23:[141]1100:[153]"^"
  93. 2620 [145]r%[170]1[141]2810,2820,2830,2840,2850,2860
  94. 2622 [139]r%[179][177]1[167]x%[178]19:y%[178]10[170]r%:[141]1100:[151]646,c%(r%):[153]"  ":[151]646,c%(5)
  95. 2625 [137]2600
  96. 2630 x%[178]4[170]c%(r%)[172]2:y%[178]23:[141]1100::[153]" "
  97. 2632 c%(r%)[178]c%(r%)[170]1:[139]c%(r%)[177]15[167]c%(r%)[178].
  98. 2635 [139]r%[177]1[167][139]c%(r%)[178]c%(1)[167]2632
  99. 2637 [139]r%[178]1[167][139]c%(1)[178]c%(2)[176]c%(1)[178]c%(3)[176]c%(1)[178]c%(4)[176]c%(1)[178]c%(5)[167]2632
  100. 2640 [137]2618
  101. 2650 x%[178]21:y%[178]10[170]r%:[141]1100:[153]" ":x%[178]4[170]c%(r%)[172]2:y%[178]23:[141]1100:[153]" "
  102. 2652 r%[178]r%[171]1:[139]r%[179].[167]r%[178]5
  103. 2655 x%[178]21:y%[178]10[170]r%:[141]1100:[151]646,c%(5):[153]"_":x%[178]4[170]c%(r%)[172]2:y%[178]23:[141]1100
  104. 2656 [151]646,c%(3):[153]"^":[137]2600
  105. 2670 x%[178]21:y%[178]10[170]r%:[141]1100:[153]" ":x%[178]4[170]c%(r%)[172]2:y%[178]23:[141]1100:[153]" "
  106. 2672 r%[178]r%[170]1:[139]r%[177]5[167]r%[178].
  107. 2675 [137]2655
  108. 2700 [139][194](788)[178]49[167][151]s[170]24,15:[158]49158
  109. 2702 [142]
  110. 2705 [139][194](788)[178]49[167]2715
  111. 2710 [158]49155:[151]s[170]24,00
  112. 2715 [142]
  113. 2800 x%[178]15:y%[178]22:[141]1100:[151]646,c%(3):[153]mu$:[151]646,c%(5):[137]2000
  114. 2810 [151]v[170]32,c%(.):[142]
  115. 2820 [151]v[170]33,c%(1):[142]
  116. 2830 [151]1020,.:[151]1021,.:[151]1022,.:[151]1023,39:[151]646,c%(2):[158]51203
  117. 2831 [151]1020,2:[151]1021,17:[151]1022,1:[151]1023,38:[151]646,c%(5):[142]
  118. 2840 [151]1020,19:[151]1021,21:[151]1022,.:[151]1023,39:[151]646,c%(3):[158]51203
  119. 2841 [151]1020,24:[151]1021,24:[158]51203:[151]1020,2:[151]1021,17:[151]1022,1
  120. 2842 [151]1023,38:[151]56176,c%(3):[151]56215,c%(3):[151]56216,c%(3):[151]56255,c%(3)
  121. 2843 [151]646,c%(5):[142]
  122. 2850 [151]646,c%(4):[151]1020,1:[151]1021,1:[151]1022,.:[151]1023,39:[158]51203
  123. 2851 [151]1020,18:[151]1021,18:[158]51203:cm[178]55296:tn[178]39:ft[178]40:f[178]c%(4):[129]i[178]2[164]17
  124. 2852 [151]cm[170]i[172]ft,f:[151]cm[170]i[172]ft[170]tn,f:[130]:[151]1020,2:[151]1021,17:[151]1022,1
  125. 2853 [151]1023,38:[151]646,c%(5):[142]
  126. 2860 [151]646,c%(5):[158]51203:[129]i[178].[164]4:x%[178]19:y%[178]i[170]10:[141]1100:[151]646,c%(i)
  127. 2865 [139]i[179][177]1[167][153]"";
  128. 2870 [153]"  ":[130]:[151]646,c%(5):[142]
  129. 2900 x%[178]0:y%[178]2:[141]1100:[158]51200:[129]i[178]lp[164]lp[170]15:[153]""t$(i):[130]:[142]
  130. 5000 [141]2705:[153]"load";:[151]v[170]33,.:[153]"print "mt$[163]39[171][195](mo$))mo$
  131. 5005 [153]wt$;:[129]i[178]2[164]18:[153]"(NULL)"[166]38)"(NULL)";:[130]:[153]wb$;
  132. 5010 [153]"open"wt$"(NULL) len(NULL)(NULL)(NULL)wait keys or mid$oystickwait to scroll menu (NULL)";
  133. 5015 [153]"(NULL) (NULL)(NULL)atnlenvalwait bar or peekuttonwait to read article  (NULL)";
  134. 5020 [153]"(NULL) (NULL)wait key to exit to table of contents   (NULL)";
  135. 5022 [153][200](wb$,39);:[151]2023,125:[151]56295,3
  136. 5025 [129]i[178]217[164]242:[151]i,[194](i)[176]128:[130]
  137. 5030 [151]1020,2:[151]1021,18:[151]1022,1:[151]1023,38:[158]51200:[153]"for";:[158]51203
  138. 5035 x%[178]1:y%[178]10:[141]1100:[153]"sys                                      stop";
  139. 5040 [151]2040,14:[151]v,60:[151]v[170]1,128:[151]v[170]29,1:[151]v[170]39,7:[151]v[170]21,1
  140. 5045 [141]5500
  141. 5050 [161]a$:j%[178][168][194](j)[175]31:[139]j%[178].[175]a$[178]""[167]5050
  142. 5055 [139]a$[178]"on"[176]a$[178]""[176]a$[178]"dim"[176]a$[178]"run"[176]j%[178]1[167]5100
  143. 5060 [139]a$[178]""[176]a$[178]"cmd"[176]a$[178]"read"[176]a$[178]"if"[176]j%[178]2[167]5200
  144. 5065 [139]a$[178]"input"[176]a$[178]"goto"[167]5300
  145. 5070 [139]a$[178]"let"[176]a$[178]"restore"[167]5400
  146. 5075 [139]j%[178]16[167]5900
  147. 5080 [139]a$[178]"x"[176]a$[178]"(NULL)"[176]a$[178]"exp"[167][151]v[170]21,.:[137]5600
  148. 5090 [137]5050
  149. 5100 [139]mp[178]1[167][141]1450:[137]5050
  150. 5105 [158]51209:[158]51209:mp[178]mp[171]1
  151. 5110 [139]mp[179]5[167][151]1021,2[172](5[171]mp):[158]51200:[151]1021,18:[137]5050
  152. 5115 x%[178]12:y%[178]2:[141]1100:[153]"for"m$(mp[171]4,.);:[137]5050
  153. 5200 [139]mp[178]ml[167][141]1400:[137]5050
  154. 5205 [158]51206:[158]51206:mp[178]mp[170]1
  155. 5210 [139]mp[177]ml[171]4[167][151]1020,2[172](6[170](ml[171]mp)):[158]51200:[151]1020,2:[137]5050
  156. 5215 x%[178]12:y%[178]18:[141]1100:[153]"for"m$(mp[170]4,.);:[137]5050
  157. 5300 mp[178]1:[141]5500:[137]5050
  158. 5400 mp[178]ml:[141]5500:[137]5050
  159. 5500 [158]51200:[153]"for";:[139]mp[179]5[167]5520
  160. 5505 [129]i[178]mp[171]4[164]mp[170]4:[139]i[178]mp[167][153]"sys";
  161. 5510 [153][163]12)m$(i,.)"":[139]i[178]mp[167][153]"for";
  162. 5515 [130]:[142]
  163. 5520 [129]i[178]mp[164]4:[153]"";:[130]:[129]i[178]1[164]mp[170]4:[139]i[178]mp[167][153]"sys";
  164. 5525 [153][163]12)m$(i,.)"":[139]i[178]mp[167][153]"for";
  165. 5530 [130]:[142]
  166. 5600 [153]"loadstr$ocking with (NULL)able of lenontents";
  167. 5605 [141]63002:[141]63000
  168. 5610 [151]198,0 :[151]597,1
  169. 5615 [151]44,8:[138]:[128]
  170. 5620 :
  171. 5630 :
  172. 5900 :
  173. 5902 f$[178]m$(mp,1):tl$[178]m$(mp,.):[151]v[170]21,.:[141]1500:[139]er%[178]62[167][160]8:[137]5000
  174. 5910 [151]s[170]4,.:[151]s[170]11,.:[151]s[170]18,.
  175. 5915 [139]mu%[175][194](788)[178]49[167][158]49152:mu%[178][171]1:[151]s[170]24,15
  176. 5999 [141]1000:[141]2900:[137]2000
  177. 6000 v[178]53248:r[178]v[170]17:c[178]128:s[178]v[170]1024:j[178]56321:lp[178]1:li[178]52016:mu%[178][171]1:[158]52176
  178. 6002 [151]s[170]24,15:[151]s[170]5,96:[151]s[170]6,246
  179. 6005 [159]15,8,15:[134]t$(600),m$(32,1),c(4):[129]i[178]1[164]4:[135]c(i):[130]:mu$[178]"(NULL)waituiet
  180. 6006 data2,5,6,7
  181. 6010 poke1020,2:poke1021,17:poke1022,1:poke1023,38:poke49665,4:f%=usr(65535)
  182. 6012 print"[147]":pokes+23,.:pokes+4,128
  183. 6015 wl$="[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]":wt$="[176]"+wl$+"[174]":wb$="[173]"+wl$+"[189]"
  184. 6020 m$="features"+mid$(str$(f%),2,2):open8,8,8,m$:gosub1200:ml=1
  185. 6025 poke781,8:sys65478:sysli,b$:mt$=b$+"":gosub1200
  186. 6027 poke781,8:sys65478:sysli,b$:mo$=b$+"":gosub1200
  187. 6030 fori=.to1:poke781,8:sys65478:sysli,b$:m$(ml,i)=b$+""
  188. 6032 ifstthengosub1200:ifer%=.andst>63then6037
  189. 6033 next
  190. 6035 ml=ml+1:goto6030
  191. 6037 dimc%(5):fori=1to5:readc%(i):next:c%(.)=c(f%/10):data1,2,6,5,
  192. 6040 close8:sys65484:mp=1:pokes+4,.:pokes+23,.:pokes+5,9:pokes+6,.:goto5000
  193. 50000 print"[147][144]          [204][207][193][196][211][212][193][210][160][200]ardcopy             "
  194. 50005 print"[196]o you have:":print:print"  [195]ommodore 1525"
  195. 50010 print"  [195]ommodore 1526":print"  [195]ommodore [205][208][211] 801"
  196. 50015 print"  [212]ymac [195]onnection"
  197. 50020 print"  [195]ard/?[160][193], [194], or +[199]"
  198. 50025 print"  [194]us[195]ard [201][197][197][197]"
  199. 50030 print"or any other 1525-compatible setup?"
  200. 50035 poke198,.:wait198,1:geta$
  201. 50040 ifa$="y"ora$="[217]"ora$=""ora$="[183]"thenpa=4:sa=7:c8%=-1:goto51000
  202. 50045 ifa$<>"n"anda$<>"[206]"anda$<>""anda$<>"[170]"then50035
  203. 50100 print"[147][196]o you have a [195]ommodore 1520?"
  204. 50105 poke198,.:wait198,1:geta$
  205. 50110 ifa$="y"ora$="[217]"ora$=""ora$="[183]"thenpa=6:sa=0:goto51000
  206. 50115 ifa$<>"n"anda$<>"[206]"anda$<>""anda$<>"[170]"then50105
  207. 50200 print"[147][196]o you have an old [195]ommodore 1515?"
  208. 50205 poke198,.:wait198,1:geta$
  209. 50210 ifa$="y"ora$="[217]"ora$=""ora$="[183]"thenpa=4:sa=7:c8%=0:goto55000
  210. 50215 ifa$<>"n"anda$<>"[206]"anda$<>""anda$<>"[170]"then50205
  211. 50950 print"[147][201]n that case you just won't get any"
  212. 50955 print"hardcopy today, thank you!"
  213. 50960 fori=1to5000:next:goto5999
  214. 51000 ifc8%=.then55000
  215. 51005 print"[147][217]ou have a choice between having your"
  216. 51010 print"hardcopy in one column as it appears on"
  217. 51015 print"the screen, or in two columns using the"
  218. 51020 print"full width of your printer.  [196]o you want";
  219. 51025 print"two-column hardcopy?"
  220. 51035 poke198,.:wait198,1:geta$
  221. 51040 ifa$="y"ora$="[217]"ora$=""ora$="[183]"then55000
  222. 51045 ifa$<>"n"anda$<>"[206]"anda$<>""anda$<>"[170]"then51035
  223. 51050 c8%=.:goto55000
  224. 55000 print"[147][201] am now ready to print your comments"
  225. 55005 print"to the printer hooked up as device"pa
  226. 55010 print"secondary address"sa"[157].  [208]lease make sure"
  227. 55015 print"that the printer is on-line and ready to";
  228. 55020 print"go, then press the space bar.":poke198,.:wait198,1:poke198,.
  229. 55022 ifmu%thengosub2705
  230. 55025 open4,pa,sa:lc=.:cl=1:ifc8%then55100
  231. 55030 fori=1toll:lc=lc+1:iflc>60thenforj=1to6:print#4," ":next:lc=1
  232. 55035 print#4,t$(i):next:fori=llto65:print#4," ":next:goto55160
  233. 55100 ifll-cl<120then55150
  234. 55105 fori=cltocl+59:t$=t$(i):print#4,t$spc(42-len(t$))t$(i+60):next
  235. 55110 fori=1to6:print#4," ":next:cl=cl+120:goto55100
  236. 55150 ch%=(ll-cl+2)/2:fori=cltocl+ch%-1:t$=t$(i):print#4,t$spc(42-len(t$))t$(i+ch%)
  237. 55155 next:fori=1to4:print#4," ":next
  238. 55160 close4:ifmu%thengosub2700
  239. 55165 goto5999
  240. 59999 end
  241. 63000 fori=.to24:pokes+i,.:next:pokes+1,100:pokes+2,100:pokes+5,10:pokes+6,2
  242. 63001 pokes+24,15:pokes+4,33:fordl=1to600:next:poke2+4,32:return
  243. 63002 fori=0to24:pokes+i,0:next:pokes+1,40:pokes+2,40:pokes+5,10:pokes+6,2
  244. 63003 pokes+24,15:pokes+4,33:fordl=1to600:next:pokes+4,32:return
  245.