Das grobe Code-Gerüst für “Let´s Bounce” besteht aus Elementen der langsamen, dafür leicht zu begreifenden Programmiersprache Basic. Spritesteuerung, Kollissionsabfrage und andere, zeitkritische Aufgaben sind an schnelle, aber aufwändig zu entwickelnde Assembler-Routinen delegiert und laufen parallel zum Basic-Programm. Dass merkt zum Beispiel, wer die Run/Stop-Taste tippt. Dann stoppt das Basic-Programm mit einer Fehlermeldung; aber die Rasterinterrupts und der daran aufgehängte Bildaufbau samt Scrolling arbeiten weiter. Ein Bug. Profis würden das eleganter lösen, schon klar. Aber das Ganze sitzt, läuft und hat Luft, im Großen und Ganzen.
Jeder einzelne bunte Bildpunkt ist auf Karopapier entstanden, und von Hand in den C64 übertragen worden. Mitte der 80er-Jahre gab´s noch keine tollen Tools. |
Es steckt allerdings ordentlich Arbeit dahinter. Die Grafik entsteht auf Karopapier. Per Bleistift und Lineal stecke ich acht mal acht Karos auf dem Papier ab. Jedes der so entstehenden Felder entspricht der Größe eines “Charakters” – eines Zeichensatz-Elements auf dem C64. Tausend solcher Charakter − kurz: Chars – ergeben zusammen das Bild, das auf dem Monitor bzw. dem Fernseher zu sehen ist. Punkt für Punkt male ich X-Symbole in einige Karos, lasse andere frei. So wachsen Plattformen heran; Monster werden erschaffen; das Heldenflummi entsteht. X für X übertrage ich vom Karopapier als Hexadezimal-Zahlencode in den C64. Grafik wird geboren.
Stolz bin ich auf das Parallaxscrolling in zwei Vollbild-Ebenen: Eine Illusion von räumlicher Tiefe, die zu der Zeit vielleicht ein paar tolle Spielautomaten beherrschen, der C64 aber eigentlich nicht. Mit einem Trick klappt´s doch: Veränderung des Char-Zeichensatz. Einige Chars werden entgegen der Scrollrichtung in sich gerollt. Wenn das synchron zum Hardware-Scrolling passiert, aber in entgegengesetzter Richtung: Dann entsteht der Eindruck, die “manipulierten” Chars fließen mit geringerem Tempo über den Bildschirm als die statischen Pendants. Es wirkt, als schwebten Plattformen über Grund. Als dass Parallaxscrolling das erste Mal funktioniert, starre ich gebannt auf den Bildschirm. Nicht schlecht für ein Listing-Spiel.