Tagesarchive: 16.3.2011

GET mit blinkendem Cursor

Heute hatte ich im Forum64 ein Déjà-vu-Erlebnis. Ein Forumsteilnehmer fragte nach einem „Cursor bei GET Abfragen„. Benötigt wurde eine Lösung für einen CBM 8032. Das erinnerte mich gleich an meine eigenen Probleme mit der Implementierung des GET-Befehls bei CBM-Rechnern … vor über 25 Jahren!

Lustigerweise kamen im Forum gleich ein paar hilfreiche Tipps für die Nachbildung eines Cursors auf einem C64. Nur war danach nicht gefragt. Die beste BASIC-Lösung für den 8032 kam vom User Paradroid:

10 poke 167,0:rem cursor ein
20 get a$:if a$=""then 20
30 wait 170,1:poke 167,1:rem warte auf cursor aus (170,1), dann cursor ausschalten (167,1)
40 if a$=chr$(13) then end
50 print a$:goto 10

Die Idee mit dem WAIT-Befehl ist ganz nett, führt aber zu einer hakeligen Eingabe, da immer erst das Ende der Blinkphase abgewartet werden muss. Das hat mir vor einem viertel Jahrhundert schon nicht gefallen. Daher habe ich mir damals eine Assembler-Lösung gebastelt (anders geht’s halt nicht). Das war dann auch meine erste Veröffentlichung in einer Computer-Zeitung (und es gab sogar Geld dafür … was für Zeiten!):

GET mit blinkendem Cursor (auch als PDF)

Manche Lösungen sind halt seeehr, seeehr alt.

Veröffentlicht unter CBM | Ein Kommentar