Odczyt rekordu tekstowego z edytora ekranowego (INPUT)
From Atariki
(Różnice między wersjami)
| Wersja z dnia 00:06, 29 sie 2009 KMK (Dyskusja | wkład) (Odczyt rekordu z edytora moved to Odczyt rekordu tekstowego z edytora ekranowego (INPUT)) ← Previous diff |
Aktualna wersja KMK (Dyskusja | wkład) |
||
| Linia 3: | Linia 3: | ||
| '''Odpowiednik w [[BASIC]]-u''': <code>INPUT A$</code> | '''Odpowiednik w [[BASIC]]-u''': <code>INPUT A$</code> | ||
| - | '''Wywołanie:''' adresu, pod jaki mają być wpisane znaki, należy załadować do rejestrów A/Y (młodszy/starszy), a następnie podać rozkaz <code>jsr getline</code>. | + | '''Wywołanie:''' adres, pod który mają być wpisane znaki, należy załadować do rejestrów A/Y (młodszy/starszy), a następnie podać rozkaz <code>jsr getline</code>. |
| <code> | <code> | ||
Aktualna wersja
Przeznaczenie: Program czeka, aż użytkownik wpisze ciąg znaków z klawiatury i naciśnie klawisz RETURN. Znaki podczas wpisywania są wyświetlane na ekranie, działają też normalne znaki kontrolne. Odczyt jest robiony z edytora ekranowego, a zatem kanał #0 musi być otwarty (jest to jego stan domyślny, więc wystarczy go nie zamykać).
Odpowiednik w BASIC-u: INPUT A$
Wywołanie: adres, pod który mają być wpisane znaki, należy załadować do rejestrów A/Y (młodszy/starszy), a następnie podać rozkaz jsr getline.
iccmd = $0342
icbufa = $0344
icbufl = $0348
;
getline ldx #$00
sta icbufa,x
tya
sta icbufa+1,x
lda #$ff ;maks. wielkość tekstu
sta icbufl,x
lda #$00
sta icbufl+1,x
lda #$05
sta iccmd,x
jmp jciomain
