Autor Thema: Bildschirm Abessen  (Gelesen 4112 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline EBO

  • Registrierter
  • CPC 664
  • *
  • Beiträge: 149
  • Liked: 20
  • Karma: +6/-4
  • Geschlecht: Männlich
  • Ich mache gerne noch was am CPC 6128
Bildschirm Abessen
« am: 05. August 2012, 16:44:35 »
Hallo

Ich habe eine frage wer kann mir ein Programm schreiben das der Bildschirm Abessen ausgeben kann.
Wo ich gerade  bin mit dem Kolosser bin
Das ganze soll in Basic sein

Da ich einen Equleizer  habe denn ich auf eine bestimmte Bildschischirm Abesse verschicen muss

Das ganze soll unter dem CPC6128 Laufen und nicht im Emulator
Das Programm soll im Mode 2 Arbeiten


Offline Devilmarkus

  • Administrator
  • CPC 464+
  • *****
  • Beiträge: 1113
  • Liked: 367
  • Karma: +39/-0
Re: Bildschirm Abessen
« Antwort #1 am: 05. August 2012, 18:29:05 »
Den Bildschirm Abessen kann zu schwarzen Löchern führen...
http://cpcwiki.de
Dein Deutsches CPCWiki!

Offline Devilmarkus

  • Administrator
  • CPC 464+
  • *****
  • Beiträge: 1113
  • Liked: 367
  • Karma: +39/-0
Re: Bildschirm Abessen
« Antwort #2 am: 05. August 2012, 18:40:20 »
Mal im Ernst: Rechne Dir das doch selber aus.
Die obere linke Bildecke beginnt bei &C000 (49152)
Jede Linie ist &50 (80) Bytes lang. Wobei Du dabei beachten musst: &00-&4f = &50 Bytes.

Da ja nun jede "Zeile" erst ab 8 gefüllten Linien beginnt, muss man nun nur noch die Koordinaten umrechnen.
Erste Zeile geht nun also von &C000 bis &C04F.
Zweite Zeile von &C800 bis &C84F.
Dritte Zeile von &D000 bis &D04F.
....
Achte Zeile von &F800 bis &F84F

Nun musst du wiederum bei &C0xx anfangen:
Hier musst Du also nur wiederum beachten: Jede Zeile ist &50 Bytes lang, also kommen zu &C000 noch &50 drauf, also &C050!!!
Um 8 Zeilen zu springen, kommt nun also die Neunte Zeile:
Neunte Zeile: &C050 bis  &C09F
Zehnte Zeile: &C850 bis  &C89F

Und so weiter!
Also zwar umständlich, aber einfach!

Ich zeige Dir mal ein Beispiel: (Ich schreibe die ersten 16 Bildschirmlinien)
10 MODE 1
100 FOR t=&C000 TO &C04F:POKE t,255:NEXT
110 FOR t=&C800 TO &C84F:POKE t,255:NEXT
120 FOR t=&D000 TO &D04F:POKE t,255:NEXT
130 FOR t=&D800 TO &D84F:POKE t,255:NEXT
140 FOR t=&E000 TO &E04F:POKE t,255:NEXT
150 FOR t=&E800 TO &E84F:POKE t,255:NEXT
160 FOR t=&F000 TO &F04F:POKE t,255:NEXT
170 FOR t=&F800 TO &F84F:POKE t,255:NEXT
180 FOR t=&C050 TO &C09F:POKE t,255:NEXT
190 FOR t=&C850 TO &C89F:POKE t,255:NEXT
200 FOR t=&D050 TO &D09F:POKE t,255:NEXT
210 FOR t=&D850 TO &D89F:POKE t,255:NEXT
220 FOR t=&E050 TO &E09F:POKE t,255:NEXT
230 FOR t=&E850 TO &E89F:POKE t,255:NEXT
240 FOR t=&F050 TO &F09F:POKE t,255:NEXT
250 FOR t=&F850 TO &F89F:POKE t,255:NEXT

Das kann man natürlich mit FOR-NEXT-Schleifen eleganter machen, aber es soll Dir nur verdeutlichen, wie das geht!
« Letzte Änderung: 05. August 2012, 18:46:56 von Devilmarkus »
http://cpcwiki.de
Dein Deutsches CPCWiki!

Offline Devilmarkus

  • Administrator
  • CPC 464+
  • *****
  • Beiträge: 1113
  • Liked: 367
  • Karma: +39/-0
Re: Bildschirm Abessen
« Antwort #3 am: 10. August 2012, 15:35:44 »
Scheint ja nicht interessant gewesen zu sein...
http://cpcwiki.de
Dein Deutsches CPCWiki!

Offline TFM

  • Administrator
  • CPC 6128+
  • *****
  • Beiträge: 3279
  • Liked: 775
  • Karma: +39/-0
  • Geschlecht: Männlich
  • FutureSoft und CPC - Ein starkes Team!
    • FutureOS
Re: Bildschirm Abessen
« Antwort #4 am: 10. August 2012, 17:40:47 »
Nee, aber gut erklärt  :D Nun sind mir die Kekse ausgegangen und Kolossus meinte ich soll auf keinen Fall den Bildschirm abessen, der wäre nicht geputzt. Also dann schönes WE!
TFM of FutureSoft
http://www.FutureOS.de --> Das Betriebssystem FutureOS (Update: 29.12.2020)
http://futureos.cpcwiki.de/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 28.08.2019)