AmigaOS 4


AmigaOS 4 is a line of Amiga operating systems which runs on PowerPC microprocessors. It is mainly based on AmigaOS 3.1 source code developed by Commodore, and partially on version 3.9 developed by Haage & Partner. "The Final Update" was released on 24 December 2006 after five years of development by the Belgian company Hyperion Entertainment under license from Amiga, Inc. for AmigaOne registered users.

History

During the five years of development, purchasers of AmigaOne machines could download pre-release versions of AmigaOS 4.0 from Hyperion's repository as long as these were made available.
On 20 December 2006, Amiga, Inc. terminated the contract with Hyperion Entertainment to produce or sell AmigaOS 4. Nevertheless, AmigaOS 4.0 was released commercially for Amigas with PowerUP accelerator cards in November 2007. The Italian computer company ACube Systems has announced Sam440ep and Sam440ep-flex motherboards, which are AmigaOS 4 compatible. Also, a third party bootloader, known as the "Moana", was released by Acube on torrent sites; it allows installation of the Sam440ep version of OS4 to Mac Mini G4s. However this is both unofficial and unsupported as of today, and very incomplete, especially regarding drivers. During the judicial procedure, OS4 was still being developed and distributed.
On 30 September 2009, Hyperion Entertainment and Amiga, Inc. reached a settlement agreement where Hyperion is granted an exclusive right to AmigaOS 3.1 and market AmigaOS 4 and subsequent versions of AmigaOS. Hyperion has assured the Amiga community that it will continue the development and the distribution of AmigaOS 4.x, as it has done since November 2001.

Description

AmigaOS 4 can be divided into two parts: the Workbench and the Kickstart.

Workbench

The Workbench is the GUI of OS4, a graphical interface file manager and application launcher for the Operating System. It also includes some general purpose tools and utility programs such as a Notepad for typing text, MultiView for viewing images and Amigaguide documents, Unarc for unpacking Archives, a PDF reader, a number of small preferences programs for changing settings of the GUI and OS, among other programs.

Kickstart

The Kickstart contains many of the core components of the OS. Prior to version 4 of AmigaOS the Kickstart had been released mostly on a ROM. In OS4 the Kickstart is instead stored on the hard disk. It consists mainly of:
  • ExecSG, a preemptive multitasking kernel. ExecSG was licensed to Hyperion Entertainment by Thomas and Hans-Jörg Frieden.
  • Intuition, a windowing system API.
  • AmigaDOS and AmigaShell: AmigaDOS is the disk operating system for the OS, whereas AmigaShell is the integrated Command Line Interface. The CLI and the GUI complement each other and share the same privileges.
  • Petunia, a Motorola 68020 processor emulator with dynamic recompilation, also called just-in-time compilation, for PowerPC based Amigas. It gives OS4 backward compatibility to some extent, it will only run system friendly AmigaOS 3.x programs. For the programs that Petunia is unable to handle, such as most "bang the hardware" Amiga games and Amiga demos, UAE can be used which can emulate different Amiga chipsets as well.

Development process

There have been many different versions of the AmigaOS operating system during its three decades of history.

Versions 1.0 to 1.3

The first AmigaOS was introduced in 1985 and developed by Commodore International. It was nicknamed Workbench from the name of its Graphical user interface, due to an error of Commodore Marketing and Sales Department, which labeled the OS disk just with the name "Workbench Disk" and not with the correct name "AmigaOS Disk ". The first versions of AmigaOS are here indicated with the name of their original disks to preserve original custom.

Versions 2.0 to 3.1

Workbench 2.0 improvements introduced a lot of major advances to the GUI of Amiga operating system. The blue and orange colour scheme was replaced with a grey and light blue with 3D aspect in the border of the windows. The Workbench was no longer tied to the 640×256 or 640×200 display modes, and much of the system was improved with an eye to making future expansion easier. For the first time, a standardised "look and feel" was added. This was done by creating the Amiga Style Guide, and including libraries and software which assisted developers in making conformant software. Technologies included the GUI element creation library gadtools, the software installation scripting language Installer, and the AmigaGuide hypertext help system.

Versions 3.5 and 3.9

After the demise of Commodore International, the later owners of the Amiga trademark granted a license to a German company called Haage & Partner to update the Amiga's operating system. Along with this update came a change in the way people referred to the Amiga's operating system. Rather than specifying "Kickstart" or "Workbench", the updates were most often referred to as simply "AmigaOS".
Whereas all previous OS releases ran on vanilla Amiga 500 with 68000 and 512 kB RAM, release 3.5 onwards required a 68020 or better and at least 4 MB fast RAM.

Versions 4.0 and 4.1

In 2001 Amiga Inc. signed a contract with Hyperion Entertainment to develop the PowerPC native AmigaOS 4 from their previous AmigaOS 3.1 release. Unlike the previous versions which were based on the Motorola 68k central processor, OS4 runs only on PowerPC computer systems. Amiga, Inc.'s distribution policies for AmigaOS 4.0 and any later versions required that OS4 must be bundled with all new third-party hardware "Amigas", with the sole exception of Amigas with Phase5 PowerPC accelerator boards, for which OS4 is sold separately. This requirement was overturned in the agreement reached between Amiga, Inc. and Hyperion in the settlement of a lawsuit over the ownership of AmigaOS 4.
In 2014 Hyperion introduced AmigaOS 4.1 Final Edition incorporating all previous downloadable updates and some new features like unified graphics library with RTG support and support for more than 2 GB RAM.

Version 4.2

In May 2012 Hyperion announced that they were working on AmigaOS 4.2. It would introduce hardware accelerated 3D support, multi-core support, a vastly improved file system API and many other features.

AmigaOS 4 prominent features

Prominent features compared to other operating systems or previous versions of AmigaOS:

Appearance

  • Screens: Users can have as many different screens as they like for any purpose, each with its own application on it; or they can open a public screen which several applications can share. Switching between screens can be done in an instant, and they can come back to an application and find it exactly how they left it. It is even possible to drag the current screen down to reveal another screen behind it, so that they can view two screens simultaneously, or even drag and drop files and other content from one screen to another.
  • Menuing: The menu bar appears at the top of the screen when the right mouse button is pressed down and disappears when it is not needed, thus reducing screen clutter and giving more room to work.

File handling

  • Descriptive file structure: Operating system files are divided up into clearly labelled drawers. For example, all libraries are stored in "Libs:" standard virtual device and absolute path finder for "Libs" directory, Fonts are all in "Fonts:" absolute locator, the files for language localization are all stored in "Locale:" and so on.
  • RAM disk: A virtual hard drive, it acts like any other disk, and stores files and data in memory rather than on the hard drive. The RAM disk is dynamically resizable and takes up only as much memory as it needs to. It can be used as a temporary store for the user's own purposes or as a place for software installers to put temporary files, and is cleared out at reboot so the hard drive will not be cluttered with thousands of unnecessary files that bog down your system. Additionally there is an optional RAD disk, a recoverable version of the RAM disk, which preserves contents after a reboot.
  • Datatypes: Recognises and handles file types: displaying a picture, playing a music file, decoding a video file, rendering a web page etc. Any application can access Datatypes transparently, and thus have the ability to use any file that it has a Datatype for.
  • Icon handling: A file can have a default icon representing the type of file or a custom icon specific to the individual file. Additionally icons can store extra commands and metadata about the associated file – which program to open it in, for example.
  • Assigning devices: Instead of assigning drives a letter or fixed label, each drive can be given a name. Drives can be given more than one name so the system always knows where things are. If it is the system boot drive it is also known as "Sys:". Areas of hard drive can be assigned a label as if they were a virtual disk. For example, it is possible to mount MP3 players as "MP3:" and external networked resources as logical devices.

Other

  • Live CD: The OS4 installation CD can be used as a Live CD.
  • Dockies: A fully configurable docking bar for icons, allowing quick access to most used applications. These dock bar icons, "Dockies", are fully dynamic, which means they can show real-time content and act as useful micro tools. A Docky might act as a magnifying glass, display the time, or show you the latest weather forecast or stock market information direct from the Internet.
  • Scripting: Implemented scripting as a fundamental feature. Using the AREXX scripting language and Python it is possible to automate, integrate and remote control almost every application and function of the computer. Function sets and tools from several applications can be brought together into a single, integrated interface to allow the most complex jobs to be performed with the utmost simplicity.
  • The Grim Reaper: The "Guru Meditation" is replaced by "The Grim Reaper", a crash handling system that attempts to catch crashes and attempts to stop them from getting out of control. It can provide complete information about the crash and optionally suspend the offending task.
  • AmiUpdate: Is an updating system designed purely for the latest incarnation of the AmigaOS 4. It is able to update OS files and also all Amiga programs which are registered to use the same update program that is standard for Amiga. Updating AmigaOS requires only few libraries to be put in standard OS location "Libs:", "Fonts:" etc. This leaves Amiga users with a minimal knowledge of the system almost free to perform by hand the update of the system files.
  • SDK: A Software development kit is available that includes various versions of the GCC compiler, sample code and tools to allow developers to make programs for AmigaOS 4.1 or later.

Compatible hardware

Amiga

Released for Amigas equipped with third party PPC add-on boards:

AmigaOne

Released for AmigaOne motherboards:

Pegasos

Released for Pegasos systems:
  • Pegasos II

Samantha

Released for Sam440 systems:

Versions

VersionRelease dateIntroduced features
4.0Developer Pre-releaseApril 2004First public release
4.0Developer Pre-release Update10 October 2004AltiVec support, PowerPC-native Picasso96 and MUI, USB support for input devices
4.0Developer Pre-release Update 227 December 2004Mass Storage Support for USB
4.0Developer Pre-release Update 314 June 2005PowerPC native Warp3D drivers for Voodoo 3, Voodoo 4/5 and the Radeon 7x00 series of graphics cards; WarpOS support
4.0Developer Pre-release Update 48 February 2006Petunia just-in-time 68k emulator; Warp3D with support for Voodoo 3/4/5 and ATI Radeon models 7000, 7200, 7500, 9000, 9200 and 9250; Intuition supports screen dragging
4.0The Final Update24 December 2006Virtualized memory and faster memory allocation system ; new icon theme
4.0July 2007 Update18 July 2007Support for Shared objects; Python 2.5.1; merge of Tools and Utilities drawers
4.0for Classic AmigaNovember 2007July 2007 Update baseline
4.0February 2008 update for CyberStormPPC and BlizzardPPC23 February 2008Addressed some issues and compatibility problems
4.1AmigaOS 4.117 September 2008Memory paging; JXFS filesystem; Hardware compositing engine; Cairo device-independent 2D rendering library
4.1Quick Fix21 June 2009Addressed some issues
4.1Update 114 January 2010Improved compositing effects ; New notification system Ringhio; DDC support; AppDir: handler and URLopen; new Startup preferences; new icon set; MiniGL V2.2
4.1Update 230 April 2010Updated Python; Cairo 1.8.10 ; AmiDock supports icon scaling
4.1Update 329 August 2011USB 2.0 support; Updated MUI
4.1Update 422 December 2011Emulation drawer with AmigaOS 3.x ROMs and Workbench files; RunInUAE contribution
4.1Update 528 January 2012, 16 August 2012First public release for AmigaOne X1000, later for other platforms. Improved Warp3D and IDE drivers; optimized DMA copy support for Sam440ep and Sam460ex systems; improved Classic compatibility
4.1Update 630 November 2012Auto-update of system components through AmiUpdate
4.1Update 7Internal update, not released for end users, features unknown
4.1Final Edition 18 December 2014Support for more than 2 GB RAM; new unified graphics library with RTG support; improved console; new Intuition and Workbench features; updated Python port; improved DOS; updated context menus; new menus system with unlimited menus and sub menus; thumbnail previews of photos, images in menus; stand alone product, does not require previous releases and does not work as an upgrade over 4.1 Update 6
4.1Final Edition Update 131 December 2016Support for Z3 RAM as regular Fast RAM; support for disks larger than 2 TB; numerous bug fixes
4.1Final Edition Update 223 December 2020Bug-fixes and stability improvements; updated USB-stack and other OS components
4.1Final Edition Update 2 Hot Fix12 January 2021Addressed stability issues after Update 2
4.1Final Edition Update 318 October 2025Bug-fixes and stability improvements; updated TCP/IP stack and USB-stack and other OS components, support for automatic detection of 4K/UHD monitors

Future

For the AmigaOS 4.2, Hyperion Entertainment planned the following updates:
  • Multiple core support
  • New ExecSG scheduler
  • * Selectable policy for scheduling
  • * Scheduling of task groups with internal scheduling of tasks within that group
  • * Scheduling of tasks across multiple CPU cores
  • * Support for real-time scheduling
  • Graphics and Gallium3D
  • * Enables access to full OpenGL implementations like Mesa
  • * Compositing may be done via Gallium3D
  • * Opens the door to replacing the entire graphics subsystem
  • * multi-header support