XL OS
From Atariki
Systemy operacyjne:
8-bit:
Altirra OS
Atari OS
CP/M
DracOS
OS++
QMEG OS
Turbo-816 OS
XL OS
16/32-bit:
TOS
MultiTOS
FreeMiNT
MagiC
Minix
Spis treści |
Autorzy
- 1200XL: H. Stewart, L. Winner, R.S. Scheiman, Y.M. Chen, M.W. Colburn
- 600XL/800XL/1450XLD: R.S. Scheiman, R.K. Nordin, Y.T. Jang, Vincent Wu, Michael Barrall
Elementy składowe
Na XL OS składają się następujące elementy:
- procedury obsługi przerwań
- CIO
- SIO
- pakiet matematyczny
- relokator binarny (ACX)
- procedury obsługi nowych urządzeń
- program testujący (Self Test)
Ponadto, inaczej niż w poprzednich wersjach, nie ma rozróżnienia na wersję PAL i NTSC - system sam rozpoznaje wersję sprzętu i dostosowuje do tego wewnętrzne ustawienia.
Jako ciekawostkę można dodać, że system zawiera tzw. "tryb przyciągania uwagi" - rodzaj prostego wygaszacza ekranu, który włącza się, gdy użytkownik nie dotyka klawiatury przez ok. 11 minut (dokładnie, 32768 "ramek" VBL, czyli w systemie PAL, 10 minut i 57,2 sek.). Po upływie tego czasu jasność wyświetlanego obrazu redukowana jest o połowę, a kolory tła, tekstu i ramki zaczynają się zmieniać co ok. 5 sekund. Naciśnięcie dowolnego klawisza przywraca normalny stan komputera.
Wersje
W XL OS data wydania i wersja systemu są zakodowane pod adresem $C002-$C00B w następujący sposób:
Adres | Nazwa | Opis | |
---|---|---|---|
$C002 | D1 | D2 | Data w formacie DDMMYY, zakodowana w BCD |
$C003 | M1 | M2 | |
$C004 | Y1 | Y2 | |
$C005 | Option byte | Zarezerwowany | |
$C006 | A1 | Part number, w formacie AANNNNNN, gdzie A to znaki ASCII a N to cyfry w BCD | |
$C007 | A2 | ||
$C008 | N1 | N2 | |
$C009 | N3 | N4 | |
$C00A | N5 | N6 | |
$C00B | Revision No. | Zakodowany binarnie numer rewizji |
Źródło: Atari XL Addendum - OS Manual, s.26[1]
Poniżej podano numery wersji znanych wersji systemu.
Seryjne
- AA000000 rev. 10 z 26 października 1982 roku; pierwsza wersja dla 1200XL.
- AA000001 rev. 11 z 23 grudnia 1982 roku; druga wersja dla 1200XL.
- BB000000 rev. 1 z 11 marca 1983 roku; pierwsza wersja dla 600XL i 800XL.
- BB000001 rev. 2 z 10 maja 1983 roku; najpopularniejsza wersja, znajdująca się w Atari 800XL i większości modeli XE.
- BB000001 rev. 3 z 1 marca 1985 roku; w zasadzie identyczna z BB000001 rev.02 (ulepszony SELF TEST, zmiany w samym systemie są nieistotne). Przeznaczona dla 130XE, znajduje się w części modeli XE.
- BB000001 rev. 4 z 7 maja 1987 roku; ROM dla XEGS.
- BB000001 rev. 59 (znany jako 01.3b) z 21 lipca 1987 roku; wersja arabska ROM-u BB000001 rev.3 (lub BB000001 rev.4).
Prototypowe
- BB000002 rev. 3 z 23 marca 1984 roku; wcześniejsza wersja prototypowa systemu dla Atari 1450XLD.[2]
- BB000002 rev. 3 z 21 czerwca 1984 roku; późniejsza wersja prototypowa systemu dla Atari 1450XLD.[3]
- CC000001 rev. 4 z 6 września 1984; ostatnia wersja prototypowa po zarzuceniu prac nad 1090, przeznaczona dla 800XL i 900XLF. Charakteryzuje się brakiem procedur obsługi nowych urządzeń i PBI. W zamian SIO ma wbudowany protokół szybkiej transmisji 38,4 kbps.[4]
Wersje prototypowe zawierają kilka bardziej - ale jednak nie "bardzo" - istotnych zmian w stosunku do BB000001 rev. 2, oraz parę poprawek, które - co dziwne - nie znalazły się w późniejszych wersjach systemu XL/XE.
Istnieje "w obiegu" co najmniej kilkanaście nieoficjalnych wersji z różnymi modyfikacjami, np. APE Warp plus OS
Rozmieszczenie w pamięci
Jak napisano powyżej, XL OS rezyduje w pamięci ROM o pojemności 16k znajdującej się zasadniczo w obszarze $C000-$FFFF. Pamięć ta jednak nie jest w pełni liniowo zmapowana na przestrzeń adresową 6502. Poniżej znajduje się tabela obrazująca różnice pomiędzy fizyczną lokalizacją zawartości pamięci ROM z systemem, a jej logiczną lokalizacją w przestrzeni adresowej.
Obszar pamięci ROM: | Lokalizacja w pamięci Atari: | Warunek mapowania: | Opis obszaru: |
$0000-$0FFF | $C000-$CFFF | PORTB bit0=1 | system |
$1000-$17FF | $5000-$57FF | PORTB bit7=0 | SELF TEST |
$1800-$3FFF | $D800-$FFFF | PORTB bit0=1 | system |
Zobacz też: Mapa pamięci.
Download
- Kod źródłowy: OS.tar.gz (zdisasemblowana wersja BB000001 rev. 2)
Odnośniki zewnętrzne
- Atari 8-bit Developers Page - strona Freddy'ego Offengi, z której można ściągnąć ROM-y XL OS
- Informacje o systemach operacyjnych na stronie Freddy'ego Offengi