| | TITLE Amiga Emulation Software: Integration vs. Isolation and Amiga Forever vs. Other Packages
| | TOPIC In response to statements released by third parties in 2001,
Cloanto released this study of different approaches to Amiga emulation, including a competitive analysis of
the software included in Amiga Forever vs.
other software. While Amiga Forever was designed to integrate with
the host environment, to exploit its drivers and to multitask with
non-Amiga applications, it is the opinion of Cloanto that other solutions suffer from isolation due
to lack of drivers to support new and diverse hardware, due to
lack of support for the original Amiga custom chips, and due to
complete separation from other operating systems and applications,
which, unlike in Amiga Forever, are not accessible while the Amiga
is running.
| | DISCUSSION Ever since the early planning stages of Amiga Forever a high
priority was placed on supporting the co-existence of Amiga
software and data and a different environment, especially Windows,
which emerged as the most popular second platform accessed by
Amiga users.
This is why already from its first version Amiga Forever included
software such as Amiga Explorer to connect an Amiga and a PC, AmiToRTF
to convert texts from Amiga to Windows formats, MailBX to convert Amiga mail archives to
other formats, and a DOS file system for Amiga computers (which
until version 2.1 of the Amiga operating system did not include one). Further
research made it possible to keep delivering what used to be
considered impossible, e.g. to install Amiga Explorer and the PC
file system from the PC to the Amiga over the serial cable
(without further software on the Amiga side, other than a boot
disk) and to include, in Amiga Forever 5.0, an experimental
version of the Disk2FDI software, which made it possible to read
Amiga disks on the PC. In short, Amiga Forever has always been
a tool for integration, in which even the Amiga emulation environment
was meant to co-exist as much as possible with the host
environment, running at the same time, sharing data, and
exploiting its drivers, file system and TCP/IP connectivity.
Even when the emulation is running in full screen mode,
apparently taking over the entire machine, it is always possible to switch from one operating system to the other in less
than a second.
True, an Amiga which uses the drivers of another operating
system to access the hardware cannot qualify, by the strictest
standards set by those who belong to the Amiga community since the
beginning, to be as "pure" as the original. However we like to consider emulation a kind of magic in
itself, and we are reminded of this each time we see the Workbench 1.3
boot sequence on a super-thin notebook, for example. Sure,
while we would not be able to distinguish the emulated Amiga from
a "real" one, given a "no logo" monitor,
keyboard and mouse, we certainly miss every click, and even the
smell, of that 1985 keyboard, the unforgettable sound of the first
hard disks spinning up, even the black scan lines which we could
still see after closing our eyes. And of course we wish that the
innocence, the curiosity, the freshness, the dreams and the
idealism of those days be with us forever. To us the Amiga is also
a symbol of these feelings. No new computer, not even the
emulation, even if it legally qualifies as an Amiga, can replace
what we feel when we switch on that old Amiga 1000.
First the Amiga gave us the gift of uncompromising excellence,
and then it gave us stability. For years we could keep using the
operating system and application software we knew so well, without
fear that it would change without our control. However the rest of
the computing world did not stand still, and what once seemed so
incredibly perfect also brings with it the risk of increasing
isolation. So, after all, we want both worlds. The old and the
new. What we know so intimately well, and the challenge of the
unexplored. And the reassuring knowledge that new hardware and
standards will keep being supported by the emulation. And speed, of course. And we want it all in the same
box, on the same screen, at the same time, without rebooting.
After all, weren't we among the first to learn the true meaning of
the word "multitasking"? Do you think this is too much
to ask for? We don't. We would not have released version after
version of Amiga Forever
if we did. And if you still need, for some reason, to boot
straight from CD, we even added this feature (without removing the
other emulation components, which for example run under Windows)
to Amiga Forever.
We believe that the emulated Amiga as it is included in Amiga
Forever both comes closest to the original Amiga systems and
expands it through integration with a modern host operating system and with the
underlying and connected technologies. Amiga Forever makes it
possible to not only go back in time on an emotional trip, but it
also allows us to preserve 15 years of experience and work, and to
put these to good use, interfacing the old and the new, history
and future.
From the point of view of performance, it is the opinion of Cloanto that a "less is more"
approach to Amiga emulation results in modest speed gains and in
huge compatibility problems, both on the Amiga side and on the
side of the PC hardware. Amiga Forever always offered an option to
switch off audio in order for the emulation to run slightly
faster. However, removing custom chip
emulation features from an emulation core such as that of UAE,
as has been done according to the FAQ of one of the emulation
programs discussed here, results in very limited speed benefits
when running Amiga software that does not even need the custom
chip functionality (in which case the emulation of those
components is in good part idle), and implies that software
which requires full custom chip functionality (including popular
programs such as Deluxe Paint, Brilliance, Scala, Professional
Draw, Pixel 3D, Music-X, etc., not to mention demos and games) does not run at all.
Since one of the main purposes of emulation, at least according to
Cloanto, is to try to run all Amiga software released since 1984
(yes, the Boing demo is that old...),
the equation does not seem to add up. Similarly, by stripping down GNU/Linux, which already offers a limited set of hardware drivers
compared to Windows and macOS systems, and intentionally moving the requirement for
some drivers even closer to the Amiga side, which notoriously always had a problem
with drivers, the situation in the opinion of Cloanto can only
get worse if Amiga developers have to directly support both PC
hardware and increasingly diverse peripherals and specifications
(e.g. new chipsets, graphics, security, or digital rights management, which is
increasingly interconnected with the hardware).
While it is obvious that by sacrificing compatibility and by
ignoring increasingly popular standards and peripherals some
performance can be gained, we do not believe that this philosophy
is a winning one. We already suffered enough from isolation when
we had a perfect operating system but little or no support from
hardware manufacturers. We do not need that again, with the added
weight of new standards and a much more complex computing world. We don't want another digital camera, scanner,
printer, smart card system or music player for which there is no driver.
Do you?
While software improvements like just-in-time (JIT)
compilation of Amiga code, possibly combined with advanced
optimization and predictive logic can improve the performance of
an emulated Amiga by tens of times, the results of directly
accessing the hardware using "Amiga x86 drivers" are in
practice barely noticeable if at all from the point of view of speed,
because the bottlenecks in modern PCs and in the Amiga emulation
running on them are not at the driver level. But
they are certainly measurable when you miss one of the Amiga
features that had to be sacrificed, or the lack of a driver which
is instead available for another operating system, or the need to
just use the Amiga or that other operating system for a minute,
and then go back to another application. This is a world in which
PCs are designed to quickly suspend or hibernate and then resume
to full productivity in seconds, or even switch from one user
space to another without terminating running applications, not to
reboot only to switch from one program to the other.
We do not mean, by these considerations, to specifically
discuss any potential issues in a certain emulation program or the
other. These factors (support for PC peripherals, drivers,
standards, etc.) are, in our opinion, more general than emulation,
and would apply in a similar way to a "real" Amiga running
on PC hardware. While we share the belief of other Amiga licensees
that the Amiga, given current development resources (which are
inferior to those available to the Windows, Mac or GNU/Linux
community), would be a great operating system for an embedded appliance or
another type of "closed system", when it comes to
supporting what is now considered a modern and expandable personal
computer and the way it is used, we think that the "Classic" Amiga
and its thousands of programs work best hand in hand with another operating system, tapping its
thousands of drivers and some other important applications.
Security is another field which is becoming increasingly vital
on personal computers, and which adds a layer of complexity (also
reducing performance) to every aspect of the operating system,
from the kernel, to the file system, to the management of
multiple users and their applications and data, etc. The Amiga
would probably never have been the simple and elegant system we
know if it had to cope with security. However today an operating
system without security
features seems to be inconceivable even for a hand-held device,
requiring a lot of additional development work. To mention a practical example, the
footprint of Windows XP Embedded, which starts at less than 5 MB,
increases from 14 MB to 25 MB when the security infrastructure is
added to the basic Win32 system.
Other trends which affect the way the Amiga is integrated with
the host environment include:
- Increasingly complex software decreases the likelihood that
some major future popular applications will be available for
the Amiga
- "Always on" internet experience relies on
standards for web browsing, email, instant messaging and
online media which are increasing in both number and
complexity
- Users navigate more through the mainstream internet and less by
following the personalized advice of their more technical friends
- Multimedia is pervasive, and users expect their systems to support all
media formats (latest Flash, H.264, H.265, H.266, streaming
formats, advanced codecs, proprietary content, peer-to-peer,
etc.) as linked on websites, emails, etc.
- With the browser itself having become a platform,
users seeking diversity often simply choose a different web
browser, rather than a different operating system
- Increasing hard disk capacity and content richness is best approached with file systems such as NTFS (transaction is always complete, no need
to check disk for several hours after crash or loss of power)
and ReFS (Resilient File System, evolving from NTFS)
- Pervasive digital rights management (DRM) structure, affecting
portable media player devices, software players and storage devices,
making them subject to new and complex requirements
-
Advanced Configuration and Power Interface (ACPI) is as useful as
it is distributed (e.g. in notebooks, motherboards, CPUs,
batteries, etc.) and complex to support
- New devices need a multitude of new drivers every month, for new chipsets,
network standards (IPv6, WiFi 7, Bluetooth LE, Matter, Thread, 100 Gbit Ethernet, 5G, LTE, WiMax, etc.), for security (smart cards, biometrics, NFC,
secure boot, etc.),
wiring, interface and storage standards (USB-C, USB4, SATA, SAS, NVM Express, M.2, PCI
Express, ExpressCard, FireWire, Thunderbolt 4, DisplayPort, SSD TRIM, etc.), boot
environments (BIOS, EFI, UEFI, etc.), multimedia (8K/4K/3D Blu-ray, TV
tuners, high-DPI displays, etc.), for new input devices,
to support new printers, etc.
- "Intelligent" devices, tending to increase in
number and sophistication as they decrease in size, require
constantly new and updated driver and management software on
the PC side
Specific "best of both worlds" features of Amiga
Forever include:
- Supports all Amiga software by fully emulating custom chips
and supporting and including all ROM versions (0.7 to 3.x)
- High performance provided by JIT compiler and RTG graphics
system with native (e.g. x86) code and low-level access to all
graphics cards (via DirectX, on Windows)
- Native code also used for file system, virtual memory, TCP/IP
- Availability of emulation source code and interface for
Amiga applications to use native code
- Multitasks with the host environment, allowing uninterrupted
use of familiar productivity software and always-on internet
connectivity
- Works in full screen or in windowed mode (but never requires
a reboot)
- Runs from CD/DVD or portable storage, if so desired (without requiring a reboot,
only one mouse click required on Windows systems)
- Can be installed to hard disk, sharing files with the host
operating system (Amiga can read PC files, PC can read Amiga
files)
- Supports NTFS, ReFS and other modern file systems, disk
partitioning methods and boot managers
- Works with advanced configuration and power interfaces (e.g.
suspend, hibernate, power saving, shutdown on UPS low battery,
wake-on-LAN, etc.)
- Benefits from thousands of past, present and future hardware
drivers
- Transparently inherits support for emerging and future
peripherals and specifications
Related Links
| | Article Information | | Article ID: | 13-149 | Platform: | All | Products: | Amiga
Forever | Additional Keywords: | None | Last Update: | 2019-12-30 | | Your feedback is always appreciated. It is safe to link to this page. |
| |