Welcome to WinUAE!

WinUAE is a 32-bit Windows version (95/98/ME/2000/XP) of the Ultimate Amiga Emulator (UAE). UAE is a collaborative effort between a number of Amiga enthusiasts to create a portable Amiga emulator under the GNU Public License. The source-code for all UAE versions is available, and donated code is always appreciated.

WinUAE allows you to run Amiga software under Windows, including many games, demos, and applications. General compatibility is quite good, and there are a number of enhancements in WinUAE compared to a standard Amiga computer.

This helpfile will give you information on how to Get Started with WinUAE, a description of all the GUI Settings, information about the Emulation itself, and some additonal information about real Amigas in the Background Information section.

Look here or here for the latest versions of this helpfile!


Features

WinUAE is a very feature-rich implementation of an Amiga:

  • Picasso96 RTG support, so that your Amiga can make use of all available display modes of your PC graphics-card. P96-RTG is implemented as a Zorro-III graphics-card to the Amiga.

  • CD-ROM, CDTV and CD32 drive support, for accessing Amiga CD-ROM discs.

  • Windows file-system support, so that your Amiga can use your PC hard-drive's file-system directly. Makes it easy to share files between Windows and the Amiga.

  • Full Harddisk support, for maximum compatibility, and reduced risk. HDToolbox, RDB and custom filesystems supported. Also, larger hard files supported above 2Gb especially with NTFS. Able to mount real hard disks with RDB and Amithlon partitions. Kickstart 1.3 hardfiles now supported with FastFileSystem in KS roms directory.
  • Zorro-III memory-expansion support, so that you can emulate up to 128-Megs of RAM inside the Amiga.

  • Super-Alice custom-chip, with up to 8-Megs of Chip Memory.

  • Virtual networking support, through either your Ethernet or Dial-Up Networking connection to the world.

  • MIDI output support.

  • JIT CPU emulation.

  • Action Replay 1/2/3 support.

  • Compressed Kickstart ROM support.

  • All keys now usable as Amiga keys including Windows keys and are usable in Input-tab configuration.

  • Floppy disk speed slider and configurable floppy drive types.

    And many, many more!


Known Bugs

WinUAE has some bugs which are known. Please check this list before reporting any bugs.

  • Picasso96 colour-fades are especially slow.
  • Also Banshee AGA's scoreboard is invisible because sprites outside playfields (AGA only feature, not yet implemented) are always hidden.


Links

This page contains links to some useful pages in the Internet.

Official UAE pages: |
The official UAE page | Bernd's official UAE page.
The official WinUAE page | The main WinUAE page.
WinUAE Announcement List | Receive mail when a new version is released.
Essential Programs: |
Direct X | Required to get the most out of WinUAE.
Picasso 96 | Get the latest version of the driver here.
Helpful sites: |
WinUAE Discussion Board | If there are questions left, ask there.
Amiga Emulation Frequently Asked Questions | Comprehensive FAQ about Amiga emulation.
Back To The Roots | Great Amiga emulation site- highly recommended!
Amiga Legal Emulation (ALE) | Good site with games and more.
Extensions/Tools: |
Amiga In A Box | Pre-configured setup for the emulated Amiga.
ADF View | Good Windows program to manipulate adf's.
Original Amiga: |
Aminet | The largest archive of Amiga software.
Amiga News | Multilingual Amiga news site.


Getting Started

WinUAE needs some Amiga - programs in order to emulate an Amiga. In this section you can find out what you will need, and how you will get it.

Winuae - Installer

The topics:

  • General Requirements

  • Transfer data between Amiga and PC

  • Required Files
  • Example Configurations
  • Amiga Programs


Requirements

If you are using Windows 95 and don't have DirectX installed yet, you need to grab and install a copy first. UAE works with DirectX 8 or later. Select Start, Run and enter DXDIAG to see what version you have installed.

WinUAE no longer supports Windows NT 4.0, please use Windows 9x/ME/2000 or XP. Winuae 0.8.8 still supports Windows NT 4.0 (available from Back2Roots).

WinUAE requires some Amiga software in order to work properly:

  • A copy of your Kickstart ROM (sometimes referred as a ROM-image, ROM-file, KickFile, or KickROM) into a file called kick.rom. If you own an Amiga, you can extract a ROM-image using the included Transrom utility, which must be run on your Amiga. If you no longer own an Amiga, you can obtain a legal copy of a Kickstart ROM from Cloanto's Amiga Forever software package.

  • A copy of your Amiga OS disks (sometimes referrred to as Workbench).If you own an Amiga, you can transfer your Workbench diskettes to the .ADF file-format used by UAE by running the included Transdisk utility. Again, this must be run on your Amiga. If you no longer own an Amiga, you can obtain a legal copy of various Amiga OS releases from Cloanto's Amiga Forever software package.

    • NOTE: Amiga Forever includes an utility called Amiga Explorer, which allows you to connect a real Amiga and your Windows PC together, for easy transfer of files from your Amiga to your PC.

    NOTE: The Amiga software (ROMs and Workbench) is copyright material, and is not free. No one of the WinUAE team will provide Kickstart ROM-images, or Amiga OS (Workbench) disks.

    On the Windows side, WinUAE is a fairly hungry application and requires alot of compute-power to accurately emulate the Amiga. The following System is recommended before running WinUAE:
    • Pentium 233MMX or higher processor
    • 64-Megs of RAM
    • PCI sound-card
    • PCI or AGP graphics-card
    • Windows 9x/Me/2000/XP with DirectX 8.0 (or higher)
    • Joystick
    If you have everything you need, continue with the GUI to configure WinUAE properly. If the setup of the program is complete and the emulation is working, please refer to The Emulation for information if you have problems with certain Amiga - programs, and also for information on how to get out the most of WinUAE.


Data Transfer Amiga <-> PC

In the process of preparing for emulation, you will need to transfer the files between your PC where you run UAE on and your Amiga. There are several ways how to do this:

  • If you are using a null modem cable, you will need a terminal program on your Windows machine and your Amiga. 68000 equipped Amigas are only able to reach approximately 3000cps through the null modem cable. This speed is achieved with the standard serial.device. There are some tools available which can speed up the connection speed up to 5500cps. The Aminet is a great source for such tools.
  • If you have an Amiga with OS 2.0 or later, you may use CrossDOS. It is a part of the AmigaOS and enables you to read and write DOS formatted floppies on your Amiga. MessyDOS is a freeware program with the same functionality. It can be found on Aminet. If you do not have a high density floppy drive in your Amiga, you will have to use 720kB formatted disks. Compress the disk image with - for example - LHA and copy the compressed file on the floppy. Copy the file to your Windows machine and decompress it.

In either case, you ought to read the documentation for the programs that you use for the transfer.


Example Configurations

To get you started at emulating Amigas you need to know the configuration of the most popular or frequently used Amigas to get your games or software working. The table below lists likely Models and configurations you could set up:

 | A500 | A500+ | A600 | A1200 | A4000
Processor | 68000 | 68000 | 68000 | 68EC020 | 68040
Chip Ram | 512K, 1Mb | 1Mb | 1Mb | 2Mb | 2Mb
Fast Ram | 0 - 8Mb | 0 - 8Mb | 0 - 8Mb | 0 - 8Mb | 0 - 8Mb
Slow Ram | 0 - 1Mb | 0 - 1Mb | n/a | n/a | n/a
Z3-Fast | n/a | n/a | n/a | 0 - 256Mb | 0 - 256Mb
RTG Ram | n/a | n/a | n/a | 0 - 32 Mb | 0 - 32Mb
Rom File | 1.2, 1.3, 2, 3.1 | 2.0, 3.1 | 2.0, 3.1 | 3.0, 3.1 | 3.0, 3.1
Hard Drive | Yes | Yes | Yes | Yes | Yes
Chip Set | OCS | ECS | ECS | AGA | AGA

All the other settings can be set as you wish, the ammount of RAM can be adjusted up or down to suit the software.
If using Workbench, then I suggest using as much Fast Ram or Z3 Ram as you need - typically, 4-32MB would cover most software applications.
The A500 configuration with1.3 Rom and 512k or 1MB Chip Ram would work. For AGA games the A1200 configuration would work, adding some Fast Ram can help a lot.
When saving a configuration, enter the name of the Amiga with a few details of its configuration would help to you to select which configuration is needed.
If using one configuration a lot, save it as default and then Winuae will use this configuration without you having to Load it everytime, just click OK to start!


Amiga Programs

Along with the Winuae Emulator program, some programs are supplied in the 'Amiga Programs' folder in the C:\Program Files\Winuae folder. Here is an explaination of what these files are for and where to copy them to:

MouseHack

Copy this program file your C directory on your Workbench disk or hard disk. This program will hack your mouse connected to your PC to work with Winuae. In most cases it may not be needed. You can auto run it by adding a line to the s:user-startup file on your Workbench disk.

Picasso96fix

Copy this program file your C directory on your Workbench disk or hard disk. This program will fix Picasso 96 RTG screens greater than 1024 pixels when using your PC's graphics card with the uaegfx driver in Winuae. Load it before LoadWB in the startup-sequence. The Picasso96fix.bb file is the source code to this program written in Blitz Basic.

rtg.library

Re-targetable Graphics Library. Copy this library file your libs:picasso96. This library will avoid mousetrails and redraw problems in picasso96 when using JIT functions.

transdisk

Copy this program file your C directory on your Workbench disk or hard disk. This can Transfer Disk images to or from floppy disk to an image or vice versa in ADF (Amiga Disk Format). Type transdisk ? for more options. See trandisk page for more details on this program.

transrom

Copy this program file your C directory on your Workbench disk or hard disk. This can Transfer the Kickstart rom image from a real Amiga to an image file to use with your Amiga Emulator. It will produce either a 256K or 512K sized file. See transrom page for more details on this program.

UAE

Copy this file to the AHI driver drawer in Devs on your Workbench disk or hard disk. It is used to emulate the Amiga's sound system using AHI retargetable sound driver system.

UAE.audio

Copy this file to the Devs:AHI driver drawer in Devs on your Workbench disk or hard disk. It is used to emulate the Amiga's sound system using AHI retargetable sound driver system. It will support 44.1khz 16Bit and 32khz.

UAE_German

This is a German keymap file for access to @\~{[]} with ALT-GR like windows. Copy it to devs/keymaps and select in Input prefs.

uae_rcli

Remote Cli. Usage: uae_rcli [?|-h] [-debug] [-nofifo] [<delay>]

uae-control

Copy this program file to your Utilities folder or some other folder on your Workbench disk or hard disk. It will provide you a user interface within the emulator to control the floppy drives, reset, quit and other features without having to press F12 to bring up the Winuae interface.

uaectrl

Copy this program file your C directory on your Workbench disk or hard disk. This is the Shell equivalent of the uae-control program which you can change floppies, sound, joystick, reset or quit the emulator from a simple text menu.

winuaeclip

This program allows you to have access to Windows Clipboard so you can copy/paste files to/from Winuae.

winuaenforcer

This program allows Enforcer support, to detect bad memory access when developing programs or debugging.
For 100% safety, in JIT use Indirect Mode and set Speed to 2.


Required files

Since the PC floppy controller can't read Amiga disks, floppy access has to be emulated differently: Floppies are emulated by means of disk files that contain a raw image of the floppy disk you want to emulate. They can be created with transdisk.

To actually run anything in UAE, you will need to install a Amiga Kickstart ROM image from an Amiga. You can't run UAE if you don't have this image. It is not included because it is copyrighted software. It has to be created with transrom.

In the "Amiga Programs" subdirectory you will find the two small Amiga programs that will help you generate the necessary image files. After you copied the tools to your Amiga, open the CLI. Refer to the transrom & transdisk pages for further information. NEVER run either of these programs from the Workbench! Always open a Shell or CLI window to do this.

UAE needs a Kickstart ROM file and a bootable disk image in order to boot the emulated Amiga. Disks can be inserted using the Floppies tab in the GUI. UAE has to be configured to use a "Kickstart ROM" in the ROM tab.

NOTE: If you transfer commercial software, you must not distribute the resulting image files, since that would be a violation of copyright law. The Kickstart ROM has to be considered commercial software. You may only use the Kickstart from your own Amiga, and you may not distribute Kickstart ROM files. Please read the license that came with your software for details.


Transrom

Transrom will dump the contents of your Kickstart ROM to a file.

To create a file called "kick.rom" in the RAM disk, use the following syntax:

transrom >RAM:kick.rom

This will create a 524288 Byte ROM image in the RAM disk. The file has to be transferred to the PC.


Transdisk

A disk file is an image of the raw data on an Amiga floppy disk, it contains 901120 bytes (880K), which is the standard capacity of an Amiga disk. Transdisk will dump an image of a floppy in one of the drives.

To create an image of a disk in your Amiga floppy drive, the syntax is:

transdisk >RAM:df0.adf

This command will create a file called "df0.adf" in the RAM disk. Such a file is 901120 bytes of size for one disk.

You can also create disk images in several parts. To create 4 parts of the disk in DF0: do the following:

transdisk >ram:df0_1.adf -s 0 -e 19
transdisk >ram:df0_2.adf -s 20 -e 39
transdisk >ram:df0_3.adf -s 40 -e 59
transdisk >ram:df0_4.adf -s 60 -e 79

After you copied the files to your PC, you have to merge them again. To do so in the DOS - prompt:

COPY /B df0_1.adf+df0_2.adf+df0_3.adf+df0_4.adf df0.adf


ADF Transfer

It is possible to transfer an ADF disk image back to an original Amiga disk. Copy the ADF to an original Amiga and insert a disk into df0. Then, you will also need transdisk in order to transfer the data to the disk. Do the following:

transdisk -w name.adf

You will have to replace name.adf with the desired name of the file. That will write back to a disk in df0.


The GUI

WinUAE includes a fairly powerful (and complicated) GUI (= Graphical User Interface) to manage the various settings and abilities of your virtual "Amiga". Click on the different tabs in the GUI below to see the help for that particular page of the GUI, or use the list below the picture.

WinUAE - About

The GUI contains everything you will need to configure WinUAE:

  • Configurations
  • RAM
  • ROM
  • CPU
  • Display
  • OpenGL
  • Chipset
  • Sound
  • Floppies
  • Hard Drives
  • Game and I/O Ports
  • Input
  • Misc.
  • Output


Configuration

Configuration Settings

These settings allow you to manage config-files (which have the extension .uae). These config-files have both a name and description, and control the behaviour of WinUAE. Basically, a config-file is an encapsulation of the settings found on all the other pages in the GUI.

WinUAE - Configurations

Loading a Configuration:

You can load a configuration by selecting it from the list and then clicking the Load button, or by double-clicking a configuration in the list.

Additionally, you can double-click any .uae config-file from the Windows Explorer, or from a Desktop Shortcut. The configuration will load, and if the Show GUI on Startup setting is disabled, WinUAE will immediately launch into emulation-mode, bypassing the GUI completely.

Saving a Configuration:

To save your changes for a configuration which you've loaded, simply press the Save button. If you've made changes to a configuration and want to save it under a different name, simply change the Name field on this page of the GUI. You can also adjust the Description field.

Deleting a Configuration:

Select a configuration from the list, and click the Delete button.


RAM

RAM Settings

These settings let you set up how much memory you will allocate (steal) from Windows.

WinUAE - RAM

With these 5 trackbars you are able to control the settings for the RAM for your emulated Amiga, and what types of memory to emulate. If you select more RAM than your Computer has, Windows will swap the content of the "memory" to the harddisk which is very slow.


ROM

ROM Settings

These settings control which Kickstart ROM-image WinUAE will use.

Winuae - ROM

ROM File specifies which Kickstart ROM file to use. This contains essential parts of the Amiga Operating system (usually 512K or 1Mb big). The rom file can be compressed to .zip or .roz files if needed. The rom file can be grabbed using the transrom utility from a real Amiga or copied from the Amiga Forever package.

Key File allows you to specify the key-file when using Cloanto's Amiga Forever ROM-images (which are encrypted).

Extended ROM File will provide CD32 support (supplied with Amiga Forever).

ShapeShifter support will enable the ShapeShifter 'PrepareEmul' support, so you don't have to KickShift your ROM-images. This also allows Amiga Forever users (encrypted ROM-images can't be KickShift'ed) to use ShapeShifter.

NOTE: ShapeShifter is a Mac - emulator for the Amiga. If you didn't know that, don't use this option!

Flash RAM File will allow you to save to NVRAM (Non-Volatile RAM) like the CD32.

Cartridge ROM File will allow to add Action Replay ROM files.


CPU

CPU Settings

These settings control the type of Motorola 68000 CPU which will be emulated.

Winuae - CPU

CPU Type:

68000 is the basic CPU type, as found in the Amiga 500, 1000, and 2000 models.

68010 is a slightly more advanced 68K member, but never actually shipped in a real Amiga.

68EC020 is the same as a 68020 CPU, but with only 24 address-lines. This is the CPU used in the Amiga 1200 model.

68EC020+FPU is the same as a 68020 CPU, but with only 24 address-lines. This is the CPU used in the Amiga 1200 model, and does not allow for any Zorro-III expansion cards in the system. Because WinUAE uses virtual Zorro-III expansion cards to provide Picasso96 RTG support, no Picasso96 support is possible with this CPU type.

68020 is a much more advanced 68K CPU, with some new instructions, and a fully 32-bit engine. Used in the A2500 for brief period on the A2520 card.

68020+FPU is similar to the above CPU type, but has a FPU.

68040 can be enabled since the JIT patches were added to WinUAE.

More compatible is only available when the CPU type is a 68000. Some games and demos require this setting for proper compatibility.

CPU Emulation Speed:

Fastest possible lets the CPU section of the emulation run as many cycles as possible, while still maintaining emulation of the custom-chips at the appropriate rate. It is important to keep sound and graphics synchronized, no matter how fast the PC is.

Match A500 speed limits the CPU emulation to run the same number of cycles per vertical-blank as a standard A500 would. In other words, for every 50Hz refresh of the graphics, the same number of CPU instructions will be executed as on a real A500 computer.

Adjustable between CPU and chipset lets you tweak the balance of power between custom-chip emulation, and CPU speed. Some games and demos require this setting to be adjusted. This setting is the only CPU setting which can be changed once WinUAE is running.

Detect CPU Idle will detect if the STOP instruction is in use (may not be compatible with all Amiga software). NOTE: The use of this option is only recommended when JIT is enabled!

JIT Settings

Due to the importance of the JIT engine and its complexity, it has its own page where you will find a description of its possibilities.


Display

Display Settings

These settings allow you to choose how WinUAE will display your Amiga-generated graphics. In a window, in a full-screen display, what resolution, etc.

Winuae - Display

UAE uses DirectX in order to produce the graphics-output. You will need at least DirectX 8 for increased performance in Picasso96 screens. See Misc. tab. UAE's native pixel format is 16 Bit.

View the Picasso96 section to get more information about this feature.

Amiga screen resolution

This lets you change the resolution used for the "Amiga". If Full-Screen is disabled, you will have to adjust Width and Height in order to get the desired size in the windowed mode.

Settings

Correct aspect will omit certain lines of the display to make it fit better into the screen.

Full-Screen displays the Amiga in Full-Screen. If this is disabled, WinUAE will be visible as a window on your Desktop.

Lo-Res tells UAE to omit drawing every second pixel horizontally.

Full Screen RTG displays the full screen displays in a Window, if it is not selected.

Line Mode

Normal draws every line once.

Doubled draws every line twice. This allows interlace mode to be emulated nicely, but of course you also need a display that is twice as high.

Scanline will not draw certain lines, leaving them black.

Centering will center the Amiga display on the screen. This can be horizontally and/or vertically.

Detect 16-bit Pixel Format will detect your graphics format with a resolution of 640x480 at 60Hz with a color depth of 16 Bit. To do so, UAE will switch the graphics mode to that format for approximately 2 seconds. You sould do this procedure, when UAE is installed, or you have installed a new graphics card.


OpenGL

The OpenGL screen now provides 3D display support from the Windows OpenGL drivers and can be configured via this screen.

Tick the Enable OpenGL box to enable OpenGL support.

You can specify whether to use 16bit or 32bit graphics support with Nofilter or Bilinear graphics.

The Horizontal and Vertical Sizes can be specified from -50 to 50.

The Horizontal and Vertical Positions can be specified from -50 to 50.

The Scanlines can be specified from 1:1 to 3:3 and from 0 to 100.

Scanline Brightness can be specified from 0 to 100.

Best results can be set by using low resolution and disable line-doubling.


ChipSet

This will select which custom chipset to use for emulation:

Winuae - Chipset

Chipset
  • OCS (Original Chip Set): This was the first Chipset, used in the Amiga 1000. It consists of the chips Paula, Agnus, and Denise. With these, you can display graphics in resolutions up to 640x512 and in up to 4096 colors.
  • ECS Agnus Uses enhanced Fat Agnus which supplies 1Mb of Chip RAM.
  • ECS Denise Uses the new Denise graphics chip with higher resolutions.
  • Full ECS (Enhanced Chip Set): This was the next generation of Amiga chipsets. The chip names remained unchanged, except some minor additions like "Fat Agnus". Only Agnus and Denise were changed. Compared to OCS, they provided higher resolutions, but no expansion of the color palette so far.
  • AGA (Advanced Graphics Architecture): This is the latest and most advanced chipset. The current generation was created in the labs as AA chipset (for Advanced Amiga), but in some countries it was later marketed as AGA (Advanced Graphics Architecture). Agnus was replaced by Alice and Denise by Lisa. The resolutions now reach up to 1280x512 in VGA scan frequencies. The color palette is now 24 bits or 16.8 million colors. You can display up to 256 colors simultaneously or in HAM mode more than 640,000. Backwards compatibility with Video and OCS modes is assured.
    NOTE: AGA modes do not work with 8-bit color depth screen modes!
  • NTSC Enables US NTSC screen mode (default is PAL).

For extra custom chip settings, select:

  • Fast Copper is the short name for a "Coprocessor" which is integrated into the Amiga custom chips. It makes fast action games possible, as well as unbelievable color effects, and the capability to drag down a screen partially on the Amiga's display and thus show several screens at once. Technically, the Copper is a highly specialized microprocessor which knows only three different commands, but can process these extremely fast and efficiently. It provides the ability to change e.g. graphics mode, color values, or sprite definitions somewhere at a well defined location within the screen. This way the Amiga can display many different actions on one screen simultaneously without activity by the main CPU.
  • Immediate Blits. The Blitter is the short name for another graphics coprocessor which is part of the Amiga custom chips. With it you can copy rectangular image parts extremely fast to other areas. During this, you can take up to three source data areas and perform logical operations on them. This allows e.g. to define certain color values of the copied object as transparent, thus not modifying the destination area. As an add-on, the Blitter can also draw lines and fill areas fast. All in all it serves to provide extremely fast, animated graphics that can be designed to be especially realistic.
  • Cycle exact CPU and Blitter. This is an experimental feature to cycle exact cpu and blitter emulation mode. Is slower than normal mode.
Collision Level
  • None No collision detection used.
  • Sprites Only Collision detection between sprites only enabled.
  • Sprites and Sprites vs Playfield Collison detection between Sprites and background graphics.
  • Full enables all levels of collision detection.
    HINT: Full is not recommended because it causes unnecessary performance loss, and is just very rarely needed.

For information about the custom chip responsible for sound output, view the Sound Page.


Sound

Sound Settings

Here you can select, if (and how) UAE will provide sound emulation.

Winuae - Sound

Sound Emulation

Disabled causes UAE not to emulate sound.

Disabled, but emulated tries to emulate most of the sound hardware, but doesn't actually output sound.

Emulated should sound just as good as 100% accurate and will be much faster for some programs.

Emulated, 100% accurate will emulate all of the sound hardware; and some programs (i.e. AIBB) won't run with other settings.

Frequency, Sample Type and Stereo Mode

This options allow you to adjust the settings for the sound-sampling. The higher Frequency and/or Sample Type, the higher will be the sound quality, but the slower will be the emulation. The Stereo mode can be set to Mono, Stereo or Mixed (either). Stereo will use more CPU time.

NOTE: High quality sound requires a lot of computing power, so try with different settings if your machine is not fast enough.

Sound Buffering
Gives you access to the level of the used Direct Sound buffer. You should play with it if you get choppy sound.
Values can be from 1 to 7.
Also, you can set Interpolation on to smooth out sound but needs more computing power.
Finally, you can compensate for 'sound lag' when sound becomes unsynchronised with the system by adjusting the Sound driver lag compensation from -10% to +3%.


Floppies

Using this tab, you can "insert" disks into your virtual Amiga. Press F12 and get this screen or for each drive,or press END and F1, F2, F3 or F4 to insert a disk into one drive. Use SHIFT+END and function key to Eject a disk.

Winuae - Floppies

With the ... buttons you can select .adf - files, which will then be available within the "Amiga" as disks. Eject removes the disk from the drive. Disable will disable the drive and free up some memory (vital for old games).

With Create Standard "Floppy" you can create a blank .adf - file. You can use these files as empty floppies.

With Create Custom "Floppy" you can create a special .adf file for saving games onto if the Standard floppy does not work.

For each drive, you can specify the drive type: 3.5" DD (880K), 3.5" HD (1.76Mb) and the old 5.25" SD (440K).

To get information about adf files and how to obtain them, view the Requirements and Transdisk.

WinUAE has a built in support for zip and gzip compressed disk images and ROMs. This support is provided by the well known zlib library. Compressed disks will be write protected.

You can also use DMS compressed files with WinUAE. You only have to copy the xDMS - executable to a system directory (z.B. c:\windows\command). The PATH variable must point to that directory.

Inserting a Zip file with multiple images will allow WinUAE to automatically select the first ADF file it finds.

Executable files inserted into a floppy drive will be converted to ADF format and saved to a new floppy disk ADF file.

The Floppy Speed slider will allow to adjust floppy access speed from Turbo, 100, 200, 400 or 800% of speed.


Hard Drives

Hard-Drive Settings

This tab contains some very important options, because you can configure harddisks for your "Amiga".

Winuae - Hard Drives

Since using diskfiles is awkward, it is necessary to emulate harddisks. There are two ways how you can use large amounts of data with UAE: harddisk files and mounted directories.

Add Directory... adds a virtual HDD to your Amiga. You can specify a path to your desired folder in Windows and a special name, which will be used for the HDD in the emulation.

This has some major advantages:
  • It has no problems with Kickstart 1.3
  • It is more convenient.
  • It is much faster.
You can also use native filesystems to mount Amiga CD-ROMs, and you can abuse the hardfile emulation to mount floppy disks.

Add Hardfile...

With this dialog you can add an hardfile. If you want to use an existing file, just click this button ... and select to file. If you want to add a new file, specify the number of bytes you want it to be. For example: 1MB = 1024kB = 1048576 bytes.

Harddisk files are large files that contain the image of an Amiga filesystem. They work much the same way as a disk file. You can simply create a large empty file and tell UAE to use it as a hardfile, but you will need to format it from the emulation before you can actually use it.

If you are want to boot a hardfile under Kickstart 1.3, you need the FastFileSystem file from the L: directory to be placed in the kickstart roms-directory where Winuae is installed.

If you are using Winuae 0.8.22r1 or earlier and Kickstart 1.3 or earlier, hardfiles can't currently be mounted at boot time, and therefore you can't boot from it either. You will have to boot either from a Floppy Disk Image or from a Filesystem, and mount the hardfile.device later. To do this, add the following to "DEVS:mountlist":

UAE0:
Device = uaehf.device
Unit = 0
Flags = 0
Surfaces = 1
BlocksPerTrack = 32
Reserved = 1
Interleave = 0
LowCyl = 0 ; HighCyl = 511
Buffers = 5
DosType = 0x444F5300
BufMemType = 1

You may need to adjust the values if you specified a different geometry, and/or your hardfile has a different size than 8MB, and/or the hardfile is not mounted as DH0: because you mounted other harddisks before it. Then, type "mount DH0:" (or put that command in your startup-sequence), and you should be able to access it. Don't forget to format it with the AmigaOS !

Add Harddrive...

You can now add complete Harddrives to Winuae, select from a dropdown list. This list will only pick up Amiga formatted drives, Amithlon partitions and empty partitions (not Windows partitions). Tick the Read/Write option if you wish to read and write to such a partition.

NOTE: Windows 2000/XP is required for this feature! You must also possess administrator rights!

Remove removes a harddisk from the configuration. Simply select a harddisk and click "Remove".

Properties allows you to change the settings for your virtual HDD. To adjust, click your desired HDD and select properties.

Add PC Drives at Startup mounts all available PC drive-letters for the Amiga to use, using the following naming convention:

  • If the drive-letter has a Windows volume-name associated with it, the drive will get mounted in the Amiga using its volume-name. On PCs, the volume name can be set via the Properties of the drive in My Computer.
  • If no volume-name, the drive gets assigned an Amiga volume-name based on its drive-type (the 'x:' is the PC drive-letter):
Hard Drives | WinDH_x:
CD-ROM Drives | WinCD_x:
Floppy Drives | WinDF_x:
Network Drives | WinNW_x:
Removable Drives | WinRMV_x:
RAM Disk Drives | WinRAM_x:

NOTE: If a drive doesn't currently have a disc in it (floppy, CD-ROM, etc.), then this option will NOT mount the drive for use by the Amiga.


Joystick and I/O Port

Joystick and I/O Port Settings

These settings let you control how joystick support is provided in WinUAE, as well as choosing serial and parallel port emulations.

Winuae - Game and I/O

Serial:

You can adjust the serial port (COM1....) to be used as serial port within UAE. Only the ports which are available on your PC are selectable.

MIDI In/Out

Here you can select the MIDI - device(s) to be used. Only available when the Serial- emulation is enabled.

Printer

This lets you specify which PC installed printer you want to use for printing for the "Amiga".

Amiga Mouse Port 0 / 1

With these 2 options you can select the configuration of the "Amiga" - ports. Port 0 is usually used by the Amiga - mouse. It is easy to exchange the settings with the swap button.

The keyboard replacements for an Amiga joystick are as follows:

 | Configuration A | Configuration B | Configuration C
Up | Keypad 8 | Cursor up | T
Down | Keypad 2 | Cursor down | G
Left | Keypad 4 | Cursor left | F
Right | Keypad 6 | Cursor right | H
Fire | Keypad 0 | Right Control | Left ALT

Default CD32 keys:

Key | Action
/ | RWD
* | PLAY
- | FFW
7 (Numpad) | Green
9 (Numpad) | Yellow
1 (Numpad) | Red
3 (Numpad) | Blue


Input

You can configure your Input device such as Joysticks to match your requirements for games or other software:

You can specify Compatibility mode with standard Windows setup or specify upto 4 configurable settings yourself. For each Input
Source you can configure each Input Target using options from the pull down menu. For example you can specify whether its a
Joystick, Mouse or Parallel Joystick or whether its a Horizontal, Vertical, Button or direction. The Autofire option can be specified for any of the buttons.

The Joystick dead zone can be specified for a percentage of the Joystick's movement to prevent unwanted movement.

The Autofire rate (frames) can be specified for how often firing occurs over a number of frames.

The Digital joy-mouse speed can be specified for how fast response is for digital input devices (e.g. USB).

The Analog joy-mouse speed can be specified for how fast response is for analogue input devices (e.g. MIDI port).

The Mouse Speed can be specified for how fast response is for the standard mouse (default is 100).

The Copy From option allows you to copy a configuration from another configuration into the current configuration to save time.


Misc.

These settings control many important aspects of the Amiga emulation.

Winuae - Misc

Advanced:

Middle-Mouse-Button --> ALT-TAB allows the middle button on your mouse to act like ALT-TAB, switching focus away from the WinUAE emulation. This is useful because WinUAE traps the mouse-cursor within its Window borders, and if your hand is already on the mouse and you want to escape this capture, you can just press the middle button.

Show GUI on startup will allow you to double-click a .uae config-file without it immediately launching the emulation.

Show LEDs allows you to see the track-display of the floppy drives, along with the power-LED. Your resolution must be 800x600 or higher in order to see this information.

UAEscsi.device Adds support for IDE/SCSI CDROM drives on Amiga side.

BSD socket library emulation allows your Amiga to use your PC's network connection, whether it be through Dial-Up Networking (DUN), or Ethernet connectivity. In other words, if your PC is connected to your Internet Service Provider (ISP) through a modem, or connected to a LAN through an Ethernet connection, your Amiga will be able to make use of that connection.

Use Ctrl-F11 to quit Just press this key combination to quit Winuae.

Don't use RGB overlays Do not use Red Green Blue overlays.

Use ASPI SCSI layer Enable ASPI drivers for CD ROM support.

Logging

Create log file will write various debugging information to the winuaelog.txt file in the same directory where WinUAE resides.

Log illegal memory accesses will write memory-access problems into the winuaelog.txt file, if Create log file is enabled.

When Minimized:

Run at lower priority makes the emulation use less CPU resources when minimized.

Disable sound output turns off audio output when minimized.

Pause emulation will completely stop emulation when Winuae is minimised.

Save Curent State You can now save or load a Save State which will save memory to a disk file (.USS) and reload it later. Ideal for saving the current state of an Amiga game which does not allow to save itself and so you can restore from that position later. Press Home and F5 to load the Save State Dialog box.

Load a state-saved snapshot will load a previous saved state file. Press Shift, Home and F5 to load state dialog box.

Reset Amiga will do a warm reboot of the Amiga system.

Quit WinUAE will exit the WinUAE emulation program.


Output

The Output tab allows you record video and audio (from selected Codec's) to an AVI file.

Winuae - Output

Output Name of output file to save to (default is C:\Output.avi).

Video Type of Video codec used to create/compress the video file.

Audio Type of Audio codec used to create/compress the audio data.

Playback Speed Speed in frames per second for video or use default PAL/NTSC speeds.

Color Format Specify colour depth for video. 256 or True Color (which will use more disk space).

Frame Size Screen resolution to use for video.

Save screenshot Allows you to take a snapshop of whats on the screen while emulation is running. Ideal for taking snaps
of your latest high scores or your desktop easily. Use can use the F11 key as well.

Advanced


The Emulation

If the emulation is working, you are on the right way! :)

Amiga - Workbench 3.1

But there are some things you need to know:

  • JIT
  • Picasso96 Emulation

  • Command-Line Parameters

  • Keyboard Emulation

  • Compatibility

  • Speed


JIT - Just In Time

JIT - Just In Time compiler

UAE has always been hampered by being somewhat lacking in CPU performance.
Undoubtedly, it was amazingly fast for what it did, but it never really was an alternative to a decked out, no expense spared Amiga. The Just In Time compiler should help change that.

UAE can now emulate the CPU at considerably more than 060 speeds. That
should do for a while - although further speedups are still possible.

A description of what the settings will cause the JIT compiler to do:

Cache Size: The size (in kB) the JIT compiler uses to store pretranslated code. When this becomes full, or when the OS issues a flush icache instruction, this gets completely emptied, and then refilled during execution. Setting it to 0 will disable the JIT compiler.

Const Jump: If this enabled, unconditional branches will not end a block. Effectively, UAE-JIT compiles "through" them. Generally, that's a good idea, as it improves performance.
However, it makes soft cache flushing impossible for some blocks, so if you experience lots and lots of soft cache flushes (e.g. when using a Mac emulator), you might try "no" and see whether it does any better.

FPU Support: If this is enabled, the JIT compiler will be used for the most commonly used FPU instructions. Unchecking this option will disable JIT-compiling for the FPU.

Force Settings: Will force the JIT compiler to work with the method the user chooses.

Direct, Indirect, After Picasso: These describe how aggressive to be when it comes to accessing Amiga memory. If you choose "Direct", the emulation will be very aggressive. If you choose "Indirect", the emulation will always use the slower but safe method. "AfterPic" uses the safe method until the first time a Picasso96 mode is switched on, and the aggressive method
from then on. Unless you are not using P96 graphics, there isn't much point setting this to "direct". During the startup, weird and wonderful things happen in the Amiga, and only having faith in the aggressive method once that difficult time is over is certainly a wise thing to do.

No Flags: Whether to optimize away flag generation when it isn't needed. There really shouldn't be any reason why you'd want to disable this option. If you find something that
works with "no" and doesn't with "yes", it most likely is a bug and you should report it.

Hard Flush: If this is unchecked, an OS induced icache flush doesn't actually empty the
cache, but instead checksumming will be used to check whether blocks have to be discarded. You'll probably want to leave this at its default (otherwise lots of stuff, like the OS, gets translated over and over).

The JIT patch was developed by Bernd "Bernie" Meyer, this description is a slightly edited and very shortened version of his documentation.


Picasso96 Emulation

To use this feature, you must select 68020 emulation with a 32 bit address space in the CPU tab. You also need a Kickstart 3.x ROM.

To specify how much graphics memory you want to emulate, you must adjust the RTG in the RAM tab.

Then, you need the Picasso 96 software which is not distributed with UAE. You may download the latest version from here. Version 1.31 or higher is recommended. Install the Picasso96 software. After that is complete, reboot, and you should be able to select the new modes from the ScreenModes program inside the Amiga.


Command-Line Parameters

UAE's command line options are quite hidden in WinUAE, since it features a mighty GUI to visualize the options and settings that can be set in UAE from the command line.

There are two parameters left:
  • -config=configfile.uae

  • -f configfile.uae

which will both do the same thing: they will cause WinUAE to load the given Configfile during WinUAE is starting.


Keyboard Emulation

Most of your keyboard retains its regular functionality under UAE, but there are a few notable exceptions:

  • If you don't have a Win95 keyboard, you will have to use Ins/Home as a replacement for Left Amiga/Right Amiga. Also, if you are using WinNT with a Windows keyboard, you will STILL have to use Insert/Home as your "Amiga" keys.
  • HELP has been remapped to Page-Down.

  • F12 brings up the GUI.
  • PRINTSCREEN copies WinUAE's current screen to clipboard
  • END + PrintScreen: save screenshot file (was F11 in older versions)
  • END + F5: restore state
  • SHIFT + END + F5: save state
  • PAGE UP: Action Replay "freeze"-button
  • SCROLL LOCK toggles screen refresh, speeding up the emulation.

  • PAUSE toggles sound, speeding up the emulation (NOTE: you can't enable sound this way if you haven't configured UAE to run with sound from the beginning).

  • END+F1, F2, F3 or F4 allows you to change disks in one of the four Amiga disk drives.
  • SHIFT+END+F1...F4 ejects the disk.


Compatibility

According to the testers and the users of WinUAE, it proved itself worthy. Compatibility for both UAE and it's Windows port should be really very close to 100%.

If you have problems to get a certain program working, look at the Links. There you will find the most comprehensive emulation sites on the net.

The number of programs that don't run has been reported to be close to zero. If you find a piece of software to require special treatment, please let the developers (Bernd Schmidt for UAE, the current WinUAE maintainer is Toni Wilen - see Contacts) know.


Speed

On a sufficiently powerful PC, UAE will give you quite an authentic flashback into the past. Thanks to DirectX, the raw drawing throughput of this version will be among the highest of all Intel ports. 800x600 is only about 20% slower than 320x200 on a Pentium 100, although it requires more than seven times as many bytes per second to be pumped across the PCI bus. UAE's native display depth is 16 bpp. This table shows how the net drawing speed is affected by your display type:

16 bpp full screen - 100%
16 bpp desktop - 98%
24 bpp desktop - 72%
32 bpp desktop - 60%

Unfortunately, windowed mode clipping causes system services such as mouse/keyboard input and the file system to slow down (there is no way of avoiding this at the moment). This does not affect SMP machines. Sound is a luxury. Because sound output is strictly synchronized with video DMA, you won't get clean sound unless your machine is capable of running at 50 fps at least internally.

Rule of thumb: Get a Pentium III or Athlon if you want full graphics and full sound at the same time.


Background Information

In this section you will find some background information on Amigas. No detailed technical descriptions, but things a Amiga user should know about.

The subsections are as follows:

  • Amiga Hardware
  • UAE People


Amiga Hardware

In this section you will find some background information on the hardware of Amigas.

The subsections are as follows:

  • Custom Chips
  • Kickstart
  • Zorro Bus
  • Autoconfig


Custom Chips

In the first Amiga, the A1000, the chips "Agnus", "Paula", and "Denise" did the hard work. They together build a specialized multiprocessor system that takes much of the time-critical load off of the main processor. This includes the plain display of image informations, 4-channel sound output, floppy control, general DMA control, and much more. In the newest Amigas you find the "AGA chipset", which consists of the original "Paula" and the advanced chips named "Alice" (the replacement for Agnus) and "Lisa" (the replacement for Denise).
  • OCS (Original Chip Set): This was the first Chipset, used in the Amiga 1000. It consists of the chips Paula, Agnus, and Denise. With these, you can display graphics in resolutions up to 640x512 and in up to 4096 colors.
  • ECS (Enhanced Chip Set): This was the next generation of Amiga chipsets. The chip names remained unchanged, except some minor additions like "Fat Agnus". Only Agnus and Denise were changed. Compared to OCS, they provided higher resolutions, but no expansion of the color palette so far.
  • AGA (Advanced Graphics Architecture): This is the latest and most advanced chipset. The current generation was created in the labs as AA chipset (for Advanced Amiga), but in some countries it was later marketed as AGA (Advanced Graphics Architecture). Agnus was replaced by Alice and Denise by Lisa. The resolutions now reach up to 1280x512 in VGA scan frequencies. The color palette is now 24 bits or 16.8 million colors. You can display up to 256 colors simultaneously or in HAM mode more than 640,000. Backwards compatibility with Video and OCS modes is assured.
    For information about the custom chip responsible for the sound, view the Sound Page.

Some things you might want to know:

  • The HAM (Hold And Modify) mode is one of several graphics modes that's provided by the Amiga custom chips from their start. With HAM, you can display many colors simultaneously while using up very little memory. Simply put, it's sort of a hardware data compression method by a factor of ca. three. Still you can display practically all colors of the palette on screen. This modification of one color component serves to render soft color transitions very accurately, as they are typical for natural pictures like portraits. In the HAM8 mode you can theoretically display more than 640,000 colors simultaneously on screen. The dependence on previous pixel contents sets certain limits, so that the HAM mode is less suited for realtime action. But in still pictures or precalculated animations, it lives with its many colors. With its data compression, the HAM mode is also responsible for the Amiga being so famous for its animations that can run at full speed, even on smaller Amiga models. Basically you can display all 16.8 million colors of the 24-bit palette in HAM8 mode.
  • Copper is the short name for a "Coprocessor" which is integrated into the Amiga custom chips. It makes fast action games possible, as well as unbelievable color effects, and the capability to drag down a screen partially on the Amiga's display and thus show several screens at once. Technically, the Copper is a highly specialized microprocessor which knows only three different commands, but can process these extremely fast and efficiently. It provides the ability to change e.g. graphics mode, color values, or sprite definitions somewhere at a well defined location within the screen. This way the Amiga can display many different actions on one screen simultaneously without activity by the main CPU.
    Blitter is the short name for another graphics coprocessor which is part of the Amiga custom chips. With it you can copy rectangular image parts extremely fast to other areas. During this, you can take up to three source data areas and perform logical operations on them. This allows e.g. to define certain color values of the copied object as transparent, thus not modifying the destination area. As an add-on, the Blitter can also draw lines and fill areas fast. All in all it serves to provide extremely fast, animated graphics that can be designed to be especially realistic.

The Amiga's third custom chip, Paula took care of audio generation and I/O. There were four voices of sound, output as two (stereo) channels. Nine octaves were available with both amplitude (e.g. speech playback) and frequency modulation.
Amplitude modulation was the normal way of generating sound, with the DMA chip reading amplitude data from memory and the I/O chip translating the digital data to an analog voltage level. Frequency modulation always took place "on top of" amplitude modulation, modulating the frequency with which the DMA chip would read new amplitude data. One voice's amplitude data was usurped to modulate the frequency of another voice. Frequency modulation was not needed to play normal tones, and usually had little to do with the perceived pitch of the actual sound played, at least as experienced by a human listener.


RAM & Kickstart

RAM:

  • The Fast RAM is for CPU's use only, capacity are differenciated by different CPU.
  • Chip RAM is shared between CPU and specialized chips (up to 4MB). Equal to other computer's Video RAM and Sound Buffer. In an Amiga, it can also be used by the CPU. A500 or A600 had 512K or 1Mb or Chip RAM, A1200 or A4000 had 2Mb Chip. 8Mb can be set for Chip RAM (no real Amiga had this!)
  • Slow RAM is extra RAM added via the A500 trapdoor is a slower than Fast RAM (this is due to A500's architecture).
  • Z3-Fast is Fast RAM in Zorro 3 address space and can be used instead of Fast RAM.
  • RTG (graphics card) is memory for ReTargetable Graphics cards needed for Picasso 96 support.

Z3-Fast and RTG RAM is supported on the 68020, 68020+FPU and 68040 only.

Depending on the processor variant, you can expand the RAM up to 10 MB or theoretically up to 2 GB. The limit of 2 GB is valid for the Amiga models A3000 and A4000. On the mainboard of these computers you can plug in up to 18 MB RAM, and for every of the four Zorro-III bus expansion you can expand the memory to the maximum!

Kickstart:

Orignially, the first Amiga (A1000) had a small bootstrap ROM, which contained code to load the basic operating system from a disk, known as the "Kickstart disk" into 256 kilobytes of RAM, which was then transformed into ROM by disabling the write signal to this RAM. Of course, the contents of this pseudo-ROM was lost when the computer was turned off. The point of using RAM was that Commodore wanted to be able to continue developing the operative system without requiring people to change ROMs when the new version was available; instead, they could just distribute new "Kickstart" disks, which they did three times, upgrading version 1.0 to 1.1, 1.2. Version 2.0 was too large to fit into this pseudo-ROM, and that's the reason why Amiga 1000s cannot run the modern versions of the Amiga OS.


Zorro Bus

The Zorro bus is the standard for expansion cards on the bigger Amiga models from the Amiga 2000 up. In the A2000 it was the Zorro-II bus which was 16 bits wide. The Zorro-III bus was introduced with the Amiga 3000. It is 32 bits wide and was one of the fastest bus systems. It's also downwards compatible with the Zorro-II bus. One of the main features of the Zorro bus is Autoconfig.


Autoconfig

On other computer systems you always had to configure cards manually via "jumpers" or DIP switches for certain address areas or interrupt numbers. This is very tedious and, in practice, it requires in-depth knowledge of the system to avoid conflicts among different cards used simultaneously. The Autoconfig mechanism of the Amiga system automates this procedure totally, so that the user never has to bother with such details. Thus, expanding an Amiga system is extremely simple and without problems.


UAE People

Here is the place you will get some information on the people who stand behind UAE. Since it is not possible to present more detailed information about everyone who has ever contributed code to UAE, this section only includes the main people who have had the most major influence on the development.

The people:

  • Bernd Schmidt
  • Toni Wilen
  • Brian King
  • Mathias Ortmann


Bernd Schmidt

Bernd is the great mastermind of UAE. He started the main UAE development on the 25th of February, 1995. Ever since then, Bernd has continued updating UAE, incorporating contributions and making progress on the core that all other versions of UAE are derived of. Bernd lives and studies in Germany.


Toni Wilen

Toni Wilen is another of the great minds behind the leading Amiga emulator. Toni has become famous for his incredible speed of answering bug reports, and fixing the reported issues, as well as for implementing a big bunch of features users would not want to miss in UAE/WinUAE.
Also, he is the maintainer of WinUAE, he took over this position from Brian King.

Toni was interviewed by Georg Veichtlbauer on the 19th of November, 2002. It may be a bit lengthy but sure worth a read.

Interview:

Q: Would you tell a few things about yourself Toni?
A: I am from Finnland, 27 years old, working as programmer/sysadmin. I haven't really done anything lately than working, watching Anime, reading Manga and programming something stupid and of course idling :).

Q: Did you ever own an original Amiga?
A: Of course, and many models... A1000 was my first Amiga (1988 or so), then I had two A500s (another was my brothers) and later two A1200's (again one for my brother). Now I have one A500 and A1200 for emulator compatibility testing :).

Q: When (and how) did your programming carreer start?
A: My first computer was Spectra Video svi-328. My first "programming" was writing and modifying some basic programs from computer magazines. I think I was 9 or 10 when I had my first computer :). I had c64 about 2-3 years later, wrote some stupid programs with C64-assembler...

Q: How did you get involved in UAE?
A: I think I saw someone say something like "it is impossible to emulate AGA" or something (I believe everything is possible). Then I started to examine UAE's code and add AGA support slowly (and this is true!). It took about 0.5 years until I understood UAE and even now I don't understand everything.

Q: You did not use any AGA documentation?
A: The unofficial aga.guide is the only documentation, but I knew it is correct because I programmed some AGA programs on my A1200 ages ago...

Q: Why did you decide to realize it with UAE instead of Fellow?
A: Choice was easy, UAE was in C. I hate Intel assembler!

Q: How much progress do you think UAE has made over the past years?
A: Too much? :) I'd say A500 emulation is very close. Only 100% correct cycle-exact CPU/Blitter emulation is not yet complete (because there is no documentation, you have to run test-programs on a real A500 to find everything out. Very time consuming. I am not really interested...). Of course 68020+ emulation needs MMU support (but probably not useful until everyone have 4GHz+ CPU :).

Q: What are the main features you implemented in UAE/WinUAE?
A: AGA, much more compatible disk emulation, more compatible blitter emulation, rdb, booting from real hdd's, more compatible sprite emulation, CD32, A1000 boot rom, state save, drive leds :), partial CDTV (because of missing hardware documentation).

Q: Why did you accept the position as WinUAE maintainer? It sure isn't the nicest and best paid "job" you could get...
A: Because I wanted to continue improving UAE :). Sending patches to someone else is much more complex, and anyway, Brian wasn't interested in continuing for a long time. I'd probably have become win32 maintainer even if I didn't want :).

Q: Do you actually use WinUAE? I remember Brian saying he did'nt do much with it apart from coding it...
A: Yes, mostly for classic A500 demos and games.

Q: How do you see the cooperation with the other coders of UAE?
A: Usually I disagree with Bernd Schmidt but unfortunately he has been too quiet lately. Unfortunately it appears only me and Bernd know how the UAE core works. Bernd Roesch and 2-3 other coders send me fixes for picasso96, bsdsocket etc., non-core emulation but thats it. Finding someone who knows Amiga hardware, has programmed demos/games on an Amiga, knows C (Amiga demos/games were mostly in assembler) and knows Unix or Windows programming is nearly impossible... and especially one who has time to learn how UAE works.

Q: Are you working on other publicly available programs?
A: Great Nations (Civilization clone, don't know if I ever have time to continue), NHLinfo (EA Sports NHL-game editor, mostly I have lost interest on that too because all NHL games since 2001 have been total crap), Filemaster for Amiga, and some other smaller Amiga programs.

Q: What are you planning for the WinUAE future?
A: Filesystem filenotification support,"sprites-outside-playfield" AGA-feature (but probably requires big rewrite of display code, don't expect too soon), Catweasel support, full CDTV emulation, MK3 (PCI) support.


Brian King

Brian King, the man from Seatlle - USA, is a long time supporter of UAE. He entered the team in 1996 and is known as one of the main guys behind WinUAE, which he maintained for more than 5 years. He gave up due to a lack of time and handed over to Toni Wilen.

Brian was interviewed by Malc Jennings from ALE.

Interview:

Q: To start off, have you ever owned a real Amiga?
A: Yes. Several Amigas in my lifetime. Started with a used A1000, graduated to an A2000 with 040 accelerator. Eventually got an A1200 with 030 accelerator, and then briefly had an A3000T before it got stolen. Finally ended up with an A3000 here.

Q: About how much per year did/do you spend on hardware/software for the Amiga?
A: $1000

Q: What made you decide to code/help code an Amiga emulator?
A: It just seemed like a great way to keep the Amiga alive, especially combined with the rapid pace of PC-hardware development and CPU speed, when compared to the high prices and slow speeds of newer Amiga hardware.

Q: What is your main role in the team?
A: I primarily just work on the Windows port of UAE, from Linux. I have added some core features to UAE (such as Picasso96 RTG support), by implementing them first on WinUAE.

Q: Are there any other projects you are working on at the moment?
A: No, my full-time job keeps my far too busy.

Q: Are there any new features users should expect in the future releases of WinUAE?
A: Still hoping for AHI audio-support, along with better/faster Picasso96 support.

Q: How many people are working on WinUAE in total?
A: Five or six. Bernd Schmidt contributes the most, via the core UAE code on Linux. Toni Wilen contributes alot of the disk and custom-chip emulation, including AGA support. Bernie Meyer did the JIT engine on Linux, which I ported into WinUAE. Bernd Roesch has been contributing alot of small fixes and enhancements. And I tend to do the "dirty work" of merging all these things together into a packaged installer.

Q: For the technical people out there, what language(s) are/is used to code WinUAE?
A: C and Assembly.

Q: Do you use any other programs during the development of WinUAE?
A: VisualC++, GCC.

Q: How much progress do you feel WinUAE has made over the years?
A: Limited progress, based on the amount of time I have to contribute to it. In some areas its gotten alot better (application support, emulation speed, compatability) and in some areas its gotten worse (custom-chip emulation speed).

Q: What is/was the most difficult part of the Amiga to emulate?
A: I imagine that the interaction between the custom h/w is the most difficult, with copper/disk/sprite/sound all churning away simultaneously. Toni or Bernd could answer this question better.

Q: How much experience do you have as a programmer?
A: 15 years, with all sorts of languages: BASIC, Forth, 680x0 Assembly, Pascal, Fortran, C, C++.

Q: How long have you been working on WinUAE?
A: Too long! <grin> About 5 years now?

Q: How do you feel about the legalities surrounding the emulation of the Amiga?
A: I understand the copyright issues, but its a shame that an older version of Kickstart isn't freely available. It would save me so much time answering the typical e-mail of "Where do I get a Kickstart ROM man?".

Q: I know how you feel! anyway ... Have you ever developed software for anything other than the PC?
A: Yes. TRS-80 Colour Computer I, II, and III. Also Amiga software.

Q: Which do you prefer, Windows or Workbench and why?
A: I prefer Windows, but only barely. Mostly due to superior development tools and capabilities of the OS, such as memory-protection.


Mathias Ortmann

Yet another guy from Germany. He is the one who created the very first Windows version of UAE. Entered the development team in 1996 and left in 1999 due to a lack of time, Mathias is still well known for his BSDSocket implementation.


Credits

In this section you will find information about the programmers of UAE and this help file.

If you want to contact a programmer (or me), please note: NEVER send warez of any kind, no matter how good they work for you. NEVER ask for ROM-files, Workbench - disks, etc.

For the info, have a look at:

  • About WinUAE

  • GPL

  • About the helpfile


About WinUAE

Toni Wilen : Main maintainer of Winuae.
Bernd Schmidt : Core UAE concept and implementation.
Bernd Roesch : Serial Port, File System, JIT FPU etc.
Stephan Riedelbeck : File System, bsdsocket etc.

And many contributors:

Alessandro Bissacco, Hannu Rummukainen, Andre Beck, Ed Hanway, Denis Sablic, Marcus Sundberg, Samuel Devulder, Stefan Reinauer, Marco Nelissen, Thierry Lescot, Bruno Coste, Oliver Moehrke, Per Olofssen, Tristan Cavelier, Ruben Martinez, Olivier Raoul, Markus Gietzen, Christian Schmitt, Herman ten Brugge, Tauno Taipaleenmaki, Michael Krause, Kai Kollmorgen, Stefan Ropke, Joanne Dow, Rodney Hester, Volker Zota, David Varley, Holger Jakob, Philippe Gerin, Jake Hamby, Chris Hames, Paul Kienitz, Bernd "Bernie" Meyer, Sam Jordan, Adil Temel, Andreas Junghans, István Fábián, Mathias Ortmann, Brian King.

Check out Links for the homepage of WinUAE and the core UAE!

If you have found an error, please view the Known Bugs before you write one of the guys!

NOTE: Please use the following type of template with all bug reports:
  • Amiga OS verions (kickstart and workbench
    • )
  • Extensions running (MagicWB, NewIcons, DirOPUS, ToolManager, etc.)

  • Settings of Amiga that caused the problem

  • HostOS (Win95, Win95-OSR2, WinNT, etc.)

  • DirectX version

  • PC Graphics card and its driver's version

  • Sound card and its driver's version


GPL

GPL - GNU Public License

GNU GENERAL PUBLIC LICENSE

 Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.

Preamble

The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.

When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.

To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.

For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.

We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.

Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.

Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.

The precise terms and conditions for copying, distribution and modification follow.

GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.

1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.

2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)

These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.

3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)

The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.

4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.

6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.

7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.

It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.

This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.

8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.

9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.

10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.

NO WARRANTY

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

END OF TERMS AND CONDITIONS

How to Apply These Terms to Your New Programs

If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.

To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.

<one line to give the program's name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Also add information on how to contact you by electronic and paper mail.

If the program is interactive, make it output a short notice like this when it starts in an interactive mode:

Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details.

The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.

You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:

Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker.

<signature of Ty Coon>, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License.


About this help

About this helpfile

The files in this help were created with HTML-Kit Editor and Dreamweaver MX. The pictures were edited and/or created with Paint Shop Pro 6 and Photoshop 7. The files were compiled with the HTML Help Workshop to provide a .chm file.

DirectX, HTML Help Workshop, Windows 95,98,ME,NT,2000,XP © Microsoft Corporation
Dreamweaver © Macromedia, Inc.
Paint Shop Pro © JASC Inc
Photoshop © Adobe Systems, Inc.
Amiga, Kickstart, Workbench and the Amiga Logo are © Amiga, Inc.
Amiga Forever © Cloanto

All other brand-names are © by their respective authors!

Thanks go to:
  • Brian King for providing information
  • Toni Wilen for keeping us up-to-date, providing information
  • Ralf Steines for all the time he spent with great help
  • James M. Battle for his help with the filesize and screenshots
  • Juergen Beck for some very useful suggestions
  • Nomad for the logo
  • Bernie Meyer for his excellent JIT documentation
  • All the people who reported mistakes in the file

Found any mistakes in the file? Any comments? Feel free to write Peter or Georg!

This helpfile was created by Georg Veichtlbauer (1999-2002) and Peter Hutchison (2002).
This file may be freely distributed, but does not underlie the GPL!