Der Fluch der CRTC-Kompatibilität

Ich möchte ein Gefühl ansprechen, das ich eben nach dem Anschauen von Bits Brew wieder hatte. Und zwar das Gefühl, dass man – wenn man moderne Demos auf dem CPC erstellen möchte, die verschiedene Varianten von Zeile-für-Zeile-Effekten zeigen – die Eigenheiten der verschiedenen CRTCs mit Erkennungsroutinen und speziell angepasstem CRTC-Code umgehen muss. Mir ist klar, dass es großartige Dokumentationen gibt, die umfangreichste wahrscheinlich Longshots Kompendium. Aber ich finde den Umgang damit einfach so frustrierend und frage mich, wie andere das überwinden. Wenn ich eine Demo mache, möchte ich mich auf den Effekt oder ganz allgemein auf die Idee konzentrieren, die ich zeigen (oder abspielen) möchte, und mich nicht damit herumschlagen, dass die CPC-Videohardware an einer Reihe willkürlicher Macken leidet. Kann das jemand nachvollziehen? Wie habt ihr das gelöst? Der Punkt ist, dass ich seit Jahren einige Ideen und Snippets (meistens musikalisch) herumliegen habe, die visuelle Unterstützung brauchen, aber ich kann mich einfach nicht aufraffen, mich durch dieses CRTC-Nadelöhr zu zwängen – es wirkt einfach soööö langweilig.

Ich würde etwas Zeit darin investieren, ein paar gut kommentierte, konfigurierbare Templates mit dem ganzen langweiligen Setup-Code zu erstellen. Besonders für Demo-Effekte, die ja oft auf demselben Split-Screen-Rezept aufbauen. So könnte ich später mit verschiedenen Effekten herumexperimentieren, ohne mich jedes Mal wieder mit demselben Boilerplate-Code herumschlagen zu müssen.

Alternativ: Wenn du einfach nur sehen willst, wie eine Idee aussieht (und sie vielleicht ein bisschen anpassen möchtest), bevor du sie in optimiertem Assembly umsetzt, wirken JavaScript und ein 2D-Canvas Wunder :slight_smile:

1 „Gefällt mir“

Nimm einfach nur die Plus-Rechner ins Visier: Die haben alle denselben CRTC, Problem gelöst. :joy:

Mal weniger salopp gesagt: Ich sehe heutzutage kein Problem darin, einfach festzulegen, dass eine Demo einen ganz bestimmten CRTC braucht. Wenn es dir keinen Spaß macht, die Herausforderung anzunehmen, einen Effekt auf unterschiedlicher Hardware zum Laufen zu bringen, warum sich dann die Mühe machen? Die allermeisten Leute werden das Ergebnis ohnehin in einem Emulator sehen.

3 „Gefällt mir“

Für mich ist das Ziel einer CPC-Prod „der physische CPC“, unabhängig von seinem CRTC. Es ist zwar schade, dass sie unterschiedliche CRTCs haben, aber so ist das Leben nun mal.

Ich finde das Subset der möglichen Demos und Prods, das auf CRTC-Tricks ausgerichtet ist, viel zu überlaufen. Zu viele Prods. Weniger Raum für Originalität.

Ich konzentriere mich auf andere Bereiche, die interessante Effekte erzeugen und gleichzeitig mit allen CRTCs kompatibel sind.

Also kein Stress, kein schräger CRTC-Erkennungscode und keine Kopfschmerzen wegen der Kompatibilität, sondern einfach nur Herausforderung und Spaß. :slightly_smiling_face:

Z. B. Sunny Day

7 „Gefällt mir“

Ich würde sagen, ziele erst mal auf einen CRTC ab, den üblichen CRTC 1… und füge später eine spezielle Prüfung und Anweisungen für CRTC 0/2 hinzu…

Das ist ein wirklich faszinierendes Demo mit mehreren Ebenen von Grafikeffekten und zusätzlicher Sample-Ausgabe. Ich bin mir sicher, das alles zusammenzubringen und das Timing exakt abzustimmen, war eine schwierige Aufgabe. Aber soweit ich sehe, wird hier nichts genutzt, was CRTC-spezifisch ist. Auch wenn es nicht für alle Effekte gilt: Für viele sollte es möglich sein, eine einzige Softwareversion für alle CRTCs zu schreiben.

Ein anderer Blickwinkel: Kunst ist keine Massenproduktion (Pop-Art einmal außen vor gelassen). Es gibt keine Anforderung, dass etwas auf alle Konfigurationen passen muss. Nutze die Einschränkungen und Features verschiedener Maschinen für unterschiedliche Effekte. Bei Kunst geht es darum, Unterschiede zu erforschen und zu nutzen. Ein CRTC-Beispiel: CRTC 0 erfordert C0=1 (Frames sind mindestens 2 Zeichen breit), ist aber bei HSYNC-Position und -Dauer recht tolerant. CRTC 2 erlaubt auch C0=0 (Frames mit halber Größe), hat aber Probleme mit dem HSYNC. Beides hat seine Vor- und Nachteile. (Vielleicht ist diese Sicht auf den CRTC 2 auch ein wenig zu freundlich.)

2 „Gefällt mir“

Danke für die Antworten @Grimmy @AndyCadley @cpcitor @WacKEDmaN @lightforce6128 Da ist definitiv einiges dabei, worüber man nachdenken kann.