XL OS
From Atariki
Wersja z dnia 18:07, 4 wrz 2010 Krótki (Dyskusja | wkład) (→Wersje - Odkodowałem numery wersji OSów zgodnie z dokumentem "Atari XL Addendum" (xladdendum.pdf) - były błędy.) ← Previous diff |
Wersja z dnia 18:11, 4 wrz 2010 Krótki (Dyskusja | wkład) (→Wersje - łoł,za wcześnie mi sie ENTER wcisnął. Teraz już jest OK.) Next diff → |
||
Linia 25: | Linia 25: | ||
! Adres !! colspan="2" | Nazwa !! Opis | ! Adres !! colspan="2" | Nazwa !! Opis | ||
|- | |- | ||
- | | C002 || D1 || D2 || aaa | + | | C002 || D1 || D2 || rowspan="3" | Data w formacie DDMMYY, zakodowana w BCD |
|- | |- | ||
- | | C003 || M1 || M2 || bbb | + | | C003 || M1 || M2 |
|- | |- | ||
- | | C004 || Y1 || Y2 || ccc | + | | C004 || Y1 || Y2 |
|- | |- | ||
| C005 || colspan="2" | Option byte || Zarezerwowany | | C005 || colspan="2" | Option byte || Zarezerwowany | ||
|- | |- | ||
- | | C006 || colspan="2" | A1 || ddd | + | | 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 || ddd | + | | C007 || colspan="2" | A2 |
|- | |- | ||
- | | C008 || N1 || N2 || aaa | + | | C008 || N1 || N2 |
|- | |- | ||
- | | C009 || N3 || N4 || bbb | + | | C009 || N3 || N4 |
|- | |- | ||
- | | C00A || N5 || N6 || ccc | + | | C00A || N5 || N6 |
|- | |- | ||
| C00B || colspan="2" | Revision No. || Numer rewizji | | C00B || colspan="2" | Revision No. || Numer rewizji | ||
|} | |} | ||
+ | Źródło: Atari XL Addendum - OS Manual, s.26[http://www.scribd.com/doc/28497894/Atari-XL-Addendum-OS-Manual] | ||
+ | |||
+ | Poniżej podano numery wersji znanych wersji systemu. | ||
===Seryjne=== | ===Seryjne=== |
Wersja z dnia 18:11, 4 wrz 2010
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. | 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-$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 BB 01.02)
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