Hi zusammen, nun muss ich doch mal die Profis fragen...
Nach schmählich laaanger Zeit bin ich endlich mal wieder ein C64-"Problem" angegangen. Ich wollte das Scrolling in alle Richtungen testen, C64-Grundkenntnisse, auch über den internen Aufbau, sind noch - Grafikkenntnisse leidlich - und ASM Kenntnisse nur theoretisch vorhanden. Theoretisch insofern, wie wenn man bei Schach die Regeln kennt, aber damit noch lange kein Spiel gewinnt
Genug gequatscht, hier mein Problemchen und zwei Verständnisfragen:
Die Herangehensweise war, mit dem ACME (geiles Ding - Danke!) unter Linux den Assembler-Einstieg aus der ct RETRO von 2018 nachzuvollziehen: ct.de/3yb8
Der Artikel mach Lust auf mehr, ist aber für komplette Einsteiger zu grob. Das Programm habe ich abgetippt (das muss) und ergänzt, das Listing zum Download funktioniert sofort (1827-88.asm). Mein Problem ist, dass das Scrolling in den oberen Zeilen flackert, nachdem ich den Scrollbereich um weitere Zeilen vergrößert habe. Ich habe schon diverse Änderungen an den Registern des VIC ausprobiert, jedoch ohne eine Verbesserung erzielen zu können... nur der Bereich des Flackerns verschiebt sich natürlich wenn ich die Rasterzeilen für die IRQs verändere. Es kann doch nicht sein, dass das ein Zeitproblem ist, das PGM macht doch noch gar nichts :-)) Habe ich vielleicht einen Parameter vergessen anzupassen?
Und ein kleines Verständnisproblem:
Woher kommt der Wert irq1? Ist das eine Konstante, die ACME selbst vorbelegt? Ich finde keine Zuweisung.
Und irritierend ist für mich Zeile 187:
ist das an der Stelle nicht überflüssig..? Der Accu hat ja schon den Wert aus DC0D und wird danach sowieso mit 1 überschrieben.
Auskommentiert ändert sich auch nichts...
Die Dateien dazu: