TOS – wielozadaniowy system operacyjny przeznaczony dla komputerów Atari ST, Atari TT, Atari Falcon oraz ich klonów. "TOS" jest skrótem od "The Operating System" lub "Tramiel Operating System" (od nazwiska ówczesnego właściciela firmy Atari Jacka Tramiela).
TOS opiera się w głównej mierze na systemie GEM firmy Digital Research, jest jednak od niego znacznie bardziej rozwinięty.
Historia i ewolucja Podczas konstruowania komputera Atari ST, firma Atari poszukiwała systemu operacyjnego, który mógłby zostać na nim zaimplementowany. Rozważano napisanie systemu własnymi siłami, lecz odrzucono tę opcję jako zbyt ryzykowną. Microsoft zaoferował Windows, lecz z powodu długiego czasu dostarczenia gotowego systemu (2 lata) tę propozycję odrzucono. Ostatecznie wybrano GEM firmy Digital Research. Ponieważ oryginalnie GEM został napisany dla procesorów 8086 a Digital Research nie była zainteresowana jego przepisaniem na 68000, port został wykonany przez programistów Atari. Pierwotnie GEM miał pracować w środowisku systemu CP/M-68K jednak wersja ta była bardzo niestabilna i w efekcie wybrano inny produkt GEMDOS.
Pierwsza wersja TOSopodobnego systemu została zaprezentowana wraz a komputerem Atari 520 ST na targach CES w 1985 r. Zaprezentowana wówczas wersja opierała się jeszcze na CP/M-68K.
TOS, pierwotnie powstał jako system monolityczny. Istniało logiczne rozróżnienie pomiędzy jego elementami, lecz wewnętrznie były one bardzo silnie zintegrowane. Dopiero pojawienie się MiNTa i MultiTOS spowodowało, że niektóre elementy niemal całkowicie wydzieliły się (szczególnie AES oraz Desktop), lecz nastąpiło to dopiero pod sam koniec rozwoju systemu i wersje te nie były oficjalnie rozpowszechniane.
Pierwsza wersja dostarczona klientom (1.0) znajdowała się na dyskietce. Wszystkie następne dostarczane były w modułach ROM zainstalowanych w komputerach.
Wersja 1.0 i wszystkie następne aż do wersji 2.x wyglądały podobnie i miały podobne ograniczenia. Posiadały statyczne bufory pozwalające na otwarcie naraz do czterech okien modalnych, ograniczona z góry była również maksymalna ilość plików w katalogu oraz plików otwartych w tym samym czasie. Kolejne wersje wprowadzały nieznaczne usprawnienia oraz poprawki błędów. Jedynymi większymi zmianami były wprowadzano przez wersję 1.04 możliwość uruchamiania programów podczas startu przez Desktop (a więc po inicjalizacji AESu) oraz wprowadzona przez wersję 1.6 obsługa układów Atari STE.
Wraz z wydaniem wersji 2.x (dla MEGA STE) oraz równocześnie 3.x (dla Atari TT) dokonała się zmiana jakościowa. TOS uzyskał możliwość bootowania z dysku twardego IDE. Rozszerzono maksymalna liczbę okien modalnych (do 7 w 2.x i bez ograniczeń w 3.x). Desktop zyskał możliwość ładowania ikon z dysku.
Wersje 4.x były przeznaczone dla komputera Atari Falcon i oprócz obsługi układów w nim zawartych (DSP, Videl,...) wprowadziła trójwymiarowe, kolorowe okna modalne, obsługę kolorowych ikon.
W planowanej dla Atari Falcon040 nowej wersji 5.0 zawarto wielozadaniową odmianę AESu o numerze 4.0 oraz funkcję ikonifikacji okien (na wzór MultiTOSu). Dostępne są wersje beta oznaczone jako 4.92, jak również sam AES 4 jako element MultiTOSu.
W 1998 r. Milan GmbH zakupiło licencję do źródeł TOSu i dla swojego komputera Milan przygotowało wersję oznaczoną 4.05 zawierającą między innymi warstwę obsługi dla kart PCI.
Projekt Atari Coldifre Project przygotowuje wersję TOSu przystosowaną do procesorów ColdFire.
Wersje Wersje TOSu z zakresu 1.00 do 4.04 (włącznie z wersją 4.92 (beta wersji 5)) zostały opublikowane przez Atari. Wersje TOSu z zakresu 4.05 do 4.08 zostały opublikowane przez Milan Computer GmbH, uzyskała ona prawa modyfikacji TOSu i wraz ze swoim komputerem Milan rozprowadzała wersję oznaczaną 4.05. Najnowsza dostępna wersja dla Milana to TOS 4.08 z GEMDOSem 0.33. Jest to zmodyfikowana wersja TOSu 4, dostosowana sprzętowo do komputera. Zawiera liczne dodatki, sterowniki PCI, łatki itp. Firma Medusa Computer Systems stworzyła dla swoich komputerów TOS 3.06 z poprawkami
Firma Centek w akceleratorze sprzętowymhttps://web.archive.org/web/20080820193053/http://www.czuba-tech.com/CT2/english/welcome.htm zawarła program, który modyfikuje TOS, poprawiając niektóre błędy i określiła jego wersję jako 7.0. W karcie procesorowej CT60 TOS znajduje się w pamięci FlashROM, jest to zmodyfikowany TOS 4.04 z poprawkami, dodanymi sterownikami i niezbędnymi łatkami dla procesora 68060. W najnowszych wersjach zawiera również sterowniki PCI.
Pierwsza wersja TOSu była dostępna w formie plikowej na dyskietce 3,5 cala. Wszystkie następne wersje Atari były zawarte w pamięci ROM komputera. Wersje od 1.0 do 1.04 umieszczone były na modułach o pojemności 192 KB, od 1.6 do 2.06 na modułach o pojemności 256 KB, późniejsze wersje były dostępne na modułach o pojemności 512 KB.
W przypadku najnowszych klonów oraz kart turbo zmodyfikowany TOS znajduje się w pamięci FlashROM co umożliwia łatwe uaktualnienia.
TOS był oferowany w kilku wersjach językowych. Do wersji 4 aby zmienić wersję językową należało wymienić zestaw kości ROM. Od wersji 4 zawiera od razu siedem wersji językowych.
Każda wersja TOSu zawiera w sobie GEMDOS i odmianę GEMu o określonej wersji.
Numer wersji TOSuData wydaniaGEMDOSAESKomputeryRozmiar ROMWersje językoweUwagi0.991985-20-11STangielska, amerykańskaPierwsza wersja, wydana na dyskietce. W pamięci ROM znajdował się jedynie BOOT STRAP1.01985-20-11, 1986-02-060.131.20ST192 KBangielska, amerykańska wersja amerykańska różni się od angielskiej jedynie układem klawiatury,, francuska, niemiecka, szwajcarska wersja niemiecka ze szwajcarskim układem klawiatury,Wydano dwie wersje. Pierwsza na dyskietce, druga w ROM1.021987-22-040.131.20ST, MEGA ST192 KBangielska, amerykańska, francuska, niemiecka, szwedzkaW Wielkiej Brytanii błędnie oznaczony jako 1.09. Znany także jako Blitter TOS1.041989-06-040.151.40ST, STacy, MEGA ST192 KBangielska, amerykańska, francuska, holenderska, hiszpańska, niemiecka, szwajcarska, szwedzkaZnany także jako Rainbow TOS1.61989-07-290.151.40STE256 KBangielska, amerykańska, francuska, hiszpańska, niemieckaSzybko zastąpiona przez wersję 1.62 z powodu błędów. Nie działa na ST.1.621990-01-010.171.40STE256 KBangielska, amerykańska, francuska, niemiecka, szwedzkaNie działa na ST.1.90.171.40STE256 KBWersja testowa2.02?0.19?STE256 KB? wraz z wersją 2.0 wprowadzona została obsługa dysków IDE, pamięci FAST-RAM2.051990-12-050.193.10MEGA STE256 KBangielska, amerykańska, francuska, niemiecka, włoska, szwedzka2.061991-14-110.203.20MEGA STE, Atari STBook256 KBangielska, amerykańska, francuska, niemiecka, polska stworzona przez polskiego dystrybutora, za zgodą, szwajcarska, szwedzkaWersja dla STBOOK zawierała dodatkowo oprogramowanie sieciowe2.071991-02-290.203.20Atari Sparrow256 KBamerykańska Wersja TOSu dla prototypu Falcona2.081992-03-10?3.20Atari STPAD512 KBamerykańskaObsługuje ekran dotykowy w STPADzie, nigdy nie rozpowszechniany3.011990-03-010.193.00Atari TT512 KBamerykańskaDla wczesnych wersji TT ze stacją dysków 720 KB3.051990-05-120.193.10Atari TT512 KBamerykańskaDla wczesnych wersji TT ze stacją dysków 1,44 MB3.061991-24-090.203.20Atari TT512 KBangielska, niemieckaWersja finalna dla TT4.011992-10-020.303.31Atari Falcon512 KBangielska, amerykańska, francuska, hiszpańska, niemiecka, włoska, szwajcarskabłędy w obsłudze DSP, błędy w obsłudze wielu partycji na jednym dysku (możliwa utrata danych, zalecana aktualizacja do 4.04)4.021993-01-260.303.40Atari Falcon512 KBangielska, amerykańska, francuska, hiszpańska, niemiecka, włoska, szwajcarskabłędy w obsłudze wielu partycji na jednym dysku (możliwa utrata danych, zalecana aktualizacja do 4.04)4.041993-08-030.303.40Atari Falcon512 KBangielska, amerykańska, francuska, hiszpańska, niemiecka, włoska, szwajcarska4.921993-22-060.304.10Atari Falcon512 KBangielska, amerykańska, francuska, hiszpańska, niemiecka, włoska, szwajcarskaNieoficjalnie rozprowadzana wersja beta TOSa 5.0 z multiAESem4.97????512 KB?
Inne wersje TOS mógł być modyfikowany przy pomocy różnego specjalnie do tego przeznaczonego oprogramowania. Takie programy jak WINX dodawały pewne funkcje jak również pozwalały na modyfikację ustawień. Możliwe było zarówno modyfikowanie TOSu uprzednio relokowanego do obszaru RAM jak i również zapisanie tych zmian i wgranie do modułu ROM, następnie zastąpienie oryginalnego TOSu dostarczonego razem z komputerem. We wszystkich modelach układy ROM były montowane na podstawkach aby umożliwić łatwą wymianę.
Dla każdej z wersji powstały też zestawy modyfikujące oraz poprawiające błędy o nazwie TOSPATCH. Było to po części wynikiem powstawania różnego rodzaju rozszerzeń, głównie kart procesorowych jak również automatycznego zawarcia oficjalnych łatek poprawiających oficjalne błędy.
Pierwszą wersją TOSu z poprawkami był KAOS – oparty na poprawkach do wersji 1.4.
Następcy W okolicach 1992–1993 r., Atari zaczęło rozglądać się za możliwością wprowadzenia wielozadaniowości z wywłaszczeniem do TOSu. W tym celu zaadaptowało projekt MiNT i na jego bazie powstał MultiTOS. Zostało wydane kilka wersji, lecz niestety zanim projekt uzyskał niezbędną stabilność został zarzucony w związku z rezygnacja Atari z segmentu rynku komputerów domowych. Szczęśliwie, źródła systemu zostały wcześniej udostępnione na zasadzie bezpłatnej licencji i są do dziś rozwijane w projekcie FreeMiNT.
Komponenty Pierwsza wersja TOSu była dostarczona na dyskietce i wczytywana podczas startu komputera. Następne były dostarczone w pamięci ROM, początkowo o wielkości 192 KB, później 256 KB a ostatecznie 512 KB.
TOS składa się z następujących elementów:
ROM GEMDOS – (GEM Disk Operating System) zapewnia obsługę systemu plików, zarządzania pamięcią oraz procesami, GEM – (Graphical Environment Manager) zapewnia graficzny interfejs użytkownika, składa się z następujących elementów: VDI – (Virtual Device Interface) – zapewnia rysowanie prymitywów graficznych oraz czcionek bitmapowych, AES – (Application Environment Services) zapewnia obsługę okien, przekazywanie komunikatów, GEM Desktop – Menedżer plików, powłoka zapewniająca funkcjonalność biurka po starcie systemu BIOS – zapewnia obsługę urządzeń wejścia/wyjścia XBIOS – (eXtended BIOS) zapewnia obsługę urządzeń zależnych od modelu komputera. LineA – odpowiedzialny za podstawowe operacje graficzne, razem z BIOS oraz XBIOS stanowią najniższą warstwę logiczną systemu TOS (korzystanie z niego jest niezalecane, gdyż do pewnego stopnia koliduje a AESem i powoduje problemy z kompatybilnością) VT-52 – emulator terminala w standardzie VT-52 (opisywany w bazie termcap i terminfo jako atari, atari_st, st52).
Wszystkie one znajdowały się w pamięci ROM.
Doładowywane z dysku Dodatkowo, z czasem stało się możliwe doładowanie z dysku następujących elementów:
sterownik AHDI – sterownik Atari Hard Disk Interface, obsługujący dyski twarde, sterownik XHDI – sterownik eXtended Hard Disk Interface, obsługujący dyski twarde, GDOS – zapewnia obsługę drukarek oraz renderowanie czcionek wektorowych, MetaDOS – sterowniki zapewniające obsługę CD-ROMu,
Oprogramowanie dostarczane z komputerem Do komputerów Atari wyposażonych w TOS dołączane były specjalne dyskietki. Ilość dyskietek i ich zawartość zmieniała się w zależności od wersji systemu i komputera.
Language Disk ST Basic w późniejszym czasie Omikron Basic akcesorium CONTROL.ACC (program typu panel sterowania, podobny nieco do zawartego w systemie Microsoft Windows 3.0, od wersji 2.0, XCONTROL.ACC, eXtended Control Panel – rozbudowana i modularna (umożliwiająca ładowanie modułów w formacie CPX) wersja panelu sterowania wraz z kilkunastoma podstawowymi modułami, przyjęta jako standard, powstało wiele tego typu modułów Atari Advanced Hard Disk Utilities HDX – oprogramowanie do obsługi dysku twardego (sterownik, partycjoner, itp.)
Proces rozruchu systemu Po uruchomieniu, TOS podejmuje następujące kroki:
włączenie ekranu poprzez inicjalizację układów graficznych