Machs doch mithilfe von Zeilen-IRQs und Zeichensatzgraphik:
Die Linien für die Streckenberandung wird durch Zeichen dargestellt,
dazu müssen die verschiedenen Linien in einen Zeichensatz
gegossen werden. Dann noch Feinabstimmung per VIC/FineScrolling
und die Streckenformen in eine Tabelle abgelegt:
1. Fasse jeweils 4 Pixelzeilen (oder evtl. 8 oder 12) zu Blöcken zusammen.
2. Je Block wird ein IRQ ausgelöst: Zeichen müssen gesetzt und
mit VIC-Feinscrolling die genaue Pixelposition gesetz werden.
3. Linien mit Höhe 4 und DeltaX=[-max:max] max z.B. = 16 und
Schrittweite z.B. 2, ergibt grob 64 Zeichen.
4. Die verschiedenen Kurvenformen können zu einer Tabelle
vorberechnet werden.
Zusätzlich muss vor jedem Bild noch das Alte gelöscht werden.
Je Block sind grob 8 Zeichen und ein paar VIC-Register zu setzen,
dazu noch das IRQ für den nächsten Block vorbereiten.
Je nach Aufwand der Tabelle kannst du auch locker Berg/Tal-Kurven
einbauen.
Das wird iE dem Ansatz entsprechen, der auf einem Atari 2600
implementiert wird. Da muss ja auch je Zeile gezeichnet und
evtl. gerechnet werden.