home *** CD-ROM | disk | FTP | other *** search
/ Magic Disk 64 / Magic_Disk_64_91-10_1991_-_de_Side_B.d64 / screenboost.demo (.txt) < prev    next >
Commodore BASIC  |  2023-02-26  |  9KB  |  303 lines

  1. 0 a=a+1
  2. 1 if a=1 then load"screenboost.code",8,1
  3. 10 poke 53280,0:poke 53281,0
  4. 20 :
  5. 30 poke 49570,0:rem textfarbe=schwarz
  6. 40 sys 49569:rem text einfaerben
  7. 50 :
  8. 90 print"[147]";
  9. 100 print"screen-boost  v1.0"
  10. 110 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  11. 120 print"programm:axel wefers"
  12. 130 print"(c)1990 by x-complex industries"
  13. 140 print"anleitung:"
  14. 150 print"[163][163][163][163][163][163][163][163][163][163]"
  15. 160 print"1. einbau in eigene programme"
  16. 170 print"1.1 in basic programme"
  17. 180 print"soll effect screen in ein basic "
  18. 190 print"programm eingebunden werden,so muessen"
  19. 200 print"die ersten zwei zeilen folgendermassen "
  20. 210 print"lauten:"
  21. 220 print"0 a=a+1"
  22. 230 print"1 if a=1 then load";chr$(34);"screenboost.code";chr$(34);",8,1";
  23. 240 print"das program effect screen muss selbst-"
  24. 250 print"verstaendlich auf der selben diskette,"
  25. 260 print"wie das basic programm sein."
  26. 265 :
  27. 270 sys 49158:rem screen einlesen
  28. 275 :
  29. 280 poke 49570,1:rem textfarbe=weiss
  30. 285 sys 49569:rem text faerben
  31. 290 :
  32. 300 sys 49152:rem screen einblenden
  33. 310 :
  34. 320 wait 198,1:poke 198,0
  35. 330 :
  36. 340 sys 49155:rem screen ausblenden
  37. 350 poke 49570,0:rem textfarbe=schwarz
  38. 360 sys 49569:rem textfaerben
  39. 370 print"1.2 in assembler programme:"
  40. 380 print"effect screen kann direkt an das ms-"
  41. 390 print"programm angehaengt werden."
  42. 400 print"soll die routine verschoben werden,"
  43. 410 print"so sind aenderungen bei jmp-befehlen,"
  44. 420 print"sowie bei lda-und sta-befehlen zu be-"
  45. 430 print"achten."
  46. 440 print"2. die routinen"
  47. 450 print"2.1 horizontaler bildschirmaufbau"
  48. 460 print"aufruf mit: sys 49152"
  49. 470 print"funktion:der bildschirm wird mit dem"
  50. 480 print"inhalt von $c400 bis $c800 gefuellt."
  51. 490 print"(naeheres zum inhalt von $c400 bis"
  52. 500 print"$c800 unter kapitel 2.3)"
  53. 510 print"2.2 horizontales bildschirm loeschen"
  54. 520 print"aufruf mit: sys 49155"
  55. 530 print"funktion:der bildschirm wird geloescht."
  56. 540 print"(der bereich von $c400 bis $c800 bleibt"
  57. 550 print"erhalten.)"
  58. 555 :
  59. 560 sys 49158:rem text einlesen
  60. 565 :
  61. 570 poke 49570,1:rem textfarbe=weiss
  62. 580 sys 49569:rem text einfaerben
  63. 585 :
  64. 590 sys 49985:rem text einblenden
  65. 595 :
  66. 600 wait 198,1:poke 198,0
  67. 605 :
  68. 610 sys 49155:rem text ausblenden
  69. 620 :
  70. 630 poke 49570,0:rem textfarbe=schwarz
  71. 640 sys 49569:rem text einfaerben
  72. 650 :
  73. 660 print"2.3 die text kopier routine"
  74. 670 print"aufruf mit : sys 49158"
  75. 680 print"funktion:der aktuelle bildschirminhalt"
  76. 690 print"wird in den bereich von $c400 bis $c800"
  77. 700 print"kopiert.diese routine ist fuer den basic";
  78. 710 print"programmierer von grossem nutzen,da in"
  79. 720 print"basic keine so hohe geschwindigkeit"
  80. 730 print"erreicht werden kann,wie in assembler."
  81. 740 print"anwendungsbeispiel:"
  82. 750 print"um den text,vor der ausgabe durch eine"
  83. 760 print"der bildschirmaufbau-routinen,in den "
  84. 770 print"bereich von $c400 bis $c800 zu kopieren,";
  85. 780 print"ohne das man ihn zuvor sieht,schreibt "
  86. 790 print"man den gewuenschten inhalt auf den "
  87. 791 print"bildschirm,faerbt den text zuvor in der"
  88. 792 print"aktuellen bildschirmfarbe ein,so dass"
  89. 793 print"der text-bildschirm praktisch unsicht-"
  90. 794 print"bar ist,und ruft die bildschirmkopier-";
  91. 820 print"routine an,und der text befindet sich im";
  92. 830 print"bereich von $c400 bis $c800"
  93. 845 :
  94. 850 sys 49158:rem text kopieren
  95. 855 :
  96. 860 poke 49570,1:rem textfarbe=weiss
  97. 870 sys 49569:rem text faerben
  98. 875 :
  99. 880 sys 49595:rem text einblenden
  100. 885 :
  101. 890 wait 198,1:poke 198,0
  102. 895 :
  103. 900 sys 49769:rem text ausblenden
  104. 905 :
  105. 910 poke 49570,0:rem textfarbe=schwarz
  106. 920 sys 49569:rem text faerben
  107. 930 :
  108. 940 print"2.4 color routine"
  109. 950 print"aufruf mit:sys 49569"
  110. 960 print"funktion:das farb-ram des bildschirms"
  111. 970 print"wird mit dem wert aus 49570 gefuellt."
  112. 980 print"um den bildschirm zu faerben,gibt"
  113. 990 print"man folgende befehle ein:"
  114. 1000 print"  poke 49570,farbe(0-15)"
  115. 1010 print"  sys 49569"
  116. 1020 print"2.5 vertikaler bildschirmaufbau"
  117. 1030 print"aufruf mit:sys 49595"
  118. 1040 print"funktion:siehe 2.1,anders als bei der"
  119. 1050 print"horizontalen aufbau routine ist,"
  120. 1060 print"das der bildschirm vertikal aufgebaut"
  121. 1070 print"wird."
  122. 1080 print"2.6 vertikales bildschirmloeschen"
  123. 1090 print"aufruf mit:sys 49769"
  124. 1100 print"funktion:siehe 2.2,anders als bei der"
  125. 1110 print"horizontalen routine ist,das diese hier"
  126. 1120 print"vertikal den text loescht."
  127. 1130 :
  128. 1135 sys 49158:rem screen einlesen
  129. 1136 :
  130. 1140 poke 49570,1:rem textfarbe=weiss
  131. 1150 sys 49569:rem text faerben
  132. 1160 :
  133. 1170 sys 49152:rem text aufbauen
  134. 1180 :
  135. 1190 wait 198,1:poke 198,0
  136. 1200 sys 49155:rem screen ausblenden
  137. 1210 :
  138. 1220 poke 49570,0:rem textfarbe=schwarz
  139. 1230 sys 49569:rem text einfaerben
  140. 1240 :
  141. 1250 print"[147]";
  142. 1260 print"2.7 diagonales einblenden"
  143. 1270 print"aufruf mit:sys 49985
  144. 1280 [153]"funktion:siehe 2.1,lediglich anders ist"
  145. 1290 [153]"hier,dass der text diagonal eingeblendet";
  146. 1300 [153]"wird."
  147. 1310 [153]"2.8 diagonales loeschen"
  148. 1320 [153]"aufruf mit:sys 52342"
  149. 1330 [153]"funktion:siehe 2.2,der text wird hier"
  150. 1340 [153]"diagonal ausgeblendet."
  151. 1350 [153]"2.9 bildschirm normal einblenden"
  152. 1360 [153]"aufruf mit:sys 52672"
  153. 1370 [153]"funktion:der bereich von $c400 bis $c800";
  154. 1380 [153]"wird in den bildschirm speicher kopiert.";
  155. 1390 [153]"dies ist fuer eine einfache windowing-"
  156. 1400 [153]"routine von grossem nutzen."
  157. 1410 :
  158. 1420 [158] 49158:[143] text einlesen
  159. 1430 :
  160. 1440 [151] 49570,1:[143] textfarbe=weiss
  161. 1450 [158] 49569:[143] text einfaerben
  162. 1465 :
  163. 1470 [158] 49985:[143] text einblenden
  164. 1480 :
  165. 1490 [146] 198,1:[151] 198,0
  166. 1500 :
  167. 1510 [158] 52342:[143] text ausblenden
  168. 1520 :
  169. 1530 [151] 49570,0:[143] textfarbe=schwarz
  170. 1540 [158] 49569:[143] text einfaerben
  171. 1550 :
  172. 1560 [153]"load";
  173. 1570 [153]"3. rasterroutinen :"
  174. 1580 [153]"tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab("
  175. 1590 [153]"3.1 rasteredit"
  176. 1600 [153]"aufruf mit:sys 52032"
  177. 1610 [153]"funktion:ein raster kann editiert wer-"
  178. 1620 [153]"den. der blinkende balken wird mit dem"
  179. 1630 [153]"joystick in port 2 gesteuert:"
  180. 1640 [153]"joystick-hoch:balken eine rasterzeile"
  181. 1650 [153]"              nach oben."
  182. 1660 [153]"joystick-unten:balken eine rasterzeile"
  183. 1670 [153]"               nach unten."
  184. 1680 [153]"joystick-links:aktuellen farbcode um"
  185. 1690 [153]"               1 erhoehen."
  186. 1700 [153]"joystick-rechts:aktuellen farbcode um"
  187. 1710 [153]"               1 verringern."
  188. 1720 [153]"joystick-knopf:ende des editierens."
  189. 1730 [153]"die textfarbe ist die farbe unter dem"
  190. 1740 [153]"balken."
  191. 1750 :
  192. 1765 [158] 49158:[143] screen einlesen
  193. 1766 :
  194. 1770 [151] 49570,1:[143] textfarbe=weiss
  195. 1780 [158] 49569:[143] text faerben
  196. 1790 :
  197. 1800 [158] 49152:[143] text aufbauen
  198. 1810 :
  199. 1820 [146] 198,1:[151] 198,0
  200. 1830 [158] 49155:[143] screen ausblenden
  201. 1840 :
  202. 1850 [151] 49570,0:[143] textfarbe=schwarz
  203. 1860 [158] 49569:[143] text einfaerben
  204. 1870 :
  205. 1880 [153]"load";
  206. 1890 [153]"3.2 raster einschalten"
  207. 1900 [153]"aufruf mit:sys 51200"
  208. 1910 [153]"funktion: ein raster wird sichtbar ge-"
  209. 1920 [153]"macht."
  210. 1930 [153]"3.3 textflesh einschalten"
  211. 1940 [153]"aufruf mit:sys 52259"
  212. 1950 [153]"funktion: der text blinkt die farben"
  213. 1960 [153]"des editierten rasters alle durch."
  214. 1970 [153]"3.4 raster & textflesh abschalten"
  215. 1980 [153]"aufruf mit:sys 49888"
  216. 1990 [153]"funktion:das raster oder textfleshing"
  217. 2000 [153]"wird abgeschaltet."
  218. 2010 [153]"3.5 editiertes raster speichern"
  219. 2020 [153]"aufruf mit: poke 52743,asc(name$)"
  220. 2030 [153]"            sys 52222"
  221. 2040 [153]"wobei 'name$' nur ein zeichen lang sein"
  222. 2050 [153]"darf.der name wird um das word 'raster.'";
  223. 2060 [153]"ergaenzt.das basic programm beginnt "
  224. 2070 [153]"nicht von vorne,sondern setzt an der "
  225. 2080 [153]"stelle des aufrufs wieder an."
  226. 2090 :
  227. 2100 [158] 49158:[143] screen einlesen
  228. 2110 :
  229. 2120 [151] 49570,1:[143] textfarbe=weiss
  230. 2130 [158] 49569:[143] text faerben
  231. 2140 :
  232. 2150 [158] 49152:[143] screen einblenden
  233. 2160 :
  234. 2170 [146] 198,1:[151] 198,0
  235. 2180 :
  236. 2190 [151] 49570,0:[143] textfarbe=schwarz
  237. 2200 [158] 49569:[143] text einfaerben
  238. 2210 :
  239. 2220 [153]"load";
  240. 2230 [153]"3.6 raster laden"
  241. 2240 [153]"aufruf mit:poke 52743,asc(name$)"
  242. 2250 [153]"           sys 49952"
  243. 2255 [153]"die variable 'name$' darf wieder nur ein"
  244. 2260 [153]"zeichen lang sein.der name wird automat-";
  245. 2270 [153]"isch um den zusatz 'raster.' ergaenzt"
  246. 2280 [153]"funktion:ein raster wird eingeladen,das"
  247. 2290 [153]"programm faehrt an der stelle des auf-"
  248. 2300 [153]"rufs nach dem laden fort."
  249. 2310 [153]"3.7 raster fuellen"
  250. 2320 [153]"aufruf mit:poke 52332,farbcode(0-15)"
  251. 2330 [153]"           sys 52331"
  252. 2340 [153]"funktion:der inhalt des rasters wird mit";
  253. 2350 [153]"dem einge-'poketen' wert gefuellt."
  254. 2360 :
  255. 2370 [158] 49158:[143] text einlesen
  256. 2380 :
  257. 2390 [151] 49570,1:[143] textfarbe=weiss
  258. 2400 [158] 49569:[143] text einfaerben
  259. 2410 :
  260. 2420 [158] 49985:[143] text einblenden
  261. 2430 :
  262. 2440 [146] 198,1:[151] 198,0
  263. 2450 :
  264. 2460 [158] 49155:[143] screen ausblenden
  265. 2470 [151] 49570,1:[143] textfarbe=weiss
  266. 2480 [158] 49569:[143] textfaerben
  267. 2490 :
  268. 2495 [153]"load";
  269. 2500 [153]"4. demonstration einiger routinen"
  270. 2510 [153]"tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab("
  271. 2511 [153]"die ein/ausblendroutinen werden ihnen "
  272. 2512 [153]"bestimmt nicht entgangen sein,sie wurden";
  273. 2513 [153]"schon angewendet."
  274. 2520 [153]"rastereditor:"
  275. 2525 [153]"start mit space."
  276. 2530 [153]"abbruch mit knopf."
  277. 2531 [146] 198,1:[151] 198,0
  278. 2532 :
  279. 2533 [158] 52032 : [143] rasteredit
  280. 2535 :
  281. 2540 [153]"raster abspeichern(j/n)?"
  282. 2545 :
  283. 2550 [161] g$
  284. 2560 [139] g$[178]"j"[167] [137] 2581
  285. 2570 [139] g$[178]"n"[167] [137] 2600
  286. 2580 [137] 2550
  287. 2581 [153]"rastername?"
  288. 2582 [161] g$
  289. 2583 [139] g$[178]""[167] 2582
  290. 2585 :
  291. 2590 [151] 52743,[198](g$): [143] rastername
  292. 2595 [158] 52222 : [143] raster speichern
  293. 2596 :
  294. 2600 [153]"textflesh..."
  295. 2610 [153]"weiter mit space..."
  296. 2615 :
  297. 2620 [158] 52259 : [143] textflesh ein
  298. 2625 :
  299. 2630 [146] 198,1:[151] 198,0
  300. 2640 :
  301. 2650 [158] 49888 : [143] textflesh aus
  302. 2670 [153]"loadlistonon";
  303.