Welcome to Schneider / Amstrad CPC Forum. Please login or sign up.

29. March 2024, 09:41:08

Login with username, password and session length

Shoutbox

TFM

2024-01-15, 17:06:57
Momentan billige Farbbänder auf Ebay für PCW

Devilmarkus

2023-07-09, 10:37:40
Zweiter 👋😂🤣

TFM

2023-06-13, 14:21:49
Sommerloch!

TFM

2023-05-30, 17:00:20
Erster ;-)

Recent

Members
Stats
  • Total Posts: 11,655
  • Total Topics: 1,329
  • Online today: 188
  • Online ever: 1,724
  • (16. January 2020, 00:18:45)
Users Online
Users: 1
Guests: 145
Total: 146

145 Guests, 1 User
xesrjb

Bildschirm Abessen

Started by EBO, 05. August 2012, 16:44:35

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

EBO

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


Devilmarkus

Den Bildschirm Abessen kann zu schwarzen Löchern führen...
https://cpcwiki.de
Dein Deutsches CPCWiki!

Devilmarkus

#2
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!
https://cpcwiki.de
Dein Deutsches CPCWiki!

Devilmarkus

Scheint ja nicht interessant gewesen zu sein...
https://cpcwiki.de
Dein Deutsches CPCWiki!

TFM

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: 20.12.2023)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 26.12.2021)