home *** CD-ROM | disk | FTP | other *** search
/ 64'er 1989 Janurary / 64er_Magazin_89-01_1989_Markt__Technik_de_Side_B.d64 / grafikklau (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  7KB  |  200 lines

  1. 10 :gosub 1680:poke 2053,143:load"vdc-tools",8,1
  2. 20 gosub 1620
  3. 30 if a<>0 then poke2053,asc(":"):goto10
  4. 39 poke808,225
  5. 40 rem ********************************
  6. 50 rem * grafikklau fuer den vdc-chip *
  7. 60 rem *------------------------------*
  8. 70 rem * written in 1988 by :         *
  9. 80 rem *                              *
  10. 90 rem * christian eiglmeier          *
  11. 100 rem * kattowitzer weg 5            *
  12. 110 rem * 3057 neustadt 1              *
  13. 120 rem * tel.: 05032-62223            *
  14. 130 rem ********************************
  15. 140 rem !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  16. 150 rem ! nur fuer c128pc im c64-mode !
  17. 160 rem !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  18. 170 rem
  19. 180 poke53280,0:poke53281,0:poke650,128:printchr$(14)chr$(8);:m=0
  20. 190 rem
  21. 200 rem **** hauptmenue ****
  22. 210 rem
  23. 220 restore:forx=1to32:ready:readz:poke54784,y:poke54785,z:nextx
  24. 230 data 0,126,1,80,2,102,3,73,4,32,5,0,6,25,7,29,8,0,9,7,10,32,11,7,12,0,13,0
  25. 240 data 14,0,15,0,20,8,21,0,23,8,24,32,25,64,26,240,27,0,28,32,29,7,34,125
  26. 250 data 35,100,36,5,22,120,25,71,4,39,7,32
  27. 260 print"[147][153]  [199]rafik-[203]lau fuer den [195]ommodore 128 [208][195] [146]";
  28. 270 print"[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][192][192]"
  29. 280 print"[158]- 1 -  [212]ext-[211]creen waehlen"
  30. 290 print"- 2 -  [214][196][195]-[199]rafik (640*176)"
  31. 300 print"- 3 -  [214][196][195]-[199]rafik (640*200)"
  32. 310 print"- 4 -  [199]rafik speichern"
  33. 320 print"- 5 -  [199]rafik laden"
  34. 330 print"- 6 -  [199]rafik drucken"
  35. 340 print"- 7 -  [196]irectory zeigen"
  36. 350 print"- 8 -  [208]rogramm verlassen"
  37. 360 print"[153][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][192][192]";
  38. 370 print"  (c) 25/09/1988 - all rights reserved";
  39. 380 geta$:ifa$<"1"ora$>"8"then380
  40. 390 mn=val(a$):on mn goto 400,610,740,860,1130,1380,1740,1900
  41. 400 rem ******************************
  42. 410 rem *** text-screen auswaehlen ***
  43. 420 rem ******************************
  44. 430 sys 49152: rem window loeschen
  45. 440 print"[158][211]chalten [211]ie auf den [210][199][194]-[193]usgang um und"
  46. 450 print"           waehlen [211]ie mit"
  47. 460 print"             <[195][210][211][210] [196][207][215][206]>[146]"
  48. 470 print"              <[195][210][211][210] [213][208]> [146]"
  49. 480 print"[201]hre [211]tartadresse des [214]ideo-[210][193][205]'s mit"
  50. 490 print"               <[210][197][212][213][210][206]>[146]"chr$(13)"                 aus"
  51. 500 print"[203]eine [193]uswahl:    _ [146]"
  52. 510 print"[211]tartadresse :";
  53. 520 poke54784,12:poke54785,int(ad/256)
  54. 530 poke54784,13:poke54785,ad-256*int(ad/256)
  55. 540 print"       [157][157][157][157][157][157][157]";ad;chr$(13)"[145]";
  56. 550 getts$:ifts$<>"" and ts$<>"[145]" and ts$<>chr$(13)andts$<>"_"then 550
  57. 560 ifts$="[145]"thenad=ad-2000:ifad<0thenad=14000
  58. 570 ifts$=""thenad=ad+2000:ifad>14000thenad=0
  59. 580 if ts$<>chr$(13)andts$<>"_"then520
  60. 590 ifts$=chr$(13)thenm=1
  61. 600 goto 200
  62. 610 rem *******************************
  63. 620 rem *** vdc-grafik (640*176 p.) ***
  64. 630 rem *******************************
  65. 640 sys 49152: rem window loeschen
  66. 650 print"[158][211]chalten [211]ie auf den [210][199][194]-[193]usgang um und"
  67. 660 print"betaetigen [211]ie <[210][197][212][213][210][206]>[146], um die [205]ulti-"
  68. 670 print"color-[199]rafik zu uebernehmen."
  69. 680 print"[203]eine [213]ebernahme :  _ [146]"
  70. 690 poke54784,25:poke54785,199:poke54784,20:poke54785,56:poke54784,21:poke54785,0
  71. 700 poke54784,6:poke54785,22
  72. 710 getts$:ifts$<>"_"andts$<>chr$(13) then 710
  73. 720 if ts$=chr$(13)thenm=2:ad=0
  74. 730 goto200
  75. 740 rem *******************************
  76. 750 rem *** vdc-grafik (640*200 p.) ***
  77. 760 rem *******************************
  78. 770 sys 49152:rem window loeschen
  79. 780 print"[158][211]chalten [211]ie bitte auf den [210][199][194]-[193]usgang"
  80. 790 print"um und betaetigen [211]ie zur [213]ebernahme die"
  81. 800 print"<[210][197][212][213][210][206]>[146] [212]aste."
  82. 810 print"[203]eine [213]ebernahme :  _ [146]"
  83. 820 poke54784,25:poke54785,135
  84. 830 getts$:ifts$<>chr$(13)andts$<>"_"then830
  85. 840 ifts$=chr$(13)thenm=3:ad=0
  86. 850 goto 200
  87. 860 rem *******************************
  88. 870 rem ***  grafik/bild speichern  ***
  89. 880 rem *******************************
  90. 890 if m=0 then 260
  91. 900 sys 49152:rem window loeschen
  92. 910 dt$="":input"[158][199]rafik/[194]ild-[206]ame";dt$
  93. 920 if dt$="" then 260
  94. 930 dt$=left$(dt$,12)+".pic"
  95. 940 ifm=2orm=3thenad=0
  96. 950 forx=1 to len(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0
  97. 960 poke851,int(ad/256):poke850,ad-256*int(ad/256)
  98. 970 ifm=1thened=ad+1999
  99. 980 ifm=2orm=3thened=16383
  100. 990 poke 853,int(ed/256):poke852,ed-256*int(ed/256)
  101. 1000 poke 854,m
  102. 1010 gosub1680:sys 49185:rem bereich abspeichern
  103. 1020 gosub1620:ifa<>0thenpoke198,0:wait198,1:goto260
  104. 1030 ifm>1then1120
  105. 1040 poke850,0:poke851,32:poke852,255:poke853,63:poke854,1
  106. 1050 dt$=left$(dt$,x-5)+".zes"
  107. 1060 forx=1 to len(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0
  108. 1070 gosub1680:sys 49185:rem zeichensatz speichern
  109. 1080 gosub1620:ifa<>0thenpoke198,0:wait198,1:goto260
  110. 1090 poke850,0:poke851,8:poke852,207:poke853,15:poke854,1:dt$=left$(dt$,x-5)+".att"
  111. 1100 forx=1 to len(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0
  112. 1110 gosub1680:sys49185:gosub1620:ifa<>0thenpoke198,0:wait198,1:goto260
  113. 1120 goto 260
  114. 1130 rem ******************************
  115. 1140 rem *** bild/grafik nachladen  ***
  116. 1150 rem ******************************
  117. 1160 sys 49152:rem window loeschen
  118. 1170 dt$="":input"[199]rafik/[194]ild-[206]ame";dt$
  119. 1180 if dt$="" then 260
  120. 1190 dt$=left$(dt$,12)+".pic"
  121. 1200 forx=1tolen(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0:poke850,0
  122. 1210 poke851,0:gosub1680:sys 49336:rem bild/grafik laden
  123. 1220 gosub1620:ifa<>0then1360
  124. 1230 m=peek(854):ad=0
  125. 1240 ifm>1then1310
  126. 1250 poke850,0:poke851,32:dt$=left$(dt$,x-5)+".zes"
  127. 1260 forx=1tolen(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0
  128. 1270 gosub1680:sys49336:gosub1620:ifa<>0then1360
  129. 1280 poke850,0:poke851,8:dt$=left$(dt$,x-5)+".att"
  130. 1290 forx=1tolen(dt$):poke827+x,asc(mid$(dt$,x,1)):nextx:poke827+x,0
  131. 1300 gosub1680:sys49336:gosub1620:ifa<>0then1360
  132. 1310 ifm=1thenm$="[212]ext-[211]creen"
  133. 1320 ifm=2thenm$="[214][196][195]-[199]rafik (640*176)"
  134. 1330 ifm=3thenm$="[214][196][195]-[199]rafik (640*200)"
  135. 1340 print"[194]ild/[199]rafik-[193]rt: ";m$;"[146]"
  136. 1350 print"<[212][193][211][212][197]>[146]"
  137. 1360 getts$:ifts$=""then1360
  138. 1370 goto 260
  139. 1380 rem *****************************
  140. 1390 rem ***   hardcopy-aufrufe    ***
  141. 1400 rem *****************************
  142. 1410 sys 49152:rem window loeschen
  143. 1420 if m=0 then260
  144. 1430 gosub 1710
  145. 1440 if m<>1then 1520
  146. 1450 poke829,int(ad/256):poke828,ad-256*int(ad/256):ed=ad+1999
  147. 1460 poke831,int(ed/256):poke830,ed-256*int(ed/256):at=2048
  148. 1470 poke833,int(at/256):poke832,at-256*int(at/256)
  149. 1480 poke53265,peek(53265)and111:poke53296,1: rem 2 mhz-modus
  150. 1490 sys 49471: rem text-hardcopy
  151. 1500 poke53296,0:poke53265,peek(53265)and127or16: rem 1 mhz-modus
  152. 1510 goto260
  153. 1520 poke53265,peek(53265)and111:poke53296,1: rem 2 mhz-modus
  154. 1530 if m=2 then poke850,22
  155. 1540 if m=2 then poke850,22
  156. 1550 if m=3 then poke850,25
  157. 1560 sys 49901
  158. 1570 poke53296,0:poke53265,peek(53265)and127or16: rem 1 mhz-modus
  159. 1580 goto260
  160. 1590 rem *****************************
  161. 1600 rem *** hilfs-unterprogramme  ***
  162. 1610 rem *****************************
  163. 1620 open1,8,15
  164. 1630 input#1,a,b$,c,d
  165. 1640 if a=0 or a=1 then 1660
  166. 1650 print"";a;"[157],";b$;",";c;"[157],";d;"[146]"
  167. 1660 close 1:return
  168. 1670 rem
  169. 1680 open 1,8,15:close1
  170. 1690 if st<>0 then print"[198]loppy einschalten[146]":poke198,0:wait198,1:goto1680
  171. 1700 return
  172. 1710 open 1,4,1:close 1
  173. 1720 if st<>0 thenprint"[196]rucker einschalten[146]":poke198,0:wait198,1:goto1710
  174. 1730 return
  175. 1740 rem ******************************
  176. 1750 rem ***   directory einlesen   ***
  177. 1760 rem ******************************
  178. 1770 sys 49152:rem window loeschen
  179. 1780 gosub 1680:rem floppy ein
  180. 1790 a=0:open1,8,0,"$":print"[158]";:poke781,1:sys65478:geta$,a$:e$=chr$(0)
  181. 1800 geta$,a$,h$,l$:ifstthensys65484:close1:gosub1620:poke198,0:wait198,1:goto260
  182. 1810 a=a+1:ifa>18 then gosub 1850
  183. 1820 printasc(h$+e$)+256*asc(l$+e$);
  184. 1830 geta$,b$:ifa$thenprinta$b$;:goto1830
  185. 1840 printa$:goto1800
  186. 1850 rem ******************************
  187. 1860 rem ***    screen ueberlauf    ***
  188. 1870 rem ******************************
  189. 1880 printchr$(13)"<<[212][193][211][212][197]>>[146]"
  190. 1890 poke 198,0:wait198,1:sys 49152:print"";:a=1:return
  191. 1900 rem ******************************
  192. 1910 rem ***    programm verlassen  ***
  193. 1920 rem ******************************
  194. 1930 sys 49152:rem window loeschen
  195. 1940 print"[158][208]rogramm verlassen[146]"
  196. 1950 print"[211]ind [211]ie sicher (j/n) ?"
  197. 1960 getx$:if x$<>"j" and x$<>"n" then 1960
  198. 1970 if x$<>"n" then sys 64738
  199. 1980 goto 260
  200.