 |


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
|
 |
 |
Amiga Emulation
Introduction
 |
 |
|
|
|
Amiga
Emulation Sample Screen |
|
|
An "emulator" is a system that is designed to
provide the functionality of a different system. In the case of an Amiga emulator, the
Motorola 68K CPU, the Amiga custom chips and other logic are emulated by software. The
Amiga emulation environment in itself does not replace the operating system on which it
runs (the "host environment"), but rather it takes advantage of the system's
graphics, sound and filing system drivers, of the memory protection, virtual memory,
windowing, etc. In this way, the Amiga can run in a window, next to other applications, or
it can run in full screen. In most cases, the emulated Amiga can read and write files on
the host system, it can print, and it can crash and display a "Guru" message
(but this will not cause the host environment or the emulator to go down with it), and
then be reset, exactly like a normal Amiga. It is even possible to run an Amiga with
version 1.3 of the operating system in one window, and one with version 3.0 in another
window, next to it. In all cases, each emulated Amiga has one window or one full screen
open in the host environment, and within that specific window or screen all Amiga action
is rendered, as if that window or screen were the monitor connected to a "real"
Amiga.
Amiga Forever includes different implementations (Windows, DOS,
etc.) of the UAE and Fellow Amiga emulators,
while other versions can easily be downloaded and installed following the links on the Amiga Forever Home Page. Other
components of Amiga Forever, such as the Amiga
Explorer PC/Amiga networking software, or Amiga programs like Personal Paint, are fully independent from the
emulation environment, and can be installed and run separately, either on a real Amiga, or
in emulation mode.
Compatibility and Performance
Several types of emulators have been developed for a variety of
systems, with more or less different approaches to the emulation of the target system.
Basically, to different extremes, some emulators emulate a computer's hardware, while
others emulate its operating system (OS). Emulating the operating system means that the
original OS is replaced with an "imitation", which makes it possible to avoid
copyright and other legal issues regarding the "look and feel" and the original
OS and ROM code, for example, and also allows for faster execution of the (replaced) OS
functions, because the new functions are written specifically for the host environment,
and are not running in emulation mode. The major drawback of this approach is the reduced
compatibility with respect to the original OS because, by definition, the
replacement OS is not exactly the same as the original operating system, with all its more
or less documented idiosyncrasies, side effects and, in some cases, even little bugs
exploited by applications which may be aware of them, or even not. Additionally, in the
case of the Amiga, emulating the OS would solve only a relatively small part of the task,
because ever since the Amiga was released, programmers were encouraged directly by
Commodore, and were inspired by the exciting Amiga architecture itself, to directly access
and exploit hardware features such as the "blitter" and "copper"
chips, sprites, HAM screen modes, etc. These features, which made the Amiga so special and
superior when it appeared, are not provided by the OS, but are instead part of the Amiga
custom chips, which can be accessed directly by the software. The various implementations
of Amiga emulation software included on Amiga Forever try to perfectly emulate the Amiga
hardware. This allows not only existing games and productivity software to continue to run
on new computers without changes, but it also makes it possible for the original Amiga OS
and ROMs to run on the emulator, and to be accessed by existing as well as by new Amiga
software, with predictable and trusted results. Amiga Forever not only includes officially
licensed Amiga OS and ROM components, but
thanks to this uncompromising technical and legal approach was also approved by Amiga
International Inc. to carry the official "Powered by Amiga" logo.
The overhead associated with emulating different hardware components
in software is such that the emulated parts are roughly between 5 and 20 times slower than
the original components would be if they were running at the same speed as the hosting
hardware. The Amiga OS, which is as efficient and fast as it is elegant, was designed to
run smoothly with hardware that was available around 1985. Since then, many platforms and
CPUs doubled in speed every 12-24 months. As a result, the overall (subjective) feeling of
the UAE and Fellow emulators is that a Pentium CPU running at 133 MHz compares well with
an Amiga 500, providing enough usability for tasks such as word processing and programs
such as Personal Paint. It certainly makes an
impressive and very useful Amiga notebook. The use of sound and the type of frame refresh
rates and custom chip effects used in many games require more powerful machines. Other
parts of the emulation, such as the filing system, can easily be faster than an original
Amiga when an Amiga partition on the emulation environment is mapped directly to the host
filing system. On such a 133 MHz Pentium system, the 68000 CPU is already emulated at more
than twice the speed of an Amiga 500. The custom chips add to the overhead, resulting in
an overall poorer performance if they are used intensively, as they are in some games. A
Pentium Pro or Pentium II running at 200 MHz feels like an Amiga 3000/030, again with a
very responsive filing system, and even a faster windowing action when used with the Picasso 96 drivers. To make an example of a
CPU-intensive task, compiling Personal Paint with SAS/C in UAE emulation on a Pentium
Pro/200 MHz system takes about twice as long as on an Amiga 4000/040. Intel systems
running at 300 MHz have been tested running some of the most demanding games in real time,
without missing a single frame, and with perfect audio. The Amiga custom chips have only
one important emulation requirement, which is to be able to run in real time. For timing
reasons, it would not be practical to speed them up beyond their original performance.
Once this is achieved, all the power of the host CPU(s) can focus on emulating the Amiga
68K CPU. In practical applications, the Unix version of UAE running on a 533 MHz Alpha CPU
has already shown to be faster than a similarly equipped Amiga 4000 with a 68060 CPU. Of
the two, the Amiga 4000 was the more expensive system.
Compared to the superior performance of emulation components such as
the CPU, the filing system, and the Picasso 96 graphics subsystem, sound lies on the other
end. On the Amiga, sound is synchronized with the display in such a way that unless a full
video frame rate is achieved in real time (50 frames per second), then audio cannot be
output smoothly. For this reason, audio is disabled by default in some of the preinstalled
Amiga Forever emulation configurations. Again, audio emulation can be of acceptable
quality on a 133 MHz Pentium CPU, if the application does not make intensive use of
other custom chip features.
Bernd Schmidt, chief designer and author of the UAE emulator,
describes some performance issues of the custom chips as follows:
All timings I give here were measured on my machine, a 90 MHz
Pentium, using SVGAlib, with the FASTER_CPU and DONT_WANT_SOUND options... For games and
demos, the CPU speed does not matter, but the average frame time is important... A real
A500 has a constant frame time of 20 ms (50 Hz). If you have a game/demo that has lots of
blitter activity, many copper/sprite effects, dual playfields and scrolling, no one can
help you. Fortunately, this case is extremely rare. Normal games that have a number of
blitter objects, scrolling and maybe some sprites run at 1/3-1/4 the speed of an A500 in
the worst case, some run at 1/2 the speed. Lowering the frame rate helps enormously here,
and at 1/5 frame rate, about everything runs somewhere between 50% and 100% the speed of
an A500. This still isn't the full story (I bet you start to see why the question is hard
to answer). A real A500 without fast memory gets slowed down to about half its speed in
Hires 16 color mode. More bitplanes also slow UAE down, but not quite as much, so it can
be several times faster than an A500 in that mode."
Frequent questions about Amiga emulation include the performance
impact of having to emulate custom chips, in addition to the CPU, and why the emulators
don't try to emulate a more powerful "68K" CPU, like a 68060, or why the AGA
chip set is not emulated, but only the original chip set is. As outlined above, most Amiga
programs, first of all the Amiga OS, make direct or indirect use of the Amiga custom
chips. On the other hand, it must be considered that when a program does not make specific
use of a custom chip's functionality, this does of course not need to be emulated, so
there is little or no performance penalty. To the contrary, specifically emulating certain
aspects of the Amiga custom chips allows the emulation software to recognize certain
specialized tasks, and to better emulate these by using similar and specific capabilities
on the host environment, if possible (e.g. for blitting, which for example is very fast
using the Picasso 96 extensions for UAE). As for
the CPU, it would not be very practical to try to emulate advanced parts of the CPU such
as the cache RAM, or the MMU (memory management unit), because these are already fully
provided (not emulated) to the entire emulation environment by the host CPU. As a result,
it is for example possible to emulate an Amiga with 64 Mbytes of Amiga "fast"
RAM and 8 Mbytes of "chip" RAM on a computer having only 32 Mbytes of RAM, and
the host operating system (using the host CPU's MMU), will take care of disk-to-memory
swapping as necessary. The Amiga OS does not require a MMU, so apart from Amiga virtual
memory utilities, which are not necessary because virtual memory is provided by the host
environment, the main applications that could still benefit from an emulated MMU are
development tools such as "Enforcer". Indeed, for these programs, which are very
used by developers, having either an emulated MMU, or Enforcer-like functionality built-in
in the emulator, would be useful, and is likely to appear soon.
As for the 68K CPU type, the Amiga emulation software supports the
instruction set of the Motorola 68020 CPU with FPU (floating point unit), which makes it
possible to run even programs designed for newer CPUs, since they share the same
instruction set as the 68020 (which had major additions since the original 68000). A few
new instructions and addressing modes have indeed been added to newer CPUs of the 68K
line, but there is no known 68K Amiga software on the market which requires these without
also being available in a 68000 or 68020 version. To the contrary, certain instructions
which run properly even on the 68000 are "illegal" on the 68060, which results
in many applications (including old versions of the Amiga OS) failing to run on the 68060.
This explains why several owners of Amiga computers with a 68060 CPU resort to an emulator
to run old software which would otherwise fail. Regarding different 68K microprocessors,
such as the 68030, 68040 and 68060, it should be kept in mind that the major performance
boost comes from the improved speed and efficiency of the newer microprocessors, and not
from new instructions. Again, this increase in computing power can be provided not by
emulation, but by a faster host CPU. Both the Fellow and UAE emulators come with special
options and versions so that some very old software which absolutely requires a
"pure" 68000 (and not a 68020) can run on the emulator.
 |
 |
|
|
|
Amiga
Emulation Sample Screen |
|
|
The emulation software included with Amiga Forever does not
(yet) include support for the "new" Amiga AGA chip set, which provides palette
modes up to 256 colors. However, as the result of development work done by Brian King at
Cloanto, UAE now includes a virtual display card which provides a variety of screen modes
going well beyond AGA, including true color modes. This virtual display card, which
directly accesses the graphics hardware of the host system using the high performance
DirectX calls, comes with Picasso 96 drivers,
which are RTG-compliant, meaning that they can be used by all Amiga programs which support
the Amiga RTG (Retargetable Graphics) specification, which was originally conceived at
Commodore, and then became a de facto standard with the help of several Amiga developers.
Performance profiling tests have shown that some programs spend as much as 50% of their
execution time not in their own code, but in the system graphics routines. Mapping these
calls as efficiently as possible to the graphics system of the host environment (which can
easily be 100 or more times more powerful than the original Amiga graphics hardware),
rather than to the emulated Amiga custom chips, results in an impressive performance boost
for the entire emulation environment.
Multiprocessing systems (i.e. with two or more CPUs, also referred
to as "SMP") improve the performance of the emulation, because the load of the
operating system and other applications can be better distributed, relieving the CPU(s)
which run the emulation. This improvement always occurs, even if the emulation software
itself does not actively exploit certain SMP features.
The RAM requirements to run the emulation software are not different
than those of any other software. All Amiga Forever components have been successfully
tested on a system with 16 Mbytes of RAM. The Amiga emulation requires about as much RAM
as a real Amiga, plus some memory necessary to run the emulation software itself (which
amounts to less than 1 Mbyte).
For an uncompromising use of Windows in general, we recommend a
configuration with at least 32 Mbytes of RAM. When a RAM upgrade is performed, it is good
to consider that certain configurations (e.g. 32 Mbytes on 2 SIMM modules) allow for the
RAM to be doubled in the future by adding identical modules, while if all slots are
already used (e.g. 32 Mbytes on 4 modules, if only 4 RAM slots are available on the
motherboard), then a future upgrade will require the replacement of the previous modules,
which cannot be reused.
Operating systems such as Windows, which support virtual memory,
make it possible to emulate an Amiga with more RAM than is actually available on the
system. If the emulation is configured for more RAM than is available, then the operating
system will swap unused RAM to hard disk, and then from hard disk to "real" RAM,
as necessary.
Using Amiga Disks, Files and Programs
The Amiga Forever emulation environment is completely preinstalled,
and includes the Amiga OS files, the Picasso 96 software, and applications such as Personal Paint. This is designed to run directly
from CD, or from hard disk, after installation, and
can be used like a normal Amiga.
Some additional steps are required to transfer the contents of
existing Amiga floppy disks and hard disks to the emulation environment. The chapter on data sharing explains how to use Amiga Explorer to physically connect an Amiga
with a Windows PC, or to use PC-formatted floppy
disks to transfer data.
The Amiga emulators support Amiga data in three different formats:
- Files and directories managed by the host filing system
- Floppy disk images ("ADF")
In the first case, Amiga files and directories are stored on
corresponding files on the host filing system, and can be accessed by both sides (for
example, from the Windows Desktop, and the Amiga Workbench). To do this, one or more
directories on the host filing system must be "mounted" in the emulation
configuration, so that they can be seen by the emulated Amiga as if they were Amiga hard
disk partitions. For example, the directory "C:\Emulation\Work" on a Windows
computer can be mounted as a hard disk named "Work". In the emulation. The
resulting partition is normally faster than a real Amiga hard disk, especially when
viewing the contents of entire directories, and when deleting long files, which are
particularly slow on the Amiga filing system. The drawback of this method is that the
Amiga file and directory names and attributes must be supported by the host filing system,
or otherwise they are "lost". For example, the original DOS does not support
"long" file names, but only names of up to eight characters, plus a
"dot" suffix of three characters. Also, DOS does not differentiate between upper
and lower case characters. In this case, for example, an Amiga file name like
"Utilities.info" would be saved as "UTILITIE.INF". This is hardly
acceptable. In such an environment, it is recommended to store data in hardfiles, or to
use the "virtual directory" functionality provided by the DOS version of UAE,
where unsupported file properties are stored separately by the emulator.
Since the release of Windows 95 and NT, it is possible to use
"long" file names on Windows and in the DOS environment which is part of
Windows. This means that both the Windows and the DOS versions of the emulation software
can access files and directories with long names stored on Windows disks. The possibility
to mount a Windows device or directory is useful not only to access data on a hard disk,
but also to access CD-ROMs and floppy disks (in PC format). For example, the devices
"A:" and "D:" could be mounted in WinUAE to respectively appear as
Amiga volumes named "WinDF_A" and "WinCD_D" (or just
"CD-ROM"). Windows can read CD-ROMs written with the Amiga ISO filing system
extensions, which makes it possible to mount an Amiga CD-ROM in the emulation environment,
and use it to install Amiga software, etc.
When sharing and moving data between the Amiga and Windows systems,
it is important to keep in mind that each filing system has limitations about file names,
lengths, and other attributes. Amiga file names can be up to 30 characters long, while
Windows supports lengths of more than 250 characters. The Amiga supports file comments,
and the "executable", "script", "pure" and "hold"
attribute bits, which are not available on Windows. The lack of these attributes usually
has no significant impact on the Amiga environment. Amiga CD-ROMs have been published
without these attributes for more than 10 years (because these attributes are also
unsupported by the original Amiga CD-ROM filing system), without problems. The Amiga
"writable" and "deletable" attributes are both associated by the
emulation software to the Windows "read-only" flag.
On the Amiga, only two characters are "illegal" in file
and directory names: ":" and "/". Under Windows, these are:
"\", "/", ":", "*", "?",
""" (double quote character), "<", ">" and
"|". Additionally, both the Amiga and Windows have other characters and file
names which can create difficulties in certain environments, e.g. the Amiga Shell, or the
Windows Desktop, but these are not considered illegal at the filing system level, and can
be accessed by the software. In Windows, these file names include: "COMx",
"AUX", "LPTx", "PRN", "NUL" and
"CON", and all variants with a "dot suffix". File names entirely
consisting of dots (".", "..", etc.) are also "problem
files". Usually, it is not possible to manipulate these files from the Windows
Desktop or command line, but for example the Amiga emulation environment and the Windows
NT POSIX shell can access them. This explains why, for example, the "AUX" and
"AUX.info" files, used on some Amiga systems, can be seen, but not deleted from
the standard Windows Desktop. This is especially annoying when moving entire directories
containing these files, since the move process terminates with an error. The Amiga Explorer software automatically converts
illegal characters, as well as file names which may create difficulties, when moving data
from the Amiga to the PC. The AmiToRTF text
conversion software also takes care of this automatically.
Hardfiles are the alternative which allows to use hard disks in the
Amiga emulation environment when the mapping to the host filing system is not supported by
a specific version of the emulation software, or when it is absolutely required to support
all Amiga file and directory properties. A hardfile emulates a hard disk, storing all data
in a single file on the host filing system, and can be formatted and accessed by the Amiga
emulation environment as if it were a normal Amiga device. This includes support for Amiga
comment and attributes. On the side of the host environment (e.g. Windows), hardfiles are
visible as a single, long file. If a hardfile is corrupted or accidentally deleted, the
entire data on the hardfile is likely to be lost. In general, we recommend to prefer the
mapping to the host filing system, instead of hardfiles, wherever possible.
Amiga Explorer can be used to easily move a hard disk partition from
the Amiga to the PC, automatically making small changes to file and directory names if
necessary. If for example the emulated "Work" partition is mapped to the
"C:\Emulation\Work" directory, then Amiga Explorer can be used from the Windows
Desktop to access the "Work" drive on the Amiga, and copy items into the
"Work" directory on drive C, inside "Emulation". If hardfiles are used
instead, then Amiga Explorer cannot be used alone, but requires that on the Amiga side the
entire hard disk contents be archived into a single file with a tool such as LhA. The
resulting Amiga archive can be moved to the PC with Amiga Explorer, and then be made
available to the emulation environment by temporarily mounting a volume from where the
archive is accessible. Once the hardfile is mounted and formatted, the contents of the
archive can be extracted to the hardfile. In the archiving software, make sure that the
correct options are active to preserve all Amiga attributes. Alternatively, an archiving
program that stores its output on multiple floppy disks can be used (e.g. Quarterback). In
this case, the ADF images of the floppy disks must be moved to the PC either with Amiga Explorer, with a terminal program, or
using a floppy disk. The UAE
and Fellow emulators have different options to quickly mount ADF
images and "swap disks" while the emulation software is running, as explained in
the respective sections.
When transferring an Amiga system partition (e.g.
"System") to the emulation environment, care should be taken in order to exclude
those items which are specific to hardware which is available only on the source Amiga.
This includes storage and monitor peripheral files stored inside
"Devs/DOSDrivers" and "Devs/Monitors", and additional items which may
be stored in the "Expansion" and "WBStartup" directory. Also, when
migrating complex configurations from any Amiga to a different machine, it is always
recommended to manually read at least the "S:Startup-Sequence" and
"S:User-Startup" files, to verify if the contents applies to the new
environment. If the source system contains programs specifically compiled for CPUs like
the 68060 or 68040, or any CPU in the 68K series which is different than the one emulated
by the emulation software, it is recommended to replace that executable with a 68000 or
68020 version, which in most cases will run faster in the emulation environment. If
programs need to be copied from one environment to the other that expect a particular
non-Amiga screen mode to be available, then these should best be reconfigured to work with
a screen mode which is also available in the emulation environment, before moving them.
Otherwise, some programs might attempt to open a screen mode with a certain Amiga screen
ID, which may correspond to a specific display card, and this might not be available in
the emulation environment.
It may occur that Amiga "script" files, containing for
example AmigaDOS commands, are executed from the Amiga "Startup-Sequence",
"User-Startup", or another Shell, CLI or command line environment without the
explicit "Execute" command. This is allowable on newer versions of the Amiga OS
if the "s" attribute flag is set on the script file, but it fails if the bit is
not set, as is the case in the emulation environment (if a filing system which does not
support the "s" file attribute is used). To solve this, it is sufficient to run
these files with the "Execute" command, which remains the only format guaranteed
to work on all versions of the Amiga OS, and with Amiga-supported filing systems (e.g.
CD-ROMs).
Image files of Amiga floppy disks are very similar to hardfiles,
only that they are are specifically used for mounting virtual floppy disks in the four
Amiga floppy disk drives available in the emulation environment. The format used for these
image files is named ADF. Floppy disks can be inserted and ejected while the emulation
software is running, using keyboard shortcuts which in part vary from one implementation
of an emulator to another (the documentation of the emulation software has full details
about this). For compatibility reasons, the (slow) speed, or better, the disk rotation
time of Amiga floppy disks is also emulated. It is also possible to mount ADF files as if
they were hardfiles, in which case the access is faster, because the disk rotation speed
does not need to be emulated. Some versions of the emulation software also allow for the
emulation of the disk rotation time to be disabled, which will considerably speed up
access to virtual floppy disks, but may result in some programs not working properly.
The easiest tool to create and transfer Amiga floppy disk images is Amiga Explorer. A technique that can be
recommended is to create ADF images of all Amiga floppy disks in a single run, writing a
unique number or name on the disk label, and using that number or name for the image file,
e.g. "123.adf". With Amiga Explorer, this can easily be done from the Windows
Desktop, using an Amiga as a floppy drive. Converting one's entire archive of Amiga floppy
disks to the ADF format at one time is in general more efficient than starting the
conversion work each time, on an as-needed basis, and with the risk that in the meantime
no Amiga is available to read the disks, or that the Amiga disks have become damaged.
To launch demos and other Amiga programs that require the Amiga to
boot from a floppy disk, make sure that the desired ADF disk image is selected for drive 0
when the emulator is launched, or when the emulated Amiga is reset and rebooted.
Most "illegal" disk formats used to "copy
protect" Amiga disks are not supported by the ADF format. It is possible that a
future version will address this complex issue, which in the past was the domain of
sophisticated disk copying programs.
Amiga disk images in the DMS format can be converted to ADF images
by simply running the DMS software from inside the emulation environment, and extracting
the data to a virtual floppy disk, thereby generating the corresponding ADF file on the
host filing system.
Where compression is available at the filing system level (e.g. with
NTFS on Windows NT), we recommend to enable compression for hardfiles and ADF disk images
only if the file is smaller than a few Mbytes. Compression is in general good for ADF
files, but it considerably slows down the performance for larger hardfiles, because the
entire file has to be processed by the system before and after use.
The Keyboard and Other Input Devices
Once the Amiga emulation is running, some special keys and
combinations of keys can be used to access certain emulation functions, bypassing the
emulated Amiga environment and communicating directly with the emulator.
Amiga keys which have no equivalent on other platforms (for example
Left Amiga, Right Amiga and Help) are mapped to different keys (e.g. Left Windows, Right
Windows and Page Down). Some Amiga keyboards have an additional key to the left of the
Backspace key, compared to PCs. This key is usually mapped to the F11 function key on PC
keyboards, which has no Amiga equivalent. Certain combinations of keys are used to insert
and eject "floppy disks" (ADF image files) while the emulation is running.
UAE has a key to pause the screen refresh, which on slower systems
makes it possible to dedicate more resources to the audio emulation. The opposite is also
possible, i.e. it is possible to temporarily switch off sound to speed up graphics
rendering.
Detailed explanations of the available shortcuts are included in the
documentation of the UAE and Fellow emulators.
The following tables give an overview of the main keyboard shortcuts available when
running the Windows and DOS versions of the UAE software, as well as the Fellow software
for DOS.
| Amiga
Emulation Keyboard Shortcuts - WinUAE |
| Key |
Action |
Notes |
| Left Windows |
Left Amiga |
Also named "Commodore" |
| Insert |
Left Amiga |
Same as above |
| Right Windows |
Right Amiga |
|
| Home |
Right Amiga |
Same as above |
| Page Down |
Help |
|
| F11 |
Missing key |
Replaces missing PC key |
| F12 |
Settings |
Displays settings window |
| Shift+F12 |
1081 mode |
Windows NT and 98 only (not 95) |
| Alt+F4 |
Quit |
Warning: Amiga session is closed |
| Scroll Lock |
Pause graphics |
Speeds up sound |
| Pause |
Toggle sound |
Sound must be initially enabled |
| End+F1-F4 |
Insert DF0-DF3 |
For floppy disk emulation (ADF) |
| Shift+End+F1-F4 |
Eject DF0-DF3 |
For floppy disk emulation (ADF) |
| Amiga
Emulation Keyboard Shortcuts - DosUAE |
| Key |
Action |
Notes |
| Left Windows |
Left Amiga |
Also named "Commodore" |
| Page Down |
Left Amiga |
Same as above |
| Right Windows |
Right Amiga |
|
| Page Up |
Right Amiga |
Same as above |
| Insert |
Help |
|
| F11 |
Missing key |
Replaces missing PC key |
| F12 |
Quit |
Warning: Amiga session is closed |
| Print Screen |
Grab screen |
Saves screen as TGA file |
| Home+F6 |
Debug |
Activates debugger |
| Scroll Lock |
Pause graphics |
Speeds up sound |
| Pause |
Toggle sound |
Sound must be initially enabled |
| Home+F1-F4 |
Insert DF0-DF3 |
For floppy disk emulation (ADF) |
| End+F1-F4 |
Eject DF0-DF3 |
For floppy disk emulation (ADF) |
| Amiga
Emulation Keyboard Shortcuts - Fellow |
| Key |
Action |
Notes |
| Left Windows |
Left Amiga |
Also named "Commodore" |
| Page Down |
Left Amiga |
Same as above |
| Right Windows |
Right Amiga |
|
| Page Up |
Right Amiga |
Same as above |
| Insert |
Help |
|
| F12 |
Settings |
Displays settings window |
| Home+Page Up/Down |
Change resolution |
|
| Home+Keypad Arrows |
Center display |
Only in low resolution VGA |
| End+Page Up/Down |
Toggle line doubling |
Only in some VGA modes |
| Home+F11 |
Grab screen |
Saves screen as BMP file |
| Home+F1-F4 |
Insert DF0-DF3 |
For floppy disk emulation (ADF) |
| End+F1-F4 |
Eject DF0-DF3 |
For floppy disk emulation (ADF) |
These keyboard assignments may vary, as new versions of the
emulation software are released. In addition to these program-specific keyboard shortcuts,
the standard Windows keyboard commands also apply. For example, Alt+Tab can always be used
to cycle from one running task to another.
An Amiga joystick can also be emulated. Depending on the
implementation of the emulator, this may be done not only with a "real" joystick
connected to the computer, but also with keyboard shortcuts, which may include key
arrangements such as Cursor Up, Down, Left and Right, or "T", "B",
"F" and "H", or "I", "K", "J",
"L", or "8", "2", "4" and "6" on the
numerical keypad. The "fire" button is usually emulated with the Left Alt, or
with the Control key, or with "0" on the numerical keypad.
UAE
Ever since the name "UAE" was conceived, the most
different interpretations and speculations have surrounded the "meaning" of
these three letters: "Unusable Amiga Emulator", "Unix Amiga Emulator",
"Ubiquitous Amiga Emulator", "Usable Amiga Emulator",
"Unbelievable Amiga Emulator", "Ultimate Amiga Emulator"...
For those who know it, it is just "UAE", but for those who
see it for the first time, perhaps surprised by the nostalgic blue background of a 1.3
Amiga booting on a notebook computer, or stunned in front of a powerful configuration with
Amiga OS 3.5 running in emulation on an Alpha workstation at twice the speed of a 68060
Amiga, UAE is definitely "magic". It is the proof that seemingly impossible
dreams sometimes do come true. UAE is the "revenge" of hard working programmers
often surrounded by voices saying that "it can't be done", and by an Amiga
spirit that does not want to die, even if there are no spare parts left to repair a
"mortal" piece of Amiga hardware. While the Amiga community was distracted by
one problem after the other, and even fake screenshots of emulated Amiga systems appeared
from time to time, Bernd Schmidt was working on the first "usable" Amiga
emulator, which would become UAE.
UAE has evolved into a free spirited group effort of more than 60
programmers and other contributors. It is available for a variety of platforms, including
DOS, Windows, most versions and variants of Unix and Linux, the Be OS, the PowerMac, and
many more. UAE can even run itself in an Amiga. The software is in continuous evolution,
with a constantly improving performance and compatibility. New versions and new
implementations, supporting new platforms, are available for free download from the links
indicated on the Amiga Forever
Home Page, and can be easily integrated with the Amiga OS and ROM files and the other
support software included in Amiga Forever, which also includes preconfigured and
preinstalled versions of UAE for DOS and Windows. An experimental PowerMac version is also
included. Linux and Unix versions can be compiled from the source code which is stored in
the Archives directory on the CD-ROM, or from the versions available for download.
Each distribution of UAE comes with its own documentation,
describing implementation-specific issues, and general aspects. To get familiar with UAE,
we recommend to start reading the documentation of Amiga Forever, which explains for
example how certain Amiga OS components are
already included and preinstalled, or how Amiga
Explorer can be used to connect an Amiga to a PC, and even generate and transfer ADF
images on the fly.
The terms "DOS" and "Windows" refer to two
different operating systems by Microsoft. Windows 95 includes a DOS component that makes
it possible to run the DOS versions of the Amiga emulators. The Windows version of UAE
only runs on Windows 95, Windows NT 4.0, or newer versions. DOS systems (with no Windows,
or with an older version of it) can only run the DOS versions of the emulation software.
On a Windows system, the launch of the Windows and DOS
versions of UAE (as well as the Fellow software for DOS), requires
as little as two steps:
- Insert the CD-ROM in the drive
- Click the left mouse button on the list of preinstalled emulation
environments
The emulation configurations which are part of Amiga Forever are
designed to work even without installation, which is great for a quick demonstration,
maybe to impress a friend or co-worker who has never seen an Amiga, whether real or
emulated. Have you ever considered running UAE in full screen on an unattended PC, and see
the reaction when the user gets back to find an... Amiga?
The following is a list of common issues which may cause
difficulties when running the emulation software.
- The Windows and DOS versions of the emulation software respectively
require DirectX and VESA VBE drivers. If these are not installed properly,
the software will not work. If these are installed, but there are still display-related
problems, it is recommended to get the latest versions of the graphics drivers directly
from the web site of the manufacturer of the display card.
- The Windows version of UAE ("WinUAE") requires a display
card capable of displaying hi or true color modes (65536 colors or more).
- When manually configuring the Picasso
96 settings, don't forget to allocate some display card memory, or the card will not
work (like a real graphics card, it needs memory to store the screen data - the more
memory, the higher resolutions with more colors are possible).
- Depending on the concurrent graphics and CPU emulation overhead,
audio may require a CPU clocked at 200 MHz or more for perfect quality. On slower
computers, it may be best to disable audio for better emulation performance. By default,
audio is disabled in some Amiga Forever predefined configurations.
- If you experience problems running the emulator on a Cyrix CPU, you
may need to manually activate some settings in UAE. In the command line of WinUAE, the
setting to add is "-Q-1". Alternatively, from the graphical user interface,
select the "Advanced" tab, and activate "Cyrix CPU".
- UAE settings also need to be changed if in some screen modes
(overscan with 16 colors or more) the lower portion of the screen is not displayed
properly. For most versions of UAE, "-C 224" must be added to the command line
to fix the specific copper bug which causes this. The default setting ("-C -1")
should instead work fine with most applications.
- If some of the keys which are pressed on the keyboard do not
correspond to the characters which appear on screen, then use the Amiga Input Preferences
to indicate the correct keyboard language. By default, the Amiga emulation environment is
preset for a US-keyboard, which mainly results in certain national characters not being
mapped properly on non-US keyboards.
- If you use a graphics tablet to control the pointer, some versions of
the emulation software require that the tablet be configured in mouse emulation mode
(relative moves, rather than absolute moves), or otherwise the Amiga mouse pointer will
move erratically.
While the emulation is running, different options are available to
change the program settings. These include special keyboard shortcuts
to directly change some parameters, or a single shortcut (usually F12, which however in
some other implementations is used to exit the emulation) to display a graphical user
interface giving access to the settings, which can be modified without exiting the
emulation.
"UAE-Control" is a utility which was especially
redesigned and enhanced for the Amiga Forever distribution, and which is preinstalled on
the Workbench of the Amiga OS 3.0 hard disk configuration. UAE-Control can be launched
with a double-click on its icon, and gives access to a series of UAE settings which can be
controlled from within the Amiga. UAE-Control can also be used to "insert" and
"eject" Amiga floppy disks, in which case it should be remembered that the path
of the ADF file to be mounted is relative to the host filing system, and not to the Amiga
devices (e.g. "C:\Emulation\df0.adf", and not "Work:df0.adf").
Amiga Forever uses the Cloanto "MenuBox" software to
launch the preinstalled UAE and Fellow emulators. MenuBox is the program which is
activated when the CD-ROM is inserted on a Windows computer (if auto-play is enabled),
displaying a selection window. When it is launched, MenuBox examines a configuration file
named "MenuBox.txt", which contains the command lines which are associated to
each preconfigured UAE and Fellow installation. When installed on hard disk, the software
and configuration items are in a location similar to "C:\Program Files\Cloanto\Amiga
Forever\Windows\MenuBox". The "MenuBox.txt" file can easily be modified, to
create custom configurations of the different emulators, and make them available with one
click of the mouse.
Each command line in "MenuBox.txt" has the following
format:
command|file|options|directory
To launch one of the emulators, the "command" field is
usually set to "open", or "open minimized". "file" can be
"uae020.exe", to launch the 68020 version of UAE, or "uae.exe", to
launch the "fast" 68000 version, or "uaec.exe" to launch the
"compatible" 68000 version, etc. "options" includes the entire command
line, as it would be entered after the program name when typed at the command prompt. The
"directory" field indicates the directory in which "file" is located,
which becomes the "current directory", both for "file" and for all
paths specified in the "options" field.
One typical case in which it might be convenient to edit
"MenuBox.txt", is to mount additional Amiga volumes. For example, by inserting
"-m Floppy:A:", the PC's floppy disk is mounted on the Workbench with a volume
name of "Floppy". Storage media mounted with "-m" must be inserted in
the drive when the emulator is started. In most cases, the "DiskChange" command
must be executed from the Amiga side in order for a change of medium to be recognized.
Adding "-p LPT1" to the WinUAE command line would cause the Amiga parallel
printer port to be mapped to the LPT1 port of the PC. While it is easy to make changes to
the predefined configurations, we advise to first read the documentation files, and
understand what the current settings do, before modifying them. UAE generates a short
command reference when it is run from the command prompt with the "-h" option,
as in "UAE uae -h".
Amiga Forever includes not only its own, original documentation (the
pages with the brown navigation bar at the left), but also a selection of the best
tutorial and documentation texts available on the Internet, kindly contributed by UAE
experts and enthusiasts alike. The following links point to the local copies of these
documents, as well as to the Internet location where the latest version of the
documentation can be accessed. We ask for your understanding about the fact that the
location of items on the Internet may change over time, so some of these links may not be
accurate after this publication. We do however try to keep the links on the Amiga Forever Home Page
up-to-date, so that you may always refer to these.
If you read the Amiga Forever documentation (especially the Introduction, Data Sharing, Emulation, Amiga Tools and Windows Tools chapters), you already know that it is not
necessary to transfer "pirate" Amiga ROMs from Internet sites, because they are
already (legally) included and preinstalled. Also, you may have discovered that it is
indeed possible to use floppy disks to exchange
data between the Amiga and the PC, and that, with additional hardware, or with Amiga
Explorer and an Amiga, it is possible to read Amiga disks from the PC, even if some
documents like to claim that this is not possible. Whenever some instructions by third
parties propose a solution to a problem or requirement related to Amiga emulation, please
consider whether the issue also applies to the Amiga Forever distribution, because we have
worked hard to prevent some potential problems from occurring in the first place.
UAE Documentation (Common to All Versions)
UAE Documentation (Windows Version Included on Amiga
Forever)
Brett Eden's UAE Frequently Asked Questions
Manos Konstantiniadis' Kickstarting with UAE
Ray Ruvinskiy's UAE HowTo Guides (Internet Links)
Fulvio Leonardi's UAE Tips & Tricks (Italian)
Links to UAE Sites
Amiga Forever Home Page
Fellow
There is more than a "friendly" affinity between...
"Fellow" and "Amiga" (Spanish for female friend, also girlfriend).
Petter Schau started the development of the Fellow emulator with an approach similar (and
in part based on) UAE, but with the intent to write the emulator entirely in fast assembly
code, specifically for DOS. Fellow is currently slightly less compatible with a real
Amiga, compared to UAE, but it is also faster.
In large part, the entire Amiga Forever documentation, and in
particular the sections on keyboard shortcuts and UAE
in this chapter, also apply to Fellow.
Just like UAE, Fellow is completely preinstalled in the CD-ROM
version of Amiga Forever, and can be launched with a single mouse click, without
installation. Like for UAE, depending on the display card and drivers, VESA VBE drivers may be required for Fellow to fully
exploit the video hardware. Fellow can easily be added to the Online Edition of Amiga
Forever, which includes a directory ready to host the software.
Links to Fellow Sites
Amiga Forever Home Page
|
 |
 |