Tastenabfrage: ;Entprell-Algorithmus geklaut bei Peter Dannegger... ;die Tasten liegen auf den untern 4 Bits cbr flags,1<1, 1,3,->0 eor tz1,tz0 ;H-Bit zählen 0,2,->tz1 toggeln and tmp,tz0 ;Änderungen nur dann erhalten, wenn im Prellzähler and tmp,tz1 ;beide Bits gesetzt sind (Zählerstand 3) ; Loslasserkennung push tmp ;Kopie and tmp,tas ;nur die Tasten erhalten, die jetzt losgelassen wurden ;entweder: swap tmp ;ins andere Nibble (das ist ja frei) or tfl,tmp ;Bits im anderen Nibble setzen (alternativ) ;oder: ; or tlf,tmp ;Bits im anderen Register setzen (alternativ) ;--- pop tmp ;alten Wert wiederherstellen eor tas,tmp ;erhaltene Änderungen toggeln alten (gültigen) Tastenstatus and tmp,tas ;nur (neu) gedrückte Tastenbits bleiben erhalten or tfl,tmp ;und zugehörige Bits setzen (gelöscht wird nach Abarbeitung) ;in "tas" steht jetzt der gültige Tastenzustand, ;in "tfl" die Flags der neu gedrückten, noch nicht abgearbeiteten Tasten. ;wobei im unteren Nibble die Tastendrücke liegen und im oberen Nibble ;die Loslass-Ereignisse. ;und hier passt noch die Repeat-Erweiterung rein, die allerdings zusammen ;mit der Loslasserkennung nicht sonderlich sinnvoll ist. ret ;fertig...