Autor Thema: Bildschirmadresse pro Pixelzeile ändern  (Gelesen 253 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline TrebleAlex

  • Schreibgeschützter
  • *
  • Beiträge: 9
  • Liked: 1
  • Karma: +2/-0
Bildschirmadresse pro Pixelzeile ändern
« am: 09. Juni 2020, 20:07:57 »
Hallöchen! :-)

Für ein neues Projekt versuche ich, die Bildschirmadresse im CRTC (Register 12+13) pro Pixelzeile zu ändern.
Es würde mir schon reichen, wenn er pro Basicscreenzeile die Adresse ändern würde. Leider ist alles bis jetzt ohne Erfolg gewesen.  :(
Er ändert einfach nichts! Egal, was ich mache: Der Bildschirm bleibt leer, oder zeigt entweder das Bild bei &C000 an, oder die Daten an &4000, oder es flimmert total ohne irgendetwas. Bei der Adressierung des CRTCs verwende ich das entsprechende Adressformat, also z.B. in Register 12 "&30" für den Bereich ab &C000, bzw. "&10" für &4000...

Einen Beispielcode kann ich leider nicht anhängen, weil bis jetzt jeder Versuch gescheitert ist und nur Gewurschtel herausgekommen ist....

Kann mir jemand einen Tipp geben, oder einen Codeschnippsel und mir evtl. erklären, was ich falsch mache?

Was muss ich tun, um den CRTC zu einer Adressänderung zu bewegen?

Vielen Dank und viele Grüße,

Alex

Offline oobdoo

  • CPC 6128
  • ****
  • Beiträge: 468
  • Liked: 122
  • Karma: +17/-0
  • Geschlecht: Männlich
  • :P
Re: Bildschirmadresse pro Pixelzeile ändern
« Antwort #1 am: 09. Juni 2020, 22:38:49 »
Mal so ein Schuss ins blaue? Hast Du die Interrupts/Betriebssystem weggeschaltet?
CPC 464/6128, 464/6128+, GX4000 | Atari 2600, 600XL, 800XL/XE, Portfolio | C64/II/G/R/SX, VC20, TC64 | LC 80, MPF-I | ZX81, AX81, ZX Spectrum 48k, ZX Spectrum+2 | Amiga 500/600/2000, A2630, A2088

Offline TrebleAlex

  • Schreibgeschützter
  • *
  • Beiträge: 9
  • Liked: 1
  • Karma: +2/-0
Re: Bildschirmadresse pro Pixelzeile ändern
« Antwort #2 am: 09. Juni 2020, 23:52:44 »
Ja hab ich... denk ich! :-)
Mal mit DI und mal ohne DI.... das Ergebnis ist ähnlich.

Gruß,

Alex

Offline oobdoo

  • CPC 6128
  • ****
  • Beiträge: 468
  • Liked: 122
  • Karma: +17/-0
  • Geschlecht: Männlich
  • :P
Re: Bildschirmadresse pro Pixelzeile ändern
« Antwort #3 am: 10. Juni 2020, 14:13:37 »
Das dürfte nicht ausreichend sein, denn der Gebrauch einiger Betriebssystem Funktionen schaltet den Interrupt wieder ein.
Ich meinte eher sowas hier: http://cpc-live.com/forum/index.php/topic,634.0.html
CPC 464/6128, 464/6128+, GX4000 | Atari 2600, 600XL, 800XL/XE, Portfolio | C64/II/G/R/SX, VC20, TC64 | LC 80, MPF-I | ZX81, AX81, ZX Spectrum 48k, ZX Spectrum+2 | Amiga 500/600/2000, A2630, A2088

Offline TrebleAlex

  • Schreibgeschützter
  • *
  • Beiträge: 9
  • Liked: 1
  • Karma: +2/-0
Re: Bildschirmadresse pro Pixelzeile ändern
« Antwort #4 am: 10. Juni 2020, 14:51:24 »
Erstmal danke für deine schnelle Antwort! :-)

Ich hatte den Interrupt schon so eingestellt, aber das Problem war ein anderes....  :D
Ein PEBCACK oder Layer-8 Problem!  Ich hatte statt LD BC,&BC0C , LD BC,&BC12  geschrieben  :banghead:

Aber jetzt habe ich dafür ein anderes Problem, wo ich nochmal Hilfe bräuchte! Und zwar scrollt der Bildschirm jetzt und ich hab keine Checkung, wie ich das Bild statisch angezeigt bekomme. Ich hab mit allenmöglichen Werten der Zeitschleifen rumexperimentiert, aber ich bin glaub zu doof dafür! ;-(

Ich hab mal meinen halbgaren Wurschtelcode mal angehängt.... evtl. kannst Du ja was damit anfangen, und weißt auf Anhieb wo der Fehler liegt...wahrscheinlich ist der ganze Code ein einziger Fehler! :D

Viele liebe Grüße,

Alex


Offline oobdoo

  • CPC 6128
  • ****
  • Beiträge: 468
  • Liked: 122
  • Karma: +17/-0
  • Geschlecht: Männlich
  • :P
Re: Bildschirmadresse pro Pixelzeile ändern
« Antwort #5 am: 10. Juni 2020, 16:01:43 »
Sorry, leider kann ich Dir da nicht weiterhelfen. Das ist eindeutig zu Hardwarenah, da reichen meine ASM Kenntnisse nicht mehr aus.  :(
CPC 464/6128, 464/6128+, GX4000 | Atari 2600, 600XL, 800XL/XE, Portfolio | C64/II/G/R/SX, VC20, TC64 | LC 80, MPF-I | ZX81, AX81, ZX Spectrum 48k, ZX Spectrum+2 | Amiga 500/600/2000, A2630, A2088

Offline cpcman

  • CPC 664
  • ***
  • Beiträge: 170
  • Liked: 9
  • Karma: +5/-0
Re: Bildschirmadresse pro Pixelzeile ändern
« Antwort #6 am: 18. Juli 2020, 17:34:05 »
----------------------
Ich hab mal meinen halbgaren Wurschtelcode mal angehängt.... evtl. kannst Du ja was damit anfangen, und weißt auf Anhieb wo der Fehler liegt...wahrscheinlich ist der ganze Code ein einziger Fehler!
-----------------------

Der Code von dir ist total Mist , man kann da nichts aussagen.
Dafür brauchst du eine Glaskugel von ca 1 Meter durchmesser....   :gruebel:

Offline TFM

  • Administrator
  • CPC 6128+
  • *****
  • Beiträge: 3087
  • Liked: 743
  • Karma: +36/-0
  • Geschlecht: Männlich
  • FutureSoft und CPC - Ein starkes Team!
    • FutureOS
Re: Bildschirmadresse pro Pixelzeile ändern
« Antwort #7 am: 21. Juli 2020, 10:37:19 »
Eventuell kann ich Euch da ja helfen, mit ist die Frage nicht ganz klar.

Die Anzahl der Rasterzeilen pro Zeilen kann man ja anpassen (lediglich bei 1 wird's komplizierter).

Wie soll der CRTC denn das Bild bewegen? Scanline auf / ab. Oder Zeichenzeile auf ab?

Doku über den CRTC liegt hier im Forum genug rum. Einfach mal per BASIC OUT Kommando 'spielen'  :smiley027:
TFM of FutureSoft
http://www.FutureOS.de --> Das Betriebssystem FutureOS (Update: 7.8.2019)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> RSX ROM für LambdaSpeak (Update: 28.08.2019)