Atari TOS
From Wikipedia, the free encyclopedia
The Operating System (TOS) was the operating system of the Atari ST range of computers. This range included the 520ST, 1040ST and the F, FM and E variations (e.g.1040STE). Later, 32-bit machines (TT, Falcon030) were developed using a new version of TOS, called MultiTOS, which allowed multitasking. More recently, users have developed TOS further into FreeMiNT.
Contents |
[edit] History
[edit] The CP/M operating system
When the first ST model was released back in 1985, Atari had developed an OS largely based on components already existing. The core of this new OS consisted to a great extent of CP/M, originally developed by Gary Kildall and often considered to be the first cross-platform operating system. Kildall had isolated the parts that addressed hardware directly and moved them into a module which he called the BIOS - the Basic Input/Output System. This ensured that the system could easily be adapted to new hardware platforms, without the need for major rewrites of the complete core of the OS. The 68k version of CP/M that Atari adapted for their ST range of computers is referred to as GEMDOS. The Atari GEMDOS comprise the highest level in TOS, while low level tasks are handed over to the BIOS as well as the XBIOS. The latter ran at an intermediate level where it includes routines that the OS needs internally, like managing interrupts and setting screen location.
[edit] GEM - The graphical user interface
Atari added a graphical user interface to GEMDOS in form of GEM, short for Graphical Environment Manager. Originally developed by Kildall's company Digital Research, GEM in its turn consisted of 2 layers - the AES (Application Environment Service) and the VDI (Virtual Device Interface). While the VDI takes care of the actual blitting, drawing, plotting and filling, the AES is the highest level in GEM and as such provides functions to maintain window redraws and drawing of dialog boxes as well as evaluation of user input via the mouse and keyboard. The last ingredient of GEM was the GEM Desktop which in reality was nothing more than a GEM program itself. Via the GEM Desktop the user could now perform almost any task that any command-level operating system would allow, such as copying or deleting files and launching programs. Atari's version of this new, CP/M-based OS was given the name TOS - The Operating System. There have been suggestions that the acronym instead translated to "Tramiel Operating System", after Atari's boss at the time, but early Atari manuals did in fact make direct references to The Operating System.
[edit] TOS - A singletasking OS on chip
The early ST models loaded TOS 1.0 from floppy disk, but Atari soon after started supplying the ST with TOS on a ROM-chip. There were some clear advantages with this approach, and sure enough some disadvantages too. Loading the operating system from a ROM chip made the ST boot up very fast and also saved some precious memory, as the OS did not have to be loaded into RAM. However, with the OS in ROM there was no easy way to allow updates - the user had to get hold of a new TOS ROM-chip and physically replace the old one. Any bugs that might still be lurking in the operating system code would have to be cured by external hacks and patches. TOS was a single tasking operating system, in essence limiting the user to run only one application at a time. As a small exception to this rule there were desk accessories, small programs that were coded to be accessed via the GEM menu bar. While working in a GEM application one could have up to 6 desk accessories open concurrently. This solution in essence meant that TOS had support for a primitive kind of co-operative multitasking in GEM. As opposed to pre-emptive multitasking, which gives each process a regular "slice" of operating time, the co-operative mode means that while several processes might be running simultaneously only one of them can be active at a time. This might sound complex enough but since programs written for GEM need to return control back to the AES while being idle (waiting for user input), this multitasking mode works very well. If however a certain process would perform CPU intensive tasks or wait for user input, any other process would become un-accessible until that task was finished.
[edit] Details
TOS combined Digital Research's GEM GUI running on top of the DOS-like GEMDOS. Features included a flat memory model, MS-DOS-compatible disk format, support for MIDI, and a variant of SCSI called ACSI (in later versions). One of the most interesting aspects of Atari's TOS was that it came on ROM chips, thus before local hard drives were available in home computers it was an almost instant-running OS.
TOS consisted of the following:
- Desktop - The main interface loaded after bootup.
- GEM - Graphical Environment Manager
- AES - Application Environment Service
- VDI - Virtual Device Interface (screen drivers only, other drivers loaded using GDOS)
- GEMDOS - GEM Disk Operating System
- BIOS - Basic Input/Output System
- XBIOS - Xtended BIOS
- Line-A - Low-level high-speed graphics calls. Obsolete
The following were extensions to TOS (loaded separately):
- GDOS - Graphics Device Operation System
- AHDI - Atari Hard Disk Interface (driver for Hard Drive)
Multitasking was not directly supported, TOS allowed desk accessories to be loaded into the system which were similar to TSR's (Terminate and Stay Resident) on PC's (up to a maximum of six). MultiTOS was developed to allow TOS to multitask.
[edit] Desktop
The TOS desktop used icons to represent files and devices, windows and dialog boxes to display info. The desktop file "DESKTOP.INF" was read to determine window settings, icon placements and drive icons, otherwise the standard default desktop of two floppy icons and the trash icon was used.
Later versions used "NEWDESK.INF" for saving and reading the desktop configuration.
Executable files were identified by their extensions:
- *.ACC - Desktop accessory. Automatically loaded.
- *.APP - Application (not common).
- *.PRG - Executable program. Can be GEM programs.
- *.TOS - "TOS" program that didn't use GEM. The desktop cleared the screen, turned on the text cursor and hid the mouse cursor.
- *.TTP - "TOS takes parameters". This opened a dialog box where arguments could be added for the program. However, it converted characters to uppercase.
TOS programs (but not GEM programs) could autoboot by placing them in a folder named "AUTO". TOS 1.4 allowed GEM programs to be set to load automatically from the "Install Application" dialog. Programs with *.TTP extensions could not be used for autoboot. Desktop accessories were placed in the root directory of the default drive and loaded automatically.
[edit] Versions
[edit] TOS 1
- 1.0 (ROM TOS) Earliest version released on disk. First ROM release of TOS.
- Formats: floppy, 2 chip and 6 chip ROMS (192 KiB)
- Rom date: 20 Nov 1985
- Machines: 520ST, 1040ST
- 1.02 (MEGA TOS) fixed bugs, supported Blitter co-processor and real-time clock.
- Formats: 2 chip and 6 chip ROMS (192 KiB)
- Rom date: 22 Apr 1987
- Machines: 520ST, 1040ST, Mega 2, Mega 4
- 1.04 (RAINBOW TOS) Many bug fixes, file selector changed, DOS-compatible disk formatting, much improved performance. However, compatibility problems with older software.
- Formats: 2 chip and 6 chip ROMS (192 KiB)
- Rom date: 6 Apr 1989
- Machines: 520ST, 1040ST, Mega 2, Mega 4, Stacy
- 1.06 (STE TOS, Revision 1) Support for STe machines only. Needed STE_FIX.PRG to patch bugs.
- Format: 2 chip ROMS (256 KiB)
- Rom date: n/a
- Machines: 520STE, 1040 STE
- 1.62 (STE TOS, Revision 2) bug fixes for the previous 1.06 STE TOS.
- Format: 2 chip ROMS (256 KiB)
- Rom date: 1 Jan 1990
- Machines: 520STE, 1040 STE
[edit] TOS 2
- 2.02 Early TOS release for Mega STE.
- 2.05 (Mega STE TOS) Only found in the Mega STE with 720K floppy drive.
- Format: 2 chip ROMS (256 KiB)
- Rom date: n/a
- Machines: Mega STE
- 2.06 (ST/STE TOS) Bug fixes, 1.44 MB disk support, memory test. Greatly enhanced GEM GUI. IDE hard disk booting. Last TOS version for ST/STE computers.
- Format: 2 chip ROMS (256 KiB)
- Rom date: 14 Nov 1991
- Machines: 520ST, 1040ST, 520STE, 1040STE
- 2.07 used on the Falcon prototype "FX-1"
- 2.08 used in notebook ST.
[edit] TOS 3
- 3.01, 3.05, 3.06 (TT TOS) Primarily for 68030 TT support only.
- Format: 4 chip ROMS (512 KiB)
[edit] TOS 4
- 4.00, 4.01, 4.02, 4.04 (512 KiB) Update for Falcon 030 machines only.
- 4.92 Last TOS version, was never released
[edit] See also
[edit] External links
- Town's Guide to TOS Revisions
- TOS/MiNT emulator
- Atari ST System Disks
- TOS 2.06 Guide - User's guide
- Atari Compendium - Reference guide for Atari ST programming. Recommended
- GEM based site
Preceding: | GEM |
Subsequent: | EmuTOS,MiNT,MultiTOS |