Biblioteczka kodera Atari XL/XE

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 18:26, 18 paź 2013
Mono (Dyskusja | wkład)
(SpartaDOS X - program odporny na RESET)
← Previous diff
Wersja z dnia 11:19, 16 sie 2023
Mono (Dyskusja | wkład)
(Urządzenia peryferyjne)
Next diff →
Linia 2: Linia 2:
==System== ==System==
 +
 +* [[Programowanie: Program odporny na RESET | Program odporny na RESET]]
 +* [[Programowanie: Jak wykryć system TV | Jak wykryć system TV]]
===CPU=== ===CPU===
* [[Programowanie: Jak stwierdzić typ procesora|Jak stwierdzić typ procesora]] * [[Programowanie: Jak stwierdzić typ procesora|Jak stwierdzić typ procesora]]
* [[Programowanie: Jak stwierdzić, w jakim trybie jest 65C816|Jak stwierdzić, w jakim trybie jest 65C816]] * [[Programowanie: Jak stwierdzić, w jakim trybie jest 65C816|Jak stwierdzić, w jakim trybie jest 65C816]]
 +* [[Programowanie: Odczyt sygnatury rozkazu BRK lub COP na 65C816|Odczyt sygnatury rozkazu BRK lub COP na 65C816]]
===Pamięć=== ===Pamięć===
Linia 28: Linia 32:
==== DOS ==== ==== DOS ====
 +* [[Wiersz poleceń]]
* [[Dostęp do plików]] * [[Dostęp do plików]]
* [[Lista funkcji specjalnych CIO według urządzeń|Funkcje XIO]] * [[Lista funkcji specjalnych CIO według urządzeń|Funkcje XIO]]
Linia 34: Linia 39:
* [[TD Line: wyłączenie i włączenie z poziomu programu]] * [[TD Line: wyłączenie i włączenie z poziomu programu]]
* [[Programowanie: Jak parsować przełączniki z parametrami | Jak parsować przełączniki z parametrami]] * [[Programowanie: Jak parsować przełączniki z parametrami | Jak parsować przełączniki z parametrami]]
-* [[Programowanie: Program odporny na RESET | Program odporny na RESET]]+* [[Programowanie: Dostęp do pamięci rozszerzonej | Dostęp do pamięci rozszerzonej]]
 +* [[Programowanie: Przerywanie długotrwałych operacji klawiszem BREAK | Przerywanie długotrwałych operacji klawiszem BREAK]]
 +* [[Programowanie: Parsowanie zawartości zmiennej środowiskowej | Parsowanie zawartości zmiennej środowiskowej]]
=== Kody === === Kody ===
Linia 42: Linia 49:
* [[Kody klawiszy]] * [[Kody klawiszy]]
* [[Znaki kontrolne edytora ekranowego|Kody kontrolne edytora ekranowego]] * [[Znaki kontrolne edytora ekranowego|Kody kontrolne edytora ekranowego]]
 +* [[Programowanie: Konwersje znaków ATASCII i ANTIC|Konwersje znaków ATASCII i ANTIC]]
==Obliczenia stałoprzecinkowe== ==Obliczenia stałoprzecinkowe==
Linia 50: Linia 58:
* [[Obroty bitowe]] * [[Obroty bitowe]]
* [[Odejmowanie od (2 do X)-1]] * [[Odejmowanie od (2 do X)-1]]
 +* [[Odwrócenie stanu znacznika C]]
* [[Przesunięcie arytmetyczne]] * [[Przesunięcie arytmetyczne]]
* [[Rozszerzenie arytmetyczne]] * [[Rozszerzenie arytmetyczne]]
Linia 60: Linia 69:
* [[Programowanie: Plot w Graphics 0|Plot w Graphics 0]] * [[Programowanie: Plot w Graphics 0|Plot w Graphics 0]]
 +* [[Programowanie: Rysowanie punktu|Rysowanie punktu]]
 +* [[Programowanie: Rysowanie linii|Rysowanie linii]]
* [[Programowanie: Definiowanie niestandardowych trybów graficznych | Definiowanie niestandardowych trybów graficznych]] * [[Programowanie: Definiowanie niestandardowych trybów graficznych | Definiowanie niestandardowych trybów graficznych]]
* [[Programowanie: Konwersja kolorowej grafiki z układu 6845| Konwersja kolorowej grafiki z układu 6845]] * [[Programowanie: Konwersja kolorowej grafiki z układu 6845| Konwersja kolorowej grafiki z układu 6845]]
 +* [[Programowanie: Pełny 240-liniowy hires|Pełny 240-liniowy hires]]
== Dźwięk == == Dźwięk ==
* [[Programowanie: Detekcja stereo|Detekcja stereo]] * [[Programowanie: Detekcja stereo|Detekcja stereo]]
 +* [[Programowanie: Odtwarzanie sampli|Odtwarzanie sampli]]
==Techniki przyspieszania kodu== ==Techniki przyspieszania kodu==
Linia 75: Linia 88:
* [[Inkrementacja i dekrementacja liczb wielobajtowych]] * [[Inkrementacja i dekrementacja liczb wielobajtowych]]
 +* [[Porównywanie liczb wielobajtowych]]
* [[Obliczanie adresu danych dla podprogramów]] * [[Obliczanie adresu danych dla podprogramów]]
* [[Ujemne indeksowanie]] * [[Ujemne indeksowanie]]
* [[Ustawianie i kasowanie znaczników]] * [[Ustawianie i kasowanie znaczników]]
-* [[Użycie rozkazu BIT jako wielobajtowego NOP-a]]+* [[Wielobajtowe NOP-y]]
 +* [http://retro.hansotten.nl/6502-sbc/lee-davison-web-site/some-veryshort-code-bits/ ciekawa strona z przykładami "6502 Shorts by Lee Davison"]
==Inne== ==Inne==
* [[Programowanie: Jak wyłączyć ROM systemu|Jak wyłączyć ROM systemu]] * [[Programowanie: Jak wyłączyć ROM systemu|Jak wyłączyć ROM systemu]]
 +* [[Programowanie: Czekanie na vblank przy wyłączonym systemie]]
 +* [[Programowanie: Użycie OS-a przy wyłączonym ROM-ie|Użycie OS-a przy wyłączonym ROM-ie]]
* [[Programowanie: Dekompresja danych w formacie DEFLATE | Dekompresja danych w formacie DEFLATE]] * [[Programowanie: Dekompresja danych w formacie DEFLATE | Dekompresja danych w formacie DEFLATE]]
* [[Programowanie: Dekompresja danych przy użyciu Exomizera | Dekompresja danych przy użyciu Exomizera]] * [[Programowanie: Dekompresja danych przy użyciu Exomizera | Dekompresja danych przy użyciu Exomizera]]
 +* [[Programowanie: Dekompresja danych w formacie LZ4 | Dekompresja danych w formacie LZ4]]
* [[Programowanie: Zapis na ekran w różnych systemach liczbowych| Zapis na ekran w różnych systemach liczbowych]] * [[Programowanie: Zapis na ekran w różnych systemach liczbowych| Zapis na ekran w różnych systemach liczbowych]]
* [[Prosty generator pseudolosowy|Prosty generator pseudolosowy]] * [[Prosty generator pseudolosowy|Prosty generator pseudolosowy]]
* [[Pętle opóźniające|Pętle opóźniające]] * [[Pętle opóźniające|Pętle opóźniające]]
 +* [[Programowanie: Program odporny na RESET | Program odporny na RESET]]
 +* [[Programowanie: Przesuw poziomy z regulowaną prędkością | Przesuw poziomy z regulowaną prędkością]]
== Urządzenia peryferyjne == == Urządzenia peryferyjne ==
Linia 101: Linia 121:
* [[Wykrycie VBXE]] * [[Wykrycie VBXE]]
* [[Konwersja numeru banku MEMAC B na PORTB i odwrotnie]] * [[Konwersja numeru banku MEMAC B na PORTB i odwrotnie]]
 +
 +===[[Sophia]]===
 +* [[Wykrycie Sophii]]
===Inne=== ===Inne===
* [[APE Time]] * [[APE Time]]
 +* [[URL Submit]]
== Turbo BASIC XL == == Turbo BASIC XL ==

Wersja z dnia 11:19, 16 sie 2023

Biblioteczka, czyli przydatne procedury i fragmenty kodu, głównie w asemblerze.

Spis treści

System

CPU

Pamięć

CIO

Edytor ekranowy

Klawiatura

Grafika

DOS

SpartaDOS X

Kody

Obliczenia stałoprzecinkowe

Ośmiobitowe

Szesnastobitowe

Grafika

Dźwięk

Techniki przyspieszania kodu

Techniki skracania kodu

Inne

Urządzenia peryferyjne

Stacje dysków

Twarde dyski

VBXE

Sophia

Inne

Turbo BASIC XL

Personal tools