mini poradnik Action! obsługa klawiatury
Jedna z pierwszych i częstszych interakcji użytkownika z programem to oczekiwanie na naciśnięcie klawisza. W Action! można to zrealizować na co najmniej kilka różnych sposobów. Poniżej trzy najczęściej stosowane.
1. Odczyt rejestru klawiatury KBCODES
Jeden z prostszych sposobów to odczytanie wartości rejestru KBCODES, wartość $FF oznacza że żaden klawisz nie był wciśnięty, każdy inny oznacza kod klawisza lub kombinacji klawiszy. Zerowanie rejestru klawiatury nie jest konieczne, czasem jednak dobrze to zrobić.
proc MAIN()
byte KBCODES=$2FC
KBCODES=$FF
while KBCODE S=$FF do od
KBCODES=$FF
return
2. Użycie procedury systemowej
W systemie operacyjnym Atari znajduje się gotowa procedura oczekująca na naciśnięcie klawisza, można ją bez trudu wykorzystać we własnym programie, ten sposób będzie najkrótszy:
proc KBGET =$F302 ()
proc Main()
KBGET()
return
3. Wykorzystanie sterownika urządzenia „K:”
Wykorzystanie do obsługi klawiatury zainstalowanego w systemie sterownika „K:” to forma „uprzejma”. Wszelako zastosowanie nowego (innego) sterownika klawiatury w systemie w dalszym ciągu winno powodować poprawną pracę programu.
proc MAIN()
byte KEY
open(1,”K:”,4,0)
KEY=getd(1)
close(1)
return
Jest krótka wariacja możliwa do wykorzystania podczas testowania programu, ponieważ uruchomiony Action! domyślnie otwiera kanał nr 7 dla klawiatury:
proc MAIN()
byte KEY
KEY=getd(7)
return
Wersja 3 korzysta z funkcji bibliotecznej GETD() wymagać więc będzie dołączenia biblioteki Action! do skompilowanego programu.