Hi Bastler und Denker, gegeben ist ein Leddisplay mit 20 (h) x 40 (b) Bildpunkten. Die pixel sind zu 5x 8bytes in der Breite, das ganze 20x übereinander, ansprechbar. Es gibt somit einen Bildspeicher mit 100 bytes. Ein Zeichen eines 12x16 fonts belegt in der Breite ein ganzes byte und die restlichen 4 bit werden auf den bytes links und rechts verteilt. Das ganze in der Höhe 16x. Ein waagrechtes scrollen ist durch shiften der bits relativ einfach zu machen, man muss halt die aus dem byte geshifteten bits in die Nachbarbytes hinein kopieren. So, jetzt die eigentliche Frage, wie scrollt man am geschicktesten einzelne (!) Zeichen in der Vertikalen? Die komplett belegten bytes werden einfach nach oben/unten im Speicher rum kopiert. Bleiben jetzt die 'angebrochenen' byte(s). Gibt's da einen Trick, das elegant und schnell zu machen? Der Bildspeicher wird natürlich ständig angezeigt, wenn das Manipulieren langsam geht, dann verwischt es ja die Anzeige. Wenn man die Manipulation außerhalb der Bildspeichers vornimmt und das Ergebnis dann nur in den Bildspeicher kopiert, wird das besser aussehen. Bleibt aber immernoch, wie macht man das am schönsten=schnellsten. Es muss ein 12x16 Zeichen zeilenweise nach oben/unten aus dem Bildspeicher geschoben werden und der freie Platz wird durch ein anderes Zeichen belegt, halt wie bei einem Walzenzählwerk.
Der Bildspeicher ist ein eindimensionales array.
Der Bildspeicher ist ein eindimensionales array.
Raum für Notizen
-----------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------