XL OS

From Atariki

Revision as of 18:11, 4 wrz 2010; view current revision
←Older revision | Newer revision→
Jump to: navigation, search
Zwyczajowa nazwa systemu operacyjnego znajdującego się w ROM-ie komputerów Atari serii XL i XE. Jest to wersja rozwojowa Atari OS rev. B, poprawiona i rozbudowana. System zajmuje 16k w obszarze adresowym od $C000 do $FFFF (dokładne informacje na ten temat znajdują się poniżej).

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:

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. 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

  • BB 02.03 z 23 marca 1984 roku; wcześniejsza wersja prototypowa systemu dla Atari 1450XLD.
  • BB 02.03 z 21 czerwca 1984 roku; późniejsza wersja prototypowa systemu dla Atari 1450XLD.
  • CC 01.04 z 4 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.

Wersje prototypowe zawierają kilka bardziej - ale jednak nie "bardzo" - istotnych zmian w stosunku do BB 01.02, 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-$CFFFPORTB bit0=1system
$1000-$17FF$5000-$57FFPORTB bit7=0SELF TEST
$1800-$3FFF$D800-$FFFFPORTB bit0=1system

Zobacz też: Mapa pamięci.

Download

  • Kod źródłowy: OS.tar.gz (zdisasemblowana wersja BB 01.02)

Odnośniki zewnętrzne

Personal tools