home *** CD-ROM | disk | FTP | other *** search
/ 64'er Special 69 / 64er_Magazin_Sonderheft_69_19xx_Markt__Technik_de_Side_B.d64 / box.bas (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  2KB  |  114 lines

  1. 4 rem ----------------------------
  2. 5 rem originalwerte fuer textmodus
  3. 6 rem in adressen 251/252 retten
  4. 7 rem ----------------------------
  5. 10 poke251,peek(53272)
  6. 20 poke252,peek(53265)
  7. 30 ba=8192:sys58692
  8. 40 gosub 1000
  9. 119 rem -------------------------
  10. 120 rem hires-bildschirm loeschen
  11. 121 rem -------------------------
  12. 130 for i=ba to ba+7999
  13. 140 poke i,0
  14. 150 next
  15. 160 sys58692
  16. 165 gosub 2000: rem textmodus ein
  17. 190 gosub 1000: rem hires-grafik ein
  18. 200 gosub 3000: rem farbram cyan
  19. 201 read x1,y1,x2,y2
  20. 202 ifx1=999then280
  21. 205 gosub355
  22. 210 goto201
  23. 280 poke198,0:wait198,1
  24. 281 gosub2000:sys58692:poke198,0:end
  25. 355 dx=x2-x1:dy=y2-y1
  26. 357 ifabs(dy)<abs(dx)then364
  27. 358 foryl=y1 to y2 step sgn(dy)
  28. 359 x=dx/dy*yl+x1
  29. 360 y=yl
  30. 361 gosub400
  31. 362 next yl
  32. 363 return
  33. 364 forxl=x1tox2stepsgn(dx)
  34. 365 x=xl
  35. 366 y=dy/dx*xl+y1
  36. 367 gosub 400
  37. 368 next xl
  38. 369 return
  39. 400 yp=int(y/8)
  40. 410 xp=int(x/8)
  41. 420 a1=(yp*40+xp)*8
  42. 430 ay=y-8*yp+a1
  43. 450 r=x-8*xp
  44. 460 m=2^(7-r)
  45. 470 i=peek(ay+ba)
  46. 480 poke ay+ba,i or m
  47. 490 return
  48. 994 rem ------------------------
  49. 995 rem unterprogramm
  50. 996 rem hires-grafik einschalten
  51. 997 rem ------------------------
  52. 1000 poke53272,peek(53272)or8
  53. 1010 poke53265,peek(53265)or32
  54. 1020 return
  55. 1994 rem ------------------------
  56. 1995 rem unterprogramm
  57. 1996 rem hires-grafik abschalten
  58. 1997 rem textmodus wieder aktivieren
  59. 1998 rem ------------------------
  60. 2000 poke53272,peek(251)
  61. 2010 poke53265,peek(252)
  62. 2020 return
  63. 2995 rem ------------------------
  64. 2996 rem unterprogramm
  65. 2997 rem hintergrund cyan und
  66. 2998 rem pixelfarbe schwarz
  67. 2999 rem ------------------------
  68. 3000 for i=1024 to 2023
  69. 3010 poke i,3: rem 16*code zeichenfarbe + code hintergrundfarbe = 0*16+1
  70. 3020 next: return
  71. 5000 data000,000,319,000
  72. 5010 data319,000,319,199
  73. 5020 data319,199,000,199
  74. 5030 data000,199,000,000
  75. 5040 data004,004,315,004
  76. 5041 data315,004,315,195
  77. 5042 data315,195,004,195
  78. 5043 data004,195,004,004
  79. 5050 data 006,006,313,006
  80. 5051 data 313,006,313,193
  81. 5052 data 313,193,006,193
  82. 5053 data 006,193,006,006
  83. 5054 data 007,007,312,007
  84. 5055 data 312,007,312,192
  85. 5056 data 312,192,007,192
  86. 5057 data 007,192,007,007
  87. 5060 data 160,100,260,100
  88. 5061 data 260,100,260,175
  89. 5062 data 260,175,160,175
  90. 5063 data 160,175,160,100
  91. 5064 data 162,102,258,102
  92. 5065 data 258,102,258,173
  93. 5066 data 258,173,162,173
  94. 5067 data 162,173,162,102
  95. 5070 data 030,030,100,030
  96. 5071 data 100,030,100,048
  97. 5072 data 100,048,030,048
  98. 5073 data 030,048,030,030
  99. 5080 data 032,030,032,048
  100. 5081 data 034,030,034,048
  101. 5082 data 036,030,036,048
  102. 5083 data 038,030,038,048
  103. 5084 data 040,030,040,048
  104. 5085 data 045,030,045,048
  105. 5086 data 056,030,056,048
  106. 5087 data 068,030,068,048
  107. 5088 data 081,030,081,048
  108. 5089 data 095,030,095,048
  109. 5090 data 096,030,096,048
  110. 5091 data 097,030,097,048
  111. 5092 data 098,030,098,048
  112. 5093 data 099,030,099,048
  113. 9999 data999,000,000,000
  114.