... nur fällt mir auf Teufel komm raus nichts ein, wie ich das anstelle... Hat jemand sowas schon mal getan?
Gemacht habe ich sowas noch nicht. Aber ich würde wohl so vorgehen, dass ich das Display in Form eines zweidimensionalen Feldes (Array) handhabe. Ungefähr so:
char display[][20];
wobei 20 in diesem Fall die Zahl der Zeichen pro Zeile darstellt und display[0][0] ist das erste Zeichen links oben.
Wenn eine Zeile „nach oben gescrollt" wird, werden die Inhalte der Zeilen (= eine der zwei Dimensionen) „umkopiert". Also so ungefähr:
Zeile[0] bekommt, was in Zeile[1] steht,
Zeile[1] bekommt, was in Zeile[2] steht,
Zeile[2] bekommt, was in Zeile[3] steht,
usw.
Erst wenn alles ordentlich sortiert ist, wird es zum Display übertragen.
HTH
Gregor