Otwarcie ekranu w trybie graficznym (GRAPHICS)
From Atariki
(Różnice między wersjami)
Wersja z dnia 00:14, 29 kwi 2017 Mono (Dyskusja | wkład) ('S:' zamiast "S:") ← Previous diff |
Wersja z dnia 10:16, 17 wrz 2022 Jhusak (Dyskusja | wkład) (→Metoda najkrótsza) Next diff → |
||
Linia 1: | Linia 1: | ||
+ | === Metoda standardowa, polecana === | ||
+ | |||
Procedura przełącza ekran w wybrany tryb graficzny. W przykładzie może to być tryb Graphics 9 (wywołanie przez JSR GR9) lub Graphics 15 (wywołanie przez JSR GR15). Jako kanał I/O dla grafiki używany jest [[IOCB]] 6, ale równie dobrze może to być dowolny inny. | Procedura przełącza ekran w wybrany tryb graficzny. W przykładzie może to być tryb Graphics 9 (wywołanie przez JSR GR9) lub Graphics 15 (wywołanie przez JSR GR15). Jako kanał I/O dla grafiki używany jest [[IOCB]] 6, ale równie dobrze może to być dowolny inny. | ||
Linia 30: | Linia 32: | ||
jmp [[Tablica skoków#JCIOMAIN|jciomain]] | jmp [[Tablica skoków#JCIOMAIN|jciomain]] | ||
; | ; | ||
- | dev .by 'S:' $9b | + | dev .by "S:" $9b |
+ | |||
+ | === Metoda najkrótsza === | ||
+ | |||
+ | W przypadku, gdzie liczy się pamięć, zwartość kodu, a także przy wprawkach i eksperymentach można zastosować metodę: | ||
+ | |||
+ | lda #GRMODE | ||
+ | JSR $ef90 | ||
+ | |||
+ | Metoda ta wiąże się z ograniczeniami (możliwe ustawienia to tryb graficzny 0-15, bez rozszerzeń typu +16,+32) i otwiera ekran graficzny bez dolnego okna tekstowego. | ||
+ | |||
+ | Metoda ta jest hackerska, używanie jej w dzisiejszych progamach to proszenie się o kłopoty (głównie u innych użytkowników). | ||
+ | |||
[[Kategoria:Niezbędnik kodera]] | [[Kategoria:Niezbędnik kodera]] |
Wersja z dnia 10:16, 17 wrz 2022
Metoda standardowa, polecana
Procedura przełącza ekran w wybrany tryb graficzny. W przykładzie może to być tryb Graphics 9 (wywołanie przez JSR GR9) lub Graphics 15 (wywołanie przez JSR GR15). Jako kanał I/O dla grafiki używany jest IOCB 6, ale równie dobrze może to być dowolny inny.
; ; (c) Lizard ; iccmd = $0342 icbufa = $0344 icax1 = $034a icax2 = $034b ; gr9 lda #9 bne gr ; gr15 lda #15 ; gr pha ldx #$60 ; IOCB #6 lda #$0c ; zamknij jsr cioexe pla sta icax2,x ; tryb lda #<dev ; identyfikator urzadzenia sta icbufa,x lda #>dev sta icbufa+1,x lda #%00001100 ; bez okna tekstowego, odczyt/zapis sta icax1,x lda #$03 ; otworz cioexe sta iccmd,x jmp jciomain ; dev .by "S:" $9b
Metoda najkrótsza
W przypadku, gdzie liczy się pamięć, zwartość kodu, a także przy wprawkach i eksperymentach można zastosować metodę:
lda #GRMODE JSR $ef90
Metoda ta wiąże się z ograniczeniami (możliwe ustawienia to tryb graficzny 0-15, bez rozszerzeń typu +16,+32) i otwiera ekran graficzny bez dolnego okna tekstowego.
Metoda ta jest hackerska, używanie jej w dzisiejszych progamach to proszenie się o kłopoty (głównie u innych użytkowników).