XL OS

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 20:15, 4 wrz 2010
Krótki (Dyskusja | wkład)
(Prototypowe - poprawki w numerach wersji także dla OSów prototypowych, +linki do ROMów/źródeł)
← Previous diff
Wersja z dnia 17:23, 5 wrz 2010
KMK (Dyskusja | wkład)
(dr. red.)
Next diff →
Linia 21: Linia 21:
==Wersje== ==Wersje==
-W XL OS data wydania i wersja systemu są zakodowane pod adresem C002-C00B w następujący sposób:+W XL OS data wydania i wersja systemu są zakodowane pod adresem $C002-$C00B w następujący sposób:
-{| border="1"+{| border="1" cellpadding="5"
! Adres !! colspan="2" | Nazwa !! Opis ! Adres !! colspan="2" | Nazwa !! Opis
|- |-
-| C002 || D1 || D2 || rowspan="3" | Data w formacie DDMMYY, zakodowana w BCD+| $C002 || D1 || D2 || rowspan="3" | Data w formacie DDMMYY, zakodowana w BCD
|- |-
-| C003 || M1 || M2+| $C003 || M1 || M2
|- |-
-| C004 || Y1 || Y2+| $C004 || Y1 || Y2
|- |-
-| C005 || colspan="2" | Option byte || Zarezerwowany+| $C005 || colspan="2" | Option byte || Zarezerwowany
|- |-
-| C006 || colspan="2" | A1 || rowspan="5" | Part number, w formacie AANNNNNN, gdzie A to znaki ASCII a N to cyfry w BCD+| $C006 || colspan="2" | A1 || rowspan="5" | Part number, w formacie AANNNNNN, gdzie A to znaki ASCII a N to cyfry w BCD
|- |-
-| C007 || colspan="2" | A2+| $C007 || colspan="2" | A2
|- |-
-| C008 || N1 || N2+| $C008 || N1 || N2
|- |-
-| C009 || N3 || N4+| $C009 || N3 || N4
|- |-
-| C00A || N5 || N6+| $C00A || N5 || N6
|- |-
-| C00B || colspan="2" | Revision No. || Numer rewizji+| $C00B || colspan="2" | Revision No. || Zakodowany binarnie numer rewizji
|} |}
Źródło: Atari XL Addendum - OS Manual, s.26[http://www.scribd.com/doc/28497894/Atari-XL-Addendum-OS-Manual] Źródło: Atari XL Addendum - OS Manual, s.26[http://www.scribd.com/doc/28497894/Atari-XL-Addendum-OS-Manual]
Linia 50: Linia 50:
===Seryjne=== ===Seryjne===
-* AA000000 rev.10 z 26 października 1982 roku; pierwsza wersja dla [[1200XL]].+* 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.+* 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]]. +* 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. 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. 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. 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).+* BB000001 rev. 59 (znany jako 01.3b) z 21 lipca 1987 roku; wersja arabska ROM-u BB000001 rev.3 (lub BB000001 rev.4).
===Prototypowe=== ===Prototypowe===
-* BB000002 rev.3 z 23 marca 1984 roku; wcześniejsza wersja prototypowa systemu dla Atari [[1450XLD]].[http://ftp.pigwa.net/stuff/collections/nir_dary_cds/ROMS/ROMS_OS/XLROMS/1450R3V0.ROM]+* BB000002 rev. 3 z 23 marca 1984 roku; wcześniejsza wersja prototypowa systemu dla Atari [[1450XLD]].[http://ftp.pigwa.net/stuff/collections/nir_dary_cds/ROMS/ROMS_OS/XLROMS/1450R3V0.ROM]
-* BB000002 rev.3 z 21 czerwca 1984 roku; późniejsza wersja prototypowa systemu dla Atari [[1450XLD]].[http://ftp.pigwa.net/stuff/collections/nir_dary_cds/ROMS/ROMS_OS/XLROMS/1450R3VX.ROM]+* BB000002 rev. 3 z 21 czerwca 1984 roku; późniejsza wersja prototypowa systemu dla Atari [[1450XLD]].[http://ftp.pigwa.net/stuff/collections/nir_dary_cds/ROMS/ROMS_OS/XLROMS/1450R3VX.ROM]
-* 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 [[nowe urządzenia|nowych urządzeń]] i [[PBI]]. W zamian [[SIO]] ma wbudowany protokół szybkiej transmisji 38,4 kbps.[http://www.atariage.com/forums/topic/78579-a800ossrc/page__view__findpost__p__961535]+* 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 [[nowe urządzenia|nowych urządzeń]] i [[PBI]]. W zamian [[SIO]] ma wbudowany protokół szybkiej transmisji 38,4 kbps.[http://www.atariage.com/forums/topic/78579-a800ossrc/page__view__findpost__p__961535]
-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.+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]] Istnieje "w obiegu" co najmniej kilkanaście nieoficjalnych wersji z różnymi modyfikacjami, np. [[APE Warp plus OS]]
Linia 82: Linia 82:
==Download== ==Download==
-* Kod źródłowy: [[Media:OS.tar.gz|OS.tar.gz]] (zdisasemblowana wersja BB 01.02)+* Kod źródłowy: [[Media:OS.tar.gz|OS.tar.gz]] (zdisasemblowana wersja BB000001 rev. 2)
==Odnośniki zewnętrzne== ==Odnośniki zewnętrzne==

Wersja z dnia 17:23, 5 wrz 2010

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. 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-$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 BB000001 rev. 2)

Odnośniki zewnętrzne

Personal tools