WarpOS: Difference between revisions
Further reading: Amiga Review 36; Czech... software available for PowerUP and WarpUP in August 1998 |
Hippietrail (talk | contribs) →WarpUP: correct link to Amiga Hunk |
||
(29 intermediate revisions by 22 users not shown) | |||
Line 1: | Line 1: | ||
{{Short description|Multitasking kernel for PowerPC CPU used by AmigaOS}} |
|||
{{multiple issues| |
|||
{{Distinguish|text=IBM's [[OS/2#1994: OS/2 Warp|OS/2 Warp]]}} |
|||
{{POV check|date=May 2010}} |
|||
{{Infobox OS |
|||
{{Notability|date=May 2010}} |
|||
| name = WarpOS |
|||
| logo = <!-- Filename only: no wikilink, Image: or File: --> |
|||
| logo size = |
|||
| logo caption = |
|||
| logo alt = |
|||
| screenshot = <!-- Filename only: no wikilink, Image: or File: --> |
|||
| caption = |
|||
| developer = [[Haage & Partner]] |
|||
| family = [[AmigaOS]] |
|||
| working state = Discontinued |
|||
| source model = <!-- "Open-source", "Closed-source", or "Source-available" --> |
|||
| released = {{Start date and age|1997}}<!-- If known, add |mm|dd|df=yes --> |
|||
| discontinued = Yes |
|||
| latest release version = Final |
|||
| latest release date = {{Start date and age|2007}}<!-- If known, add |mm|dd|df=yes --> |
|||
| marketing target = [[Amiga]] |
|||
| programmed in = [[PowerPC]] [[assembly language]] |
|||
| language = English |
|||
| update model = Compile from [[source code]] |
|||
| supported platforms = [[Amiga]] [[PowerPC]] |
|||
| kernel type = [[Microkernel]] |
|||
| userland = |
|||
| ui = [[Command-line interface]] |
|||
| license = |
|||
| preceded by = [[AmigaOS]] |
|||
| succeeded by = [[AmigaOS 4]], [[MorphOS]] |
|||
| website = <!-- {{URL|www.example.org}} --> |
|||
}} |
}} |
||
'''WarpOS''' |
'''WarpOS''' is a [[Computer multitasking|multitasking]] [[Kernel (operating system)|kernel]] for the [[PowerPC]] (PPC) architecture [[central processing unit]] (CPU) developed by [[Haage & Partner]] for the [[Amiga]] computer platform in the late 1990s and early 2000s. It runs on [[PowerUP (accelerator)|PowerUP]] accelerator boards developed by [[phase5]] which contains both a [[Motorola 68000 series]] CPU and a PowerPC CPU with shared address space. WarpOS runs alongside the 68k-based [[AmigaOS]], which can use the PowerPC as a [[coprocessor]]. Despite its name, it is not an [[operating system]] (OS), but a kernel; it supplies a limited set of functions similar to those in AmigaOS for using the PowerPC. When released, its original name was WarpUP, but was changed to reflect its greater feature set, and possibly to avoid comparison with its competitor, [[PowerUP (accelerator)#PowerUP software|PowerUP]]. |
||
It was developed by Sam Jordan using 680x0 and PowerPC |
It was developed by Sam Jordan using 680x0 and PowerPC [[assembly language]].{{Ref label|jordan|8}} It was distributed free of charge. |
||
==History== |
==History== |
||
In 1997, [[Phase5]], an [[Amiga]] hardware manufacturer, launched their range of PowerPC (PPC) accelerators for the Amiga. Because AmigaOS was not yet PowerPC native, as a stopgap measure the PowerUP boards were dual-processor boards, incorporating the PPC and a 68K processor (68LC040, 68040 at 25 MHz or 68060 at 50 MHz). They carried the PowerUP kernel on board in an ''erasable programmable read-only memory'' ([[EPROM]]), a similar kernel designed to allow AmigaOS [[application software]] to use both PPC and 68k applications through an ''application programming interface'' ([[API]]) [[Library (computing)|library]] named {{code|ppc.library}}. AmigaOS still required a 68K processor, while the PPC was in effect used as an extremely fast [[coprocessor]] that carried out specific instructions. |
|||
This causes significant slowdown when the OS task switches between the 68K and PPC (a [[context switch]]), because CPU caches must be flushed to maintain memory integrity. The more CPU switches occur in an application, the more the slowdown, often so much that it was pointless to use the PPC processor, being slower than the 68k native binary. The main workaround for this was to simply avoid as many 68k OS calls as possible, or to group them together, but it was difficult and time-consuming for developers to do this. |
|||
In 1997, [[Phase5]], an [[Amiga]] hardware manufacturer, launched their range of PowerPC (PPC) accelerators for the Amiga. Because AmigaOS was not yet PowerPC native, as a stopgap measure the PowerUP boards were dual-processor boards, incorporating the PPC and a 68K processor (68LC040, 68040 at 25 MHz or 68060 at 50 MHz). They carried the PowerUP kernel on board in an [[EPROM]], a similar kernel designed to allow AmigaOS applications to use both PPC and 68k applications through an API library called ppc.library. AmigaOS still required a 68K processor, while the PPC was in effect used as an extremely fast coprocessor that carried out specific instructions. |
|||
Unfortunately, this caused significant slowdown when the OS task switches between the 68K and PPC (a context switch), because CPU caches had to be flushed to maintain memory integrity. The more CPU switches occur in an application, the more the slowdown, often so seriously that it was pointless to use the PPC processor at all, being slower than the 68k native binary. The main workaround for this was simply to avoid as many 68k OS calls as possible, or to group them together, but it was difficult and time-consuming for developers to do this. |
|||
WarpOS was launched as a controversial alternative to Phase5's PowerUP kernel, but eventually became the most used and nominally the standard PPC kernel on AmigaOS.{{Citation needed|date=July 2010}} |
WarpOS was launched as a controversial alternative to Phase5's PowerUP kernel, but eventually became the most used and nominally the standard PPC kernel on AmigaOS.{{Citation needed|date=July 2010}} |
||
==WarpUP== |
==WarpUP== |
||
WarpUP is a high-speed [[ |
WarpUP is a high-speed [[kernel (operating system)|kernel]] for [[PowerPC]] versions of [[Amiga]].<ref name="WarpUp">{{cite web |title=WarpUP |url=http://www.haage-partner.de/amiga/storm/wu_ft_e.htm |date=11 April 2007 |website=[[Haage & Partner]] |access-date=14 June 2010 |archive-date=29 October 2020 |archive-url=https://web.archive.org/web/20201029102754/http://www.haage-partner.de/amiga/storm/wu_ft_e.htm |url-status=dead }}</ref> |
||
WarpUP forms a [[hardware abstraction layer]] between the [[computer hardware|hardware]] and [[software]], and ensures that the applications function correctly on PowerPC architecture. It also forms an interface between PowerPC driven hardware, and 68k compliant software, which allows the optimal exploitation of the speed of the PowerPC |
WarpUP forms a [[hardware abstraction layer]] between the [[computer hardware|hardware]] and [[software]], and ensures that the applications function correctly on PowerPC architecture. It also forms an interface between PowerPC driven hardware, and 68k compliant software, which allows the optimal exploitation of the speed of the PowerPC CPU, while making the [[porting]] of 68k applications as easy as possible.<ref name="WarpUp"/> |
||
Several advantages that WarpUP claims to offer are:<ref name="WarpUp"/> |
|||
* High speed communication between 68k programs and PowerPC CPUs |
* High speed communication between 68k programs and PowerPC CPUs |
||
* Native multi-tasking, memory management, [[Semaphore (programming)|semaphores]], list and tag management, signalling and message handling |
* Native multi-tasking, memory management, [[Semaphore (programming)|semaphores]], list and tag management, signalling and message handling |
||
Line 27: | Line 53: | ||
* Virtual Signals (signals are shared between CPUs and will always be redirected to the correct CPU when needed) |
* Virtual Signals (signals are shared between CPUs and will always be redirected to the correct CPU when needed) |
||
* Inter-CPU messaging system (messages are passed between the CPUs when needed) |
* Inter-CPU messaging system (messages are passed between the CPUs when needed) |
||
* Optimal use of the PowerPC [[ |
* Optimal use of the PowerPC [[memory management unit]] and the PowerPC [[CPU cache]] |
||
* Memory |
* Memory management unit and exception-handling support for applications |
||
* PowerSave function that turns the PowerPC off if |
* PowerSave function that turns the PowerPC off if no applications are using it |
||
* PowerPC Enforcer |
* PowerPC Enforcer, protects the first page of memory |
||
* A detailed crash requester that provides detailed information to help developers locate errors |
* A detailed crash requester that provides detailed information to help developers locate errors |
||
* Integrated debugging system that enables bug tracking easier |
* Integrated debugging system that enables bug tracking easier |
||
* Specific support for highly optimized software such as games and demos |
* Specific support for highly optimized software such as games and demos |
||
* Support for Amiga- |
* Support for Amiga-compliant applications |
||
* Libraries for PowerPC native, mixed and |
* Libraries for PowerPC native, mixed, and fat binary applications |
||
* WarpUP is also usable for alternative developer systems such as [[Modula]]- or E- |
* WarpUP is also usable for alternative developer systems such as [[Modula]]- or E-[[compiler]]s with PowerPC support. This is because [[Object (computer science)|objects]] are not mandatorily created in [[Executable and Linkable Format]] (ELF). Instead, the Amiga compliant [[Amiga Hunk|hunk format]] can be used also. |
||
* Easy to install |
* Easy to install |
||
* Hardware independent |
* Hardware independent |
||
==Features== |
==Features== |
||
WarpOS had similar features to PowerUP, but with some major differences. Most pertinently, it used the [[PowerOpen Environment|PowerOpen]] [[application binary interface]] (ABI), in contrast to PowerUP which used the newer and better supported [[UNIX System V]] (SysV), which ensured both kernels could not be directly compatible. |
|||
From version 14, the WarpOS kernel used a slightly different [[Scheduling (computing)|multitasking scheduler]] than AmigaOS (or PowerUP), based on that in Unix systems with "nice" values, and priorities for its own tasks and processes. This was meant to ensure that all tasks got CPU time, and weren't ''starved'' of CPU time by compute-intensive tasks (as was the case with the original AmigaOS scheduler). However, this was ineffective as it was still limited by the native AmigaOS scheduler and it did create extra difficulties synchronising with the 68k side (particularly for sound). In version 15 WarpOS introduced a concept called ''atomic tasks''. Such tasks are noninterruptible, and scheduling does not take place unless the task explicitly allows to do so.{{Ref label|WUP history|10}} |
|||
WarpOS had similar features to PowerUP, but with some major differences. Most pertinently, it used the [[PowerOpen Environment|PowerOpen]] [[Application binary interface|ABI]], in contrast to PowerUP which used the newer and better supported [[UNIX System V|SysV]], which ensured both kernels could not be directly compatible. |
|||
WarpOS also had an inbuilt [[debugger]] which could be sent to dump information on any crashed tasks to either console window on screen or to serial, depending on environment variables. |
|||
From version 14, the WarpOS kernel used a slightly different [[Scheduling (computing)|multitasking scheduler]] than AmigaOS (or PowerUP), based on that in Unix systems with "nice" values as well as priorities for its own tasks and processes. This was meant to ensure that all tasks got CPU time, and weren't "starved" of CPU time by compute-intensive tasks (as was the case with the original AmigaOS scheduler). However, this was ineffective as it was still limited by the native AmigaOS scheduler and it did create extra difficulties synchronising with the 68k side (particularly for sound). In version 15 WarpOS introduced a concept called atomic tasks. Atomic tasks are non-interruptible, and scheduling does not take place unless the task explicitly allows to do so.{{Ref label|WUP history|10}} |
|||
One of the most lauded features of WarpOS was that it continued the ''[[Amiga Hunk]]'' format of original Amiga [[executable]]s in a variant format named ''Extended Hunk format'' (EHF),{{Ref label|PPC history|2}} and implemented the hunk type named ''HUNK_PPC_CODE''.{{Ref label|EHF specs|3}} This allowed AmigaOS to transparently handle WarpOS executables without needing to patch the OS to recognise them, which PowerUP ''did'' need to do to run its ELF file format. While elegant in theory, the EHF format's downfall was its lack of widespread compiler support (especially [[GNU Compiler Collection]] (GCC)), and the ELF file format was adopted by [[AmigaOS 4]] and [[MorphOS]]. |
|||
WarpOS also had an inbuilt debugger which could be sent to dump information on any crashed tasks to either console window on screen or to serial, depending on environment variables. |
|||
One of the most lauded features of WarpOS was that it continued the "hunk" format of original Amiga executables which implemented the [[Amiga Hunk]] format of executables. This format was called EHF (Extended Hunk format){{Ref label|PPC history|2}}, and implemented the hunk type named '''HUNK_PPC_CODE'''{{Ref label|EHF specs|3}}. This allowed AmigaOS to transparently handle WarpOS executables without having to patch the OS to recognise them, which PowerUP ''did'' have to do to run its [[Executable and Linkable Format|ELF]] fileformat. While elegant in theory, the EHF format's downfall was its lack of widespread compiler support (especially [[GNU Compiler Collection|GCC]]), and the ELF file format was adopted by [[AmigaOS 4]] and [[MorphOS]]. |
|||
Unlike PowerUP, WarpOS could also produce mixed (fat) binaries with both 68k and PPC code, which could run on both Amiga PPC boards and ordinary Amiga systems. This practice was very rare due to the programming complexity of doing so, but the picture datatype in AmigaOS 3.9 (a shared library that loaded, processed and dithered pictures through the AmigaOS datatypes system) was a notable example of its use. PPC equipped systems would notice an immediate large speed-up, while 68k systems and emulators would still be compatible without having crashing or installing another binary. |
Unlike PowerUP, WarpOS could also produce mixed (fat) binaries with both 68k and PPC code, which could run on both Amiga PPC boards and ordinary Amiga systems. This practice was very rare due to the programming complexity of doing so, but the picture datatype in AmigaOS 3.9 (a shared library that loaded, processed and dithered pictures through the AmigaOS datatypes system) was a notable example of its use. PPC equipped systems would notice an immediate large speed-up, while 68k systems and emulators would still be compatible without having crashing or installing another binary. |
||
Line 55: | Line 80: | ||
==Controversy== |
==Controversy== |
||
[[Haage & Partner]], an Amiga software and hardware manufacturer (which also created AmigaOS 3.9), developed a competing kernel to PowerUP named WarpUP, which they claimed would work around the context switching problem, a claim which would be bitterly challenged by Phase5. Phase5 claimed correctly that this hardware problem could not be circumvented by simply optimising the kernel and was a limitation inherent to the almost unique board design, which shared the memory bus between two CPUs of radically different families. WarpOS versions up to V7 were wrappers added around Phase5's [[PowerUP (Kernel)|PowerUP]] kernel but starting from version 8 it was its own PPC kernel running alongside AmigaOS{{Ref label|WUP internals|1}} and was renamed WarpOS. |
|||
As PowerUP was on the EPROM of the boards and Phase5 could not run at the same time with WarpOS, it had to be deactivated by a small software tool. As H&P did not have access to the EPROM, the tool had to make assumptions about the PowerUP kernel and naturally this broke in updated versions. This led to open accusations by WarpOS advocates and by the author, Sam Jordan, that Phase5 were intentionally trying to prevent WarpOS running on their boards. Phase5 also claimed that Haage & Partner abused a free developer board gifted to them to launch this competing kernel (although free, WarpOS was supported almost exclusively by H&P's commercial Storm[[C++]] compiler), and that they had reverse-engineered PowerUP to do so. H&P pointed out that it was unavoidable as long Phase5 refused to allow users to choose what kernel to put on the board EPROM, claiming that the PowerUP kernel was essential for initialising the boards on boot and erasing them would simply render the boards useless.{{Ref label|BPPC flash|4}} |
|||
[[Haage & Partner]], an Amiga software and hardware manufacturer (which also created AmigaOS 3.9), developed a competing kernel to PowerUP called WarpUP, which they claimed would work around the context switching problem, a claim which would be bitterly challenged by Phase5. Phase5 claimed correctly that this hardware problem could not be circumvented by simply optimising the kernel and was a limitation inherent to the almost unique board design, which shared the memory bus between two CPUs of radically different families. WarpOS versions up to V7 were wrappers added around Phase5's [[PowerUP (Kernel)|PowerUP]] kernel but starting from version 8 it was its own PPC kernel running alongside AmigaOS{{Ref label|WUP internals|1}} and was renamed WarpOS. |
|||
Worse still, users were originally only able to run one of these kernels, resulting in much duplication of effort between competing developers determined to use one or the other, often with two versions of software being developed independently.{{Ref label|WUP announcement|5}} Despite there being little or no real difference in performance, debugging capability, usability or stability in either system, and it had become patently clear that neither could hope to work around the hardware context switch issue, a series of claims were made on each side and much fighting in Usenet followed. |
|||
As PowerUP was on the EPROM of the boards and Phase5 could not run at the same time with WarpOS, it had to be deactivated by a small software tool. As H&P did not have access to the EPROM, the tool had to make assumptions about the PowerUP kernel and naturally this broke in updated versions. This led to open accusations by WarpOS advocates and by the author, Sam Jordan, that Phase5 were intentionally trying to prevent WarpOS running on their boards. Phase5 also claimed that Haage & Partner abused a free developer board gifted to them to launch this competing kernel (although free, WarpOS was supported almost exclusively by H&P's commercial StormC++ compiler), and that they had reverse-engineered PowerUP to do so. H&P pointed out that it was unavoidable as long Phase5 refused to allow users to choose what kernel to put on the board EPROM, claiming that the PowerUP kernel was essential for initialising the boards on boot and erasing them would simply render the boards useless.{{Ref label|BPPC flash|4}} |
|||
This resulted in a great number of hurriedly ported, often semi-functional ports of open source software from Windows, often just to "one up" the other side. Steffen Haeuser (who had gained notoriety by declaring, "ELF is a monster !!!", referring to the ELF fileformat{{Ref label|ELF is a monster|6}}) of Hyperion Entertainment CVBA was particularly infamous for his "political" ports being so rushed that they lacked sound or were very unstable, being released just to make up the numbers and produce a list of software greater than that of PowerUP.{{Citation needed|date=July 2010}} |
|||
Worse still, users were originally only able to run one of these kernels, resulting in much duplication of effort between competing developers determined to use one or the other, often with two version of software being developed independently.{{Ref label|WUP announcement|5}} Despite there being little or no real difference in performance, debugging capability, usability or stability in either system, and it had become patently clear that neither could hope to work around the hardware context switch issue, a series of claims were made on each side and much fighting in Usenet followed. |
|||
The impasse between the competing systems was eventually ended by a PowerUP wrapper for WarpOS by Franke Wille,{{ref label|PPClibemu|7}} which allowed running PowerUP software on WarpOS systems. |
|||
The farce generated produced a great number of hurriedly ported, often semi-functional ports of open source software from Windows, often just to "one up" the other side. Steffen Haeuser (who had gained notoriety by declaring, "ELF is a monster !!!", referring to the ELF fileformat{{Ref label|ELF is a monster|6}}) of Hyperion Entertainment CVBA was particularly infamous for his "political" ports being so rushed that they lacked sound or were very unstable, being released just to make up the numbers and produce a list of software greater than that of PowerUP{{Citation needed|date=July 2010}}. |
|||
The bitter infighting in the Amiga community over the two kernels, while brief, produced a rift that eventually culminated in a split between AmigaOS and MorphOS, with most WarpOS and PowerUP developers switching either new AmigaOS implementation respectively.{{Citation needed|date=April 2010}} |
|||
The last section is biased though. The thing was, Steffen Häuser's ports only had instability when running on systems where PowerUP |
|||
applications were running. Running executables from both lead to instabilities. Only systems without PowerUP-Software this did not |
|||
happen (Steffen Häuser did not use any PowerUP-software). The (by MorphOS-fans) often cited "Elf is a monster" was only a funny remark |
|||
to indicate that ELF-executables were quite large in size (which is actually the truth). True, some ports of Steffen Häuser lacked |
|||
sound, he was not an expert on Sound programming. The intention of these port was not "political", though, but that it would be |
|||
"better" that people not using PowerUP would have a port without sound available than no port at all. It was not about "creating a greater list of software". |
|||
WarpOS was intended to be used as a basis for [[AmigaOS 4]] but Haage & Partner dropped the project when their ''AmigaOS 4 PPC'' contract was cancelled by [[Amiga, Inc.]] in 2000.{{Ref label|PPC history|2}} When [[Hyperion Entertainment]] took over the project, they originally had the same idea, but it was later admitted by their developers that it was of very little use in modernising the OS, being written wholly in non-annotated machine code assembly language.{{Ref label|Hermans|9}} |
|||
The impasse between the competing systems was eventually ended by a PowerUP wrapper for WarpOS by Franke Wille{{ref label|PPClibemu|7}}, which allowed users to run PowerUP software on their WarpOS systems. |
|||
The choice of WarpOS over its rival proved to be a [[Pyrrhic victory]], as the standards it had developed around, namely EHF and PowerOpen, were to be wholly abandoned in later development of AmigaOS and its [[Clone (computing)|clones]]. The dual CPU model did not recur. |
|||
The bitter infighting in the Amiga community over the two kernels, while brief, was to produce a rift that would eventually culminate in the split between AmigaOS and MorphOS, with the majority of WarpOS and PowerUP developers switching either new AmigaOS implementation respectively{{Citation needed|date=April 2010}}. |
|||
WarpOS was intended to be used as a basis for [[AmigaOS 4]] but Haage & Partner dropped the project when their "AmigaOS 4 PPC" contract was cancelled by [[Amiga, Inc.]] in 2000{{Ref label|PPC history|2}}. When [[Hyperion Entertainment]] took over the project they originally had the same idea, but it was later admitted by their developers that it proved very little use in modernising the OS, being written wholly in non-annotated machine code assembler.{{Ref label|Hermans|9}} |
|||
The choice of WarpOS over its rival proved to be a [[Pyrrhic victory]], as the standards it had developed around - namely EHF and PowerOpen - were to be wholly abandoned in later development of AmigaOS and its clones. The dual CPU model was not revisited. |
|||
==Legacy support in other operating systems== |
==Legacy support in other operating systems== |
||
[[AmigaOS]] 4 |
[[AmigaOS]] 4 |
||
A wrapper was made for AmigaOS 4.0 & 4.1, first it was included, then it was distributed by GuruMedation team, (not to be confused by Amiga's "Blue" Screen of death that also has the same name). This wrapper supported PowerPC 603e, 604e, AMCC440EP, G3 and G4 CPU's. But failed to work on AMCC460 and P.A.Semi PA6T, |
A wrapper was made for AmigaOS 4.0 & 4.1, first it was included, then it was distributed by GuruMedation team, (not to be confused by Amiga's "Blue" Screen of death that also has the same name). This wrapper supported PowerPC 603e, 604e, AMCC440EP, G3 and G4 CPU's. But failed to work on AMCC460 and P.A.Semi PA6T, |
||
Work is under way to make new wrapper |
Work is under way to make new wrapper named ReWarp. A group named Sakura is responsible for the new wrapper. |
||
===MorphOS=== |
|||
[[MorphOS]] also uses a wrapper to run WarpUP programs, they also have a wrapper for PowerUP, a WarpOS competitor. |
|||
MorphOS also uses a wrapper, to run WarpUP programs, they also have a wrapper for PowerUP, a predecessor of WarpOS. |
|||
==Games for WarpOS== |
==Games for WarpOS== |
||
* CrossFire II |
* CrossFire II |
||
* [[Descent: FreeSpace – The Great War]] |
* [[Descent: FreeSpace – The Great War]] |
||
Line 106: | Line 120: | ||
* [[Hexen: Beyond Heretic|WarpHexen]] |
* [[Hexen: Beyond Heretic|WarpHexen]] |
||
Original title: Hexen: Beyond_Heretic |
Original title: Hexen: Beyond_Heretic |
||
(Same game |
(Same game named UHexen for AmigaOS4) |
||
* [[Nightlong: Union City Conspiracy]] |
* [[Nightlong: Union City Conspiracy]] |
||
Line 122: | Line 136: | ||
==Demos for WarpOS== |
==Demos for WarpOS== |
||
* ''PPC/Warp3D'' – demo by CdBS Software; 2nd at UkonxParty 2000 |
|||
* PPC/Warp3D |
* ''V1.0 Demo'' – PPC/Warp3D by CdBS Software |
||
* ''DeathTrial'' – FixPatch 0.1 |
|||
* V1.0 Demo PPC/Warp3D by CdBSSoftware. |
|||
* ''MusicDisk'' – Earth-Tribe-Media |
|||
* DeathTrial FixPatch 0.1 |
|||
* ''One Day Miracle'' – by Fit ASM'02 64k intro |
|||
* MusicDisk Earth-Tribe-Media |
|||
* ''Booring Trip PPC'' – for UkonxParty 4 in France |
|||
* One day miracle by Fit ASM'02 64k intro |
|||
* ''Greuh!Zillement Beta'' – 2nd @ LTP4 |
|||
* Booring Trip PPC. For the UkonxParty 4 in France. |
|||
* ''Salvation'' – PPC dentro, by Horizontal Lamerz |
|||
* Greuh!Zillement Beta (2nd @ LTP4) |
|||
* ''Flow'' – Winner 64kb at FuckYanica One |
|||
* Salvation (PPC dentro) by Horizontal Lamerz |
|||
* ''Megademo IV'' – Quick PPC port |
|||
* "Flow", Winner 64kb at FuckYanica One |
|||
* ''DeathTrial'' – by Mkd:AGA/CGXwarposPPCAhi+dbplayer |
|||
* Quick PPC Port of Megademo IV |
|||
* ''Equinoxe demoparty invitation'' |
|||
* DeathTrial by Mkd:AGA/CGXwarposPPCAhi+dbplayer |
|||
* ''PRO_GEAR_SPEC'' – WarpOS PPC demo by mankind |
|||
* Equinoxe demoparty invitation |
|||
* ''Mankind MesaGLUT'' – wos+ahi surreal demo |
|||
* PRO_GEAR_SPEC WarpOS PPC demo by mankind |
|||
* ''212'' – by Madwizards; 1st at Delirium 2001 |
|||
* Mankind MesaGLUT wos+ahi surreal demo. |
|||
* |
* ''Amsterdam Blessings'' – by Madwizards; 3rd at M/S 2001 |
||
* |
* ''Cull Bazaar'' – by Madwizards; 11th at Assembly 2001 |
||
* ''Nuance "Subtle Shades 2"'' – 5th place at MS2K+1 |
|||
* CULL BAZAAR by Madwizards; 11th at Assembly 2001 |
|||
* ''4th place at MS99 by NUANCE'' |
|||
* Nuance "Subtle Shades 2" - 5th place at MS2K+1 |
|||
* ''NoSyncIzBack!'' – WOS demo 3rd at IGDRP 2. |
|||
* 4th place at MS99 by NUANCE |
|||
* ''Planet Potion'' – A 64 kB Intro by Potion |
|||
* NoSyncIzBack! - WOS demo 3rd at IGDRP 2. |
|||
* |
* ''Suicidal'' – A 64 kB Intro by Potion |
||
* |
* ''Sayontsheck'' – PPC AGA Demo by Lamers |
||
* ''Luminance'' – PPC WOS v1.1 – UKONX; 1st at Slach 2 1999 |
|||
* Sayontsheck PPC AGA Demo by Lamers |
|||
* |
* ''NoSync'' – by Universe – WOS demo 3rd at Equinoxe 2003 |
||
* |
* ''PowerUp'' – by Universe: Winner WOS demo at Slash 2001 |
||
* ''Everything Dies'' – by Venus Art, PPC WarpUP version |
|||
* PowerUp by Universe: Winner WOS demo at Slash 2001. |
|||
* |
* ''Ghost'' – by Venus Art, PPC WarpUP version |
||
* Ghost... by Venus Art - PPC WarpUP version |
|||
==Emulators for WarpOS== |
==Emulators for WarpOS== |
||
* IFusion, FusionPPC – MacOS 8/9 emulator |
|||
* IFusion / FusionPPC - ''Mac emulator that emulates MacOS 8/9'' |
|||
* WarpSNES |
* WarpSNES |
||
== |
==Programs for WarpOS== |
||
* Frogger – ''Video player'' |
|||
* Frogger - ''Video player'' |
|||
* fxpaint |
* fxpaint |
||
* perfectpaint |
* perfectpaint |
||
* wosdb – ''simple debugger'' |
|||
== |
==See also== |
||
{{Portal|Amiga}} |
{{Portal|Amiga}} |
||
* [[Exec (Amiga)|Amiga exec]] |
* [[Exec (Amiga)|Amiga exec]] |
||
== |
==References== |
||
{{ |
{{Reflist}} |
||
;Notes |
;Notes |
||
#{{note|WUP internals}} [http://groups.google.com/group/comp.sys.amiga.games/msg/ee68ac266ed3a54c Warpsness problems : |
#{{note|WUP internals}} [http://groups.google.com/group/comp.sys.amiga.games/msg/ee68ac266ed3a54c Warpsness problems :]( Steffen Haeuser explains WarpUp kernel at comp.sys.amiga.games |
||
#{{note|PPC history}} See also pages regarding [http://www.amigahistory.co.uk/ppchistory.html history of the PPC processor on Amiga] at Amiga.History site. |
#{{note|PPC history}} See also pages regarding [http://www.amigahistory.co.uk/ppchistory.html history of the PPC processor on Amiga] at Amiga.History site. |
||
#{{note|EHF specs}} [http://www.haage-partner.de/amiga/storm/sc_tec_d.htm EHF specifications] on Haage&Partners site. |
#{{note|EHF specs}} [http://www.haage-partner.de/amiga/storm/sc_tec_d.htm EHF specifications] {{Webarchive|url=https://web.archive.org/web/20071116123304/http://www.haage-partner.de/amiga/storm/sc_tec_d.htm |date=2007-11-16 }} on Haage&Partners site. |
||
#{{note|BPPC flash}} [http://www.sintonen.fi/bppcflash.txt BlizzardPPC Flash] Why WarpOS and Warp3D have problems with Blizzard PPC |
#{{note|BPPC flash}} [http://www.sintonen.fi/bppcflash.txt BlizzardPPC Flash] Why WarpOS and Warp3D have problems with Blizzard PPC |
||
#{{note|WUP announcement}} [http://amigareport.com/ar508/news30.html Amiga Report Magazine] Haage and Partner Announce WarpUP, Phase5 Blasts H&P |
#{{note|WUP announcement}} Dietrich, Wolf; [http://amigareport.com/ar508/news30.html Amiga Report Magazine] {{Webarchive|url=https://web.archive.org/web/20110707133649/http://amigareport.com/ar508/news30.html |date=2011-07-07 }} Haage and Partner Announce WarpUP, Phase5 Blasts H&P |
||
#{{note|ELF is a monster}} [http://groups.google.com/group/comp.sys.amiga.games/msg/6ea3eeac38097c22 comp.sys.amiga.games] Steffen Haeuser comments ELF |
#{{note|ELF is a monster}} [http://groups.google.com/group/comp.sys.amiga.games/msg/6ea3eeac38097c22 comp.sys.amiga.games] Steffen Haeuser comments ELF |
||
#{{note|PPClibemu}} [http://aminet.net/package/util/libs/ppclibemu ppclibemu] ppc.library emulation under WarpOS |
#{{note|PPClibemu}} [http://aminet.net/package/util/libs/ppclibemu ppclibemu] ppc.library emulation under WarpOS |
||
Line 182: | Line 194: | ||
==Further reading== |
==Further reading== |
||
* {{cite magazine |last=Pourtant|first=Jac|date=November 1997|title=Quel noyau pour les cartes PowerPC?|language= |
* {{cite magazine |last=Pourtant|first=Jac|date=November 1997|title=Quel noyau pour les cartes PowerPC?|language=fr|magazine=AmigaNews|publisher=NewsEdition|issn=1164-1746|issue=106|pages=7–10}} |
||
* {{cite magazine |date=December 1997 |title=News, Developers go nuts over |
* {{cite magazine |date=December 1997 |title=News, Developers go nuts over kernel|magazine=Amiga Format |publisher=Future Publishing|issn=0957-4867|issue=104|pages=8}} |
||
* {{cite magazine |date=December 1997|title=Les cartes PowerUP seraient de la poudre aux yeux!|language= |
* {{cite magazine |date=December 1997|title=Les cartes PowerUP seraient de la poudre aux yeux!|language=fr|magazine=Dream|publisher=Posse Press|issn=1259-1165|issue=46|pages=12}} |
||
* {{cite magazine |last=Krenželok|first=Petr |date=January 1998|title=WarpUp your PowerUp?|language= |
* {{cite magazine |last=Krenželok|first=Petr |date=January 1998|title=WarpUp your PowerUp?|language=cs|magazine=Amiga Review|publisher=Atlantida Publishing|issn=1211-1465|issue=33|pages=7–11}} |
||
* {{cite magazine |last1=Fromentin|first1=Brice|last2=Pozzi|first2=Jean-Paul|date=March 1998|title=Les cartes PPC PowerUP de P5|language= |
* {{cite magazine |last1=Fromentin|first1=Brice|last2=Pozzi|first2=Jean-Paul|date=March 1998|title=Les cartes PPC PowerUP de P5|language=fr|magazine=AmigaNews|publisher=NewsEdition|issn=1164-1746|issue=110|pages=12–13, 16}} |
||
* {{cite magazine |date=July 1998 |title=News, PPC developers bury hatchets|magazine=Amiga Format |publisher=Future Publishing|issn=0957-4867|issue=112|pages=9}} |
* {{cite magazine |date=July 1998 |title=News, PPC developers bury hatchets|magazine=Amiga Format |publisher=Future Publishing|issn=0957-4867|issue=112|pages=9}} |
||
* {{cite magazine |date=September 1998|title=PowerPC software|language= |
* {{cite magazine |date=September 1998|title=PowerPC software|language=cs|magazine=Amiga Review|publisher=Atlantida Publishing|issn=1211-1465|issue=36|pages=16, 18, 20–21}} |
||
* {{cite magazine |last=Drummond|first=Richard |date=July 1999 |title=WarpUp 4.0|magazine=Amiga Format |publisher=Future Publishing|issn=0957-4867|issue=125|pages=51}} |
|||
* {{cite magazine |date=May 2000 |title=News, NG AmigaOS for classic Amigas|magazine=Amiga Format |publisher=Future Publishing|issn=0957-4867|issue=136|pages=7}} |
* {{cite magazine |date=May 2000 |title=News, NG AmigaOS for classic Amigas|magazine=Amiga Format |publisher=Future Publishing|issn=0957-4867|issue=136|pages=7}} |
||
Line 194: | Line 207: | ||
{{AmigaOS 4}} |
{{AmigaOS 4}} |
||
{{MorphOS}} |
{{MorphOS}} |
||
{{Microkernel}} |
|||
[[Category:Amiga]] |
[[Category:Amiga]] |
||
Line 199: | Line 213: | ||
[[Category:MorphOS]] |
[[Category:MorphOS]] |
||
[[Category:Operating system kernels]] |
[[Category:Operating system kernels]] |
||
[[Category:Microkernels]] |
Latest revision as of 07:36, 7 August 2024
Developer | Haage & Partner |
---|---|
Written in | PowerPC assembly language |
OS family | AmigaOS |
Working state | Discontinued |
Initial release | 1997 |
Final release | Final / 2007 |
Marketing target | Amiga |
Available in | English |
Update method | Compile from source code |
Platforms | Amiga PowerPC |
Kernel type | Microkernel |
Default user interface | Command-line interface |
Preceded by | AmigaOS |
Succeeded by | AmigaOS 4, MorphOS |
WarpOS is a multitasking kernel for the PowerPC (PPC) architecture central processing unit (CPU) developed by Haage & Partner for the Amiga computer platform in the late 1990s and early 2000s. It runs on PowerUP accelerator boards developed by phase5 which contains both a Motorola 68000 series CPU and a PowerPC CPU with shared address space. WarpOS runs alongside the 68k-based AmigaOS, which can use the PowerPC as a coprocessor. Despite its name, it is not an operating system (OS), but a kernel; it supplies a limited set of functions similar to those in AmigaOS for using the PowerPC. When released, its original name was WarpUP, but was changed to reflect its greater feature set, and possibly to avoid comparison with its competitor, PowerUP.
It was developed by Sam Jordan using 680x0 and PowerPC assembly language.[8] It was distributed free of charge.
History
[edit]In 1997, Phase5, an Amiga hardware manufacturer, launched their range of PowerPC (PPC) accelerators for the Amiga. Because AmigaOS was not yet PowerPC native, as a stopgap measure the PowerUP boards were dual-processor boards, incorporating the PPC and a 68K processor (68LC040, 68040 at 25 MHz or 68060 at 50 MHz). They carried the PowerUP kernel on board in an erasable programmable read-only memory (EPROM), a similar kernel designed to allow AmigaOS application software to use both PPC and 68k applications through an application programming interface (API) library named ppc.library
. AmigaOS still required a 68K processor, while the PPC was in effect used as an extremely fast coprocessor that carried out specific instructions.
This causes significant slowdown when the OS task switches between the 68K and PPC (a context switch), because CPU caches must be flushed to maintain memory integrity. The more CPU switches occur in an application, the more the slowdown, often so much that it was pointless to use the PPC processor, being slower than the 68k native binary. The main workaround for this was to simply avoid as many 68k OS calls as possible, or to group them together, but it was difficult and time-consuming for developers to do this.
WarpOS was launched as a controversial alternative to Phase5's PowerUP kernel, but eventually became the most used and nominally the standard PPC kernel on AmigaOS.[citation needed]
WarpUP
[edit]WarpUP is a high-speed kernel for PowerPC versions of Amiga.[1]
WarpUP forms a hardware abstraction layer between the hardware and software, and ensures that the applications function correctly on PowerPC architecture. It also forms an interface between PowerPC driven hardware, and 68k compliant software, which allows the optimal exploitation of the speed of the PowerPC CPU, while making the porting of 68k applications as easy as possible.[1]
Several advantages that WarpUP claims to offer are:[1]
- High speed communication between 68k programs and PowerPC CPUs
- Native multi-tasking, memory management, semaphores, list and tag management, signalling and message handling
- Memory protection (tasks are allowed to allocate to protected memory areas if need be)
- Virtual Signals (signals are shared between CPUs and will always be redirected to the correct CPU when needed)
- Inter-CPU messaging system (messages are passed between the CPUs when needed)
- Optimal use of the PowerPC memory management unit and the PowerPC CPU cache
- Memory management unit and exception-handling support for applications
- PowerSave function that turns the PowerPC off if no applications are using it
- PowerPC Enforcer, protects the first page of memory
- A detailed crash requester that provides detailed information to help developers locate errors
- Integrated debugging system that enables bug tracking easier
- Specific support for highly optimized software such as games and demos
- Support for Amiga-compliant applications
- Libraries for PowerPC native, mixed, and fat binary applications
- WarpUP is also usable for alternative developer systems such as Modula- or E-compilers with PowerPC support. This is because objects are not mandatorily created in Executable and Linkable Format (ELF). Instead, the Amiga compliant hunk format can be used also.
- Easy to install
- Hardware independent
Features
[edit]WarpOS had similar features to PowerUP, but with some major differences. Most pertinently, it used the PowerOpen application binary interface (ABI), in contrast to PowerUP which used the newer and better supported UNIX System V (SysV), which ensured both kernels could not be directly compatible.
From version 14, the WarpOS kernel used a slightly different multitasking scheduler than AmigaOS (or PowerUP), based on that in Unix systems with "nice" values, and priorities for its own tasks and processes. This was meant to ensure that all tasks got CPU time, and weren't starved of CPU time by compute-intensive tasks (as was the case with the original AmigaOS scheduler). However, this was ineffective as it was still limited by the native AmigaOS scheduler and it did create extra difficulties synchronising with the 68k side (particularly for sound). In version 15 WarpOS introduced a concept called atomic tasks. Such tasks are noninterruptible, and scheduling does not take place unless the task explicitly allows to do so.[10]
WarpOS also had an inbuilt debugger which could be sent to dump information on any crashed tasks to either console window on screen or to serial, depending on environment variables.
One of the most lauded features of WarpOS was that it continued the Amiga Hunk format of original Amiga executables in a variant format named Extended Hunk format (EHF),[2] and implemented the hunk type named HUNK_PPC_CODE.[3] This allowed AmigaOS to transparently handle WarpOS executables without needing to patch the OS to recognise them, which PowerUP did need to do to run its ELF file format. While elegant in theory, the EHF format's downfall was its lack of widespread compiler support (especially GNU Compiler Collection (GCC)), and the ELF file format was adopted by AmigaOS 4 and MorphOS.
Unlike PowerUP, WarpOS could also produce mixed (fat) binaries with both 68k and PPC code, which could run on both Amiga PPC boards and ordinary Amiga systems. This practice was very rare due to the programming complexity of doing so, but the picture datatype in AmigaOS 3.9 (a shared library that loaded, processed and dithered pictures through the AmigaOS datatypes system) was a notable example of its use. PPC equipped systems would notice an immediate large speed-up, while 68k systems and emulators would still be compatible without having crashing or installing another binary.
WarpOS had two housekeeping tasks named Defiant and Babylon5, thought to be named after the USS Defiant from Star Trek DS9 and Babylon 5, its developers being science fiction fans. These would often be reported by new users who did not know what they were appearing in tasks lists.
Controversy
[edit]Haage & Partner, an Amiga software and hardware manufacturer (which also created AmigaOS 3.9), developed a competing kernel to PowerUP named WarpUP, which they claimed would work around the context switching problem, a claim which would be bitterly challenged by Phase5. Phase5 claimed correctly that this hardware problem could not be circumvented by simply optimising the kernel and was a limitation inherent to the almost unique board design, which shared the memory bus between two CPUs of radically different families. WarpOS versions up to V7 were wrappers added around Phase5's PowerUP kernel but starting from version 8 it was its own PPC kernel running alongside AmigaOS[1] and was renamed WarpOS.
As PowerUP was on the EPROM of the boards and Phase5 could not run at the same time with WarpOS, it had to be deactivated by a small software tool. As H&P did not have access to the EPROM, the tool had to make assumptions about the PowerUP kernel and naturally this broke in updated versions. This led to open accusations by WarpOS advocates and by the author, Sam Jordan, that Phase5 were intentionally trying to prevent WarpOS running on their boards. Phase5 also claimed that Haage & Partner abused a free developer board gifted to them to launch this competing kernel (although free, WarpOS was supported almost exclusively by H&P's commercial StormC++ compiler), and that they had reverse-engineered PowerUP to do so. H&P pointed out that it was unavoidable as long Phase5 refused to allow users to choose what kernel to put on the board EPROM, claiming that the PowerUP kernel was essential for initialising the boards on boot and erasing them would simply render the boards useless.[4]
Worse still, users were originally only able to run one of these kernels, resulting in much duplication of effort between competing developers determined to use one or the other, often with two versions of software being developed independently.[5] Despite there being little or no real difference in performance, debugging capability, usability or stability in either system, and it had become patently clear that neither could hope to work around the hardware context switch issue, a series of claims were made on each side and much fighting in Usenet followed.
This resulted in a great number of hurriedly ported, often semi-functional ports of open source software from Windows, often just to "one up" the other side. Steffen Haeuser (who had gained notoriety by declaring, "ELF is a monster !!!", referring to the ELF fileformat[6]) of Hyperion Entertainment CVBA was particularly infamous for his "political" ports being so rushed that they lacked sound or were very unstable, being released just to make up the numbers and produce a list of software greater than that of PowerUP.[citation needed]
The impasse between the competing systems was eventually ended by a PowerUP wrapper for WarpOS by Franke Wille,[7] which allowed running PowerUP software on WarpOS systems.
The bitter infighting in the Amiga community over the two kernels, while brief, produced a rift that eventually culminated in a split between AmigaOS and MorphOS, with most WarpOS and PowerUP developers switching either new AmigaOS implementation respectively.[citation needed]
WarpOS was intended to be used as a basis for AmigaOS 4 but Haage & Partner dropped the project when their AmigaOS 4 PPC contract was cancelled by Amiga, Inc. in 2000.[2] When Hyperion Entertainment took over the project, they originally had the same idea, but it was later admitted by their developers that it was of very little use in modernising the OS, being written wholly in non-annotated machine code assembly language.[9]
The choice of WarpOS over its rival proved to be a Pyrrhic victory, as the standards it had developed around, namely EHF and PowerOpen, were to be wholly abandoned in later development of AmigaOS and its clones. The dual CPU model did not recur.
Legacy support in other operating systems
[edit]AmigaOS 4
A wrapper was made for AmigaOS 4.0 & 4.1, first it was included, then it was distributed by GuruMedation team, (not to be confused by Amiga's "Blue" Screen of death that also has the same name). This wrapper supported PowerPC 603e, 604e, AMCC440EP, G3 and G4 CPU's. But failed to work on AMCC460 and P.A.Semi PA6T,
Work is under way to make new wrapper named ReWarp. A group named Sakura is responsible for the new wrapper.
MorphOS
[edit]MorphOS also uses a wrapper to run WarpUP programs, they also have a wrapper for PowerUP, a WarpOS competitor.
Games for WarpOS
[edit]- CrossFire II
- Descent: FreeSpace – The Great War
Game was first released on WarpOS, then ported to AmigaOS4.0
Original title: DOOM
- Earth 2140
- AmiHeretic
- Heretic II
(Only for WarpOS, not for AmigaOS)
Original title: Hexen: Beyond_Heretic (Same game named UHexen for AmigaOS4)
Game was first released on WarpOS, then ported to AmigaOS4.0
(Only for WarpOS, not for AmigaOS)
(Only for WarpOS, not for AmigaOS)
Demos for WarpOS
[edit]- PPC/Warp3D – demo by CdBS Software; 2nd at UkonxParty 2000
- V1.0 Demo – PPC/Warp3D by CdBS Software
- DeathTrial – FixPatch 0.1
- MusicDisk – Earth-Tribe-Media
- One Day Miracle – by Fit ASM'02 64k intro
- Booring Trip PPC – for UkonxParty 4 in France
- Greuh!Zillement Beta – 2nd @ LTP4
- Salvation – PPC dentro, by Horizontal Lamerz
- Flow – Winner 64kb at FuckYanica One
- Megademo IV – Quick PPC port
- DeathTrial – by Mkd:AGA/CGXwarposPPCAhi+dbplayer
- Equinoxe demoparty invitation
- PRO_GEAR_SPEC – WarpOS PPC demo by mankind
- Mankind MesaGLUT – wos+ahi surreal demo
- 212 – by Madwizards; 1st at Delirium 2001
- Amsterdam Blessings – by Madwizards; 3rd at M/S 2001
- Cull Bazaar – by Madwizards; 11th at Assembly 2001
- Nuance "Subtle Shades 2" – 5th place at MS2K+1
- 4th place at MS99 by NUANCE
- NoSyncIzBack! – WOS demo 3rd at IGDRP 2.
- Planet Potion – A 64 kB Intro by Potion
- Suicidal – A 64 kB Intro by Potion
- Sayontsheck – PPC AGA Demo by Lamers
- Luminance – PPC WOS v1.1 – UKONX; 1st at Slach 2 1999
- NoSync – by Universe – WOS demo 3rd at Equinoxe 2003
- PowerUp – by Universe: Winner WOS demo at Slash 2001
- Everything Dies – by Venus Art, PPC WarpUP version
- Ghost – by Venus Art, PPC WarpUP version
Emulators for WarpOS
[edit]- IFusion, FusionPPC – MacOS 8/9 emulator
- WarpSNES
Programs for WarpOS
[edit]- Frogger – Video player
- fxpaint
- perfectpaint
- wosdb – simple debugger
See also
[edit]References
[edit]- ^ a b c "WarpUP". Haage & Partner. 11 April 2007. Archived from the original on 29 October 2020. Retrieved 14 June 2010.
- Notes
- ^ Warpsness problems :( Steffen Haeuser explains WarpUp kernel at comp.sys.amiga.games
- ^ See also pages regarding history of the PPC processor on Amiga at Amiga.History site.
- ^ EHF specifications Archived 2007-11-16 at the Wayback Machine on Haage&Partners site.
- ^ BlizzardPPC Flash Why WarpOS and Warp3D have problems with Blizzard PPC
- ^ Dietrich, Wolf; Amiga Report Magazine Archived 2011-07-07 at the Wayback Machine Haage and Partner Announce WarpUP, Phase5 Blasts H&P
- ^ comp.sys.amiga.games Steffen Haeuser comments ELF
- ^ ppclibemu ppc.library emulation under WarpOS
- ^ List of software projects of Sam Jordan
- ^ Interview with Ben Hermans from Hyperion Benjamin Hermans comments WarpOS
- ^ Jordan, S: powerpc.library/WarpOS history. 2001
Further reading
[edit]- Pourtant, Jac (November 1997). "Quel noyau pour les cartes PowerPC?". AmigaNews (in French). No. 106. NewsEdition. pp. 7–10. ISSN 1164-1746.
- "News, Developers go nuts over kernel". Amiga Format. No. 104. Future Publishing. December 1997. p. 8. ISSN 0957-4867.
- "Les cartes PowerUP seraient de la poudre aux yeux!". Dream (in French). No. 46. Posse Press. December 1997. p. 12. ISSN 1259-1165.
- Krenželok, Petr (January 1998). "WarpUp your PowerUp?". Amiga Review (in Czech). No. 33. Atlantida Publishing. pp. 7–11. ISSN 1211-1465.
- Fromentin, Brice; Pozzi, Jean-Paul (March 1998). "Les cartes PPC PowerUP de P5". AmigaNews (in French). No. 110. NewsEdition. pp. 12–13, 16. ISSN 1164-1746.
- "News, PPC developers bury hatchets". Amiga Format. No. 112. Future Publishing. July 1998. p. 9. ISSN 0957-4867.
- "PowerPC software". Amiga Review (in Czech). No. 36. Atlantida Publishing. September 1998. pp. 16, 18, 20–21. ISSN 1211-1465.
- Drummond, Richard (July 1999). "WarpUp 4.0". Amiga Format. No. 125. Future Publishing. p. 51. ISSN 0957-4867.
- "News, NG AmigaOS for classic Amigas". Amiga Format. No. 136. Future Publishing. May 2000. p. 7. ISSN 0957-4867.