
      #*=====================*#
      #| A M I A R C A D I A |#
      #|         and         |#
      #| W I N A R C A D I A |#
      #|     Version 6.01    |#
      #|     25 Apr 2008     |#
      #|                     |#
      #|   by James Jacobs   |#
      #|  of Amigan Software |#
      #*=====================*#

         Overview            
         Requirements        
         Usage               
         Credits and Licence 
         History             

         Toolbar             
         Menu                
         Controllers         
         Other Keys          
         Miscellaneous       
         Mnemonic Registers  
         ARexx Commands      
         Compatibility       
         Troubleshooting     


OVERVIEW-------------------------------

AmiArcadia emulates these Signetics-based machines: the Emerson Arcadia
2001 (Bandai, Emerson, Grandstand, Intervision, Leisure-Vision, Leonardo,
MPT-03, Ormatu, Palladium, Poppy, Robdajet, Tele-Fever, Tempest, Tryom,
Tunix, etc.) and Interton VC 4000 (Acetronic, Fountain, Interton,
Prinztronic, Rowtron, Voltmace, Waddington, etc.) console families, and
the Elektor TV Games Computer.

Features include: ReAction GUI, load/save snapshots, windowed and full-
screen modes, CPU tracing, trainer, drag and drop support, graphics
scaling, automatic load/save of configuration/game, keyboard/joystick/
gamepad/paddle support, BIOS image not needed, autofire, warp mode,
gameplay recording/playback, PAL/NTSC modes, sprite demultiplexing, help
windows, source code, debugger, frame skipping, redefinable keys, save
screenshots, ARexx port, network play, real-time monitor, locale support.


SYSTEM REQUIREMENTS--------------------

Hardware        Required           MC68020+
                Recommended        Joystick(s) and/or CDCD gamepad(s)
Firmware        Required           Kickstart 3.1+
Software        Required           AmigaOS 3.5+
                Recommended        AmigaOS 4.0/MorphOS (for speed)
                                   BlazeWCP (for speed)
                                   FBlit (for speed)
                                   OpenURL.library
                                   TCP/IP stack

Compatibility with OS4.0 has not been tested. The sound emulation bangs
the hardware directly (unless you recompile without #defining BANGPAULA).
The audio filter control and analog joystick (on host) support also bang
the hardware directly. All other code is system-friendly.

The emulator has been tested under WinUAE and (older versions have also
been tested on) a real Amiga 1200/060.

It can also be run under MorphOS if you have the necessary ReAction
classes (from OS3.5/3.9) (eg. window.class, speedbar.gadget, etc.)
installed. Sound under MorphOS needs eaudio.device
(http://aminet.net/driver/audio/eaudio.device.lha) because MorphOS lacks
an audio.device. (You would also presumably need to recompile without
#defining BANGPAULA.) Also, the Poseidon USB stack seems to be
incompatible with AmiArcadia's keyboard input subsystem. Apparently,
MorphOS has problems with AmiArcadia 4.8+ when starting in Arcadia mode.
If so, MACHINE=INTERTON or MACHINE=ELEKTOR should allow the emulator to
start.

You will need a very fast Amiga to achieve adequate performance
(which is 50/60 FPS for PAL/NTSC, respectively).

Full-screen mode is slow by default, due to the use of OCS. You should
download and install the excellent BlazeWCP patch (Aminet:util/boot/
Blazewcp.lha). This will make the emulation dozens of times faster in OCS/
ECS/AGA modes under WinUAE, and significantly faster on a real Amiga.

BlazeWCP 1.74 (at least) seems to crash when using the "uaegfx" modes (at
least) under WinUAE 1.3.2 (at least). However, no problems have been
experienced using it with OCS/ECS/AGA modes. This is a WinUAE bug; it does
not occur on a real Amiga. It was reported to the WinUAE maintainer months
ago, yet he has not bothered, or is unable, to confirm let alone fix it.

There are other similar patches (eg. PatchWP8 and NewWP8) which are slower
but perhaps do not have these crashing issues (though they do have
graphics corruption issues when being used by more than one program
simultaneously). Please email us with the results if you have tested
these.

You may also wish to investigate the FBlit patch (Aminet:util/boot/
fblit.lha); this should provide increased speed on real Amigas and
possibly under UAE. We have not tested nor quantified this.

The speedups provided by these patches will of course improve the speed of
various programs you may wish to run, not just AmiArcadia.

See here for more tips for increasing the emulation speed.

Note that to use full-screen mode, you will either need a to use a monitor
capable of displaying a 15KHz (ie. OCS/ECS/AGA) signal, or mode promotion.

AISS

If you have AISS (the Amiga Image Storage System, available at
http://www.masonicons.info/aiss/arc/aiss4.lha) installed, you can delete
the following files:

    images/arexx
    images/arexx_s
    images/backup
    images/backup_s
    images/new
    images/new_s
    images/open
    images/open_s
    images/restore
    images/restore_s
    images/save
    images/save_s
    images/snapshot
    images/snapshot_s


USAGE----------------------------------

CLI Arguments

                                 AmiArcadia

Format:    AmiArcadia
           [[FILE]          <file>]
           [ANALOG          ON|OFF]
           [AUTOFIRE        ON|OFF]
           [AUTOSAVE        ON|OFF]
           [BREAKPOINT|BP   <address>]
           [COLLISIONS      ON|OFF]
           [DEMULTIPLEX     ON|OFF]
           [FLAGLINE        ON|OFF]
           [FRAMESKIP       1|2|3|4|5|6|7|8|9|10]
           [FULLSCREEN      ON|OFF]
           [JOY1            ON|OFF]
           [MACHINE         ARCADIA|INTERTON|ELEKTOR]
           [NARROW          ON|OFF]
           [PAUSED          ON|OFF]
           [PORTNAME        <name>]
           [PRI             <pri>]
           [PUBSCREEN       <screen>]
           [SIZE            1|2|3]
           [SOUND           ON|OFF]
           [STARTUP         <file>]
           [STRETCH         ON|OFF] (IBM-PC only!)
           [SWAPPED         ON|OFF]
           [TITLEBAR        ON|OFF]
           [WARP            ON|OFF]
           [WATCHPOINT|WP   <address>]

Template:  FILE,
           ANALOG/K,
           AUTOFIRE/K,
           AUTOSAVE/K,
           BREAKPOINT=BP/K,
           COLLISIONS/K,
           DEMULTIPLEX/K,
           FLAGLINE/K,
           FRAMESKIP/K/N,
           FULLSCREEN/K,
           JOY1/K,
           MACHINE/K,
           NARROW/K,
           PAUSED/K,
           PRI/K/N,
           PORTNAME/K,
           PUBSCREEN/K,
           SIZE/K/N,
           SOUND/K,
           STARTUP/K,
           STRETCH/K, (IBM-PC only!)
           SWAPPED/K,
           TITLEBAR/K,
           WARP/K,
           WATCHPOINT=WP/K

Purpose:   To emulate Signetics-based machines (specifically, the
           Emerson Arcadia 2001 and Interton VC 4000 console families, and
           the Elektor TV Games Computer).

Specification:

    BREAKPOINT|BP=<address>:
           code breakpoint to set. <address> is considered hexadecimal if
           it begins with '$', otherwise it is considered decimal. Eg.:

           AmiArcadia SUPERBUG.BIN breakpoint=0

           to break at address 0; or

           AmiArcadia SUPERBUG.BIN bp=$2000

           to break at address $2000 (8192).

           A code breakpoint is triggered when the Instruction Address
           Register (ie. program counter) is equal to the breakpoint
           address, before the instruction at that address is
           executed.

    FILE=<file>:
           a file to load at startup; this can be in any supported format.

    FRAMESKIP=1|2|3|4|5|6|7|8|9|10:
           frame skipping. 1 (the default) shows every frame, 2 shows
           every 2nd frame, 3 shows every 3rd frame, etc.

    MACHINE=ARCADIA|INTERTON|ELEKTOR:
           Emerson ARCADIA 2001, INTERTON VC 4000 or ELEKTOR TV Games
           Computer emulation.

    PORTNAME=<name>:
           ARexx port name to use (default is AMIARCADIA.1, AMIARCADIA.2,
           etc.).

    PRI=<pri>:
           priority for AmiArcadia to run at (-128 to 5, default is 0).

    PUBSCREEN=<screen>:
           the name of a public screen to open on (otherwise the default
           public screen is used).

    SETTINGS=<file>:
           the configuration file to use, for both loading and saving. The
           default is PROGDIR:AmiArcadia.config. Note that if you give a
           SETTINGS argument, the settings stored in the file override any
           other settings you might specify on the command line.

    SIZE=1|2|3:
           graphics scaling factor (only affects windowed mode).

    STARTUP=<file>:
           an ARexx script to run at startup. ".rexx" extension is
           assumed.

    WATCHPOINT|BP=<address>:
           data watchpoint to set. <address> is considered hexadecimal if
           it begins with '$', otherwise it is considered decimal.

           A data watchpoint is triggered before the contents of the
           specified address are accessed (whether by the CPU or by the
           UVI/PVI.).

           These accesses do not trigger the watchpoint:

           *   Writes to the location which do not alter its value (ie.
               rewriting the same value as was already there).
           *   The UVI/PVI's writing (resetting) of read-once locations
               after they have been accessed.
           *   Reads of the address by the UVI/PVI (in the course of
               rendering the display).
           *   Fetches of opcodes and operands by the CPU.

           Reads of the address by the CPU on behalf of a running program
           (eg. the LODA instruction) only trigger the watchpoint if
           "Watch reads?" is enabled.

    ANALOG, (for guest)
    AUTOFIRE,
    AUTOSAVE,
    COLLISIONS,
    DEMULTIPLEX,
    FLAGLINE,
    FULLSCREEN,
    JOY1,
    LOOP,
    PAUSED,
    POINTER,
    NARROW,
    SOUND,
    STRETCH, (IBM-PC only!)
    SWAPPED,
    TITLEBAR,
    WARP:   These can be specified as ON or OFF. See Menus for details.


CREDITS AND LICENCE--------------------

Credits

AmiArcadia and WinArcadia were written by James Jacobs of Amigan Software.

The Interton VC 4000 and Elektor TV Games Computer emulation is based on
work by Peter Trauner and Manfred Schneider. The networking subsystem
is based on work by Marat Fayzullin. The upper row of button gadgets
(AmiArcadia only) are from the AISS package, by Martin `Mason' Merz.
The MorphOS port was done by Stefan Haubenthal. The Italian translation
(AmiArcadia only) was done by Samir Hawamdeh. Special thanks to Charles
Eurich for compatibility testing, to Stefan Haubenthal for code
contributions and bug reports, to Luca Longone for bug reports, and to
Lucien Kleigkers for code contributions.

EMail:                  amigansoftware\@gmail.com

Amiga Developer Number: AD874

Websites:               http://amigan.1emu.net/releases/
                        http://amigan.classicgaming.gamespy.com/

Amigan Software run the world's largest EA2001/VC4000/TVGC site, "Emerson
Arcadia 2001 Central". ROMs, manuals, development tools, etc. are
available there.

Licence

AmiArcadia and WinArcadia are open source freeware. These are the
licence conditions:

    * you are not allowed to modify, and/or distribute, it for commercial
      purposes without consent;

    * any modified versions must be clearly marked as such, and not be
      misrepresented as being the original software;

    * you are not allowed to claim you wrote this software, or to remove
      or alter the existing credits (though you may append to them as
      appropriate);

    * you may distribute this unmodified executable either with or without
      the source code, at your discretion. (The official releases directly
      from Amigan Software - ie. those at our websites and on Aminet -
      will always include full source code.) However, modified versions
      must include the source code;

    * software into which code or algorithms are copied must be open
      source, and appropriate credit must be given;

    * there is no warranty on this software.

If you would like to become an official co-developer of this emulator,
please contact us. Ports of this emulator to other platforms are welcomed.

Bugs

Amiga development and style guidelines have been adhered to, using the
official Amiga Technical Reference Series as authoritive reference.

AmiArcadia has been tested successfully on a real Amiga 1200 with MC68060
running OS3.9, and also tested successfully (except for the non-fatal
WinUAE interactions with patches mentioned elsewhere) under various
versions of WinUAE.

Some MuForce hits were reported for AmiArcadia 2.22 (at least). The
reasons for these are unclear. They do not appear to cause any problems,
and the source code appears to be system-legal and bug-free. The BlowUp/
PatchWork/MungWall/IO_Torture combination does not reveal any problems.

You should check the Compatibility and Troubleshooting
sections, the Gaming Guides, and the manual of your game (if available) to
check whether a suspected bug in the emulator is genuine.

Please contact us immediately if any bugs are found. We suggest using
Report+ to generate bug reports (though this is optional); it is the
easiest method. Do not assume that the bug has already been reported by
another user; this is most unlikely. We always investigate and attempt to
fix any and all bugs reported, and will keep you appraised of the status
of the bug report.

Future

Support for emulation of other Signetics-based machines, eg. the
Signetics Instructor 50 and the Adaptable Board Computer, is desirable.
However, this is not yet possible due to the current lack of available
documentation and software for these machines. Please contact us if you
have any such documentation or software.

It is our intention to update AmiArcadia and WinArcadia as necessary to
improve the speed, compatibility, features and interface of the emulators.
In particular, compatibility and speed are suboptimal.

Contact us to suggest new features, or if you have information that can
help us to improve the emulation accuracy, or if you have ROM dumps/
manuals to contribute, or for bug reports, comments, suggestions and
requests.

Source code

SAS/C source code is provided. The source code of AmiArcadia 4.6 was
linted weakly with LCLint 2.2a+.

The program does not compile under StormC, due primarily to a compiler
bug involving large switch statements. The release binary was compiled
(and assembled and linked) with SAS/C 6.58. There is also some assembly
language used in the Amiga analog joystick routines.

The HunkShort utility (http://aminet.net/dev/misc/HunkShort.lha) is used
on the generated executable to reduce its size.

Worm Wars (Amiga, Windows, AROS)

Worm Wars is an arcade game for up to 4 players, who travel around a
series of rectangular mazes leaving a deadly trail behind them. There are
34 types of creature and 32 types of objects.

The integral field editor allows you to load, edit and save user
fieldsets, for greater lasting attraction. There is support for
playing MED and IFF 8SVX files as music and sound effects respectively.

It is enjoyable either for one player, or for competitive multiplayer
games, and demo mode is available. Amiga or human control can be specified
for any worm. Two keyboard players, four joystick players, and/or four
CD gamepad players are supported. It is system-friendly, style
compliant and screenmode-sensitive.

Report+ (Amiga)

Report+ is a freeware ReAction-based utility with nine functions:

 1. It is an enhanced, reverse-engineered, 100% byte-compatible
    replacement for the official Commodore bug reporting tool (40.2),
    optionally sending emails automatically.
 2. It can generate/edit Aminet-style readmes.
 3. It can check your OS3.9 installation (or any other path) for missing,
    surplus and/or outdated files.
 4. It can perform batch processing on icons.
 5. It can access the official manufacturer and product ID registries.
 6. It can view IFF FORMs and their component chunks.
 7. It can convert between various ASCII formats.
 8. It can show directory byte usage for any path, optionally also fixing
    protection bits.
 9. It can edit A3000/A4000-type battery-backed memory.

Saga (Amiga)

This is a conversion of the 1981 TSR boardgame "Saga: Age of Heroes", for
up to 6 players. Players can be controlled by human or Amiga.
  In Saga: Age of Heroes, players defeat evil monsters, win fabulous
treasures and rule great kingdoms in their quest to gain glory and be the
one hero whose memory will live on forever in the songs and stories of the
age.
  It is currently available in English and German. SAS/C and StormC source
code is included.

AmiArcadia (MorphOS)

This is the MorphOS port of AmiArcadia.

WinArcadia (Windows)

This is the acclaimed Windows version of AmiArcadia.

Africa (Amiga)

This is a conversion of the 1977 3W boardgame "Africa", for up to 5
players. Players can be controlled by human or Amiga. SAS/C and StormC
source code is included.

In this game each player takes the role of one of the powers attempting to
establish or maintain a sphere of influence in the southern half of the
African continent. By interfering in the economic stability and political
alliance of nations, and by subsidising them, the players attempt to
extend their political control of Africa, while diminishing the control
of their opponents.

There is the opportunity to set up governments in favour of the players,
encourage revolutions, start wars between the African nations and even
introduce armies of the player-powers into the continent.

Handy (Amiga, MorphOS)

This is the Amiga port of Handy 0.95. It emulates the Atari Lynx console.

Features: save screenshots, optional AHI sound, keyboard, joystick and
CD joypad support, source code, support for ZIPped games, load/save
snapshots, gameplay recording/playback.

Koules (Amiga, Windows)

These are the Amiga and Windows port of Koules 1.4, a popular arcade game
for Linux and OS/2.

Features: 1-5 players simultaneously, sound effects, triple keyboard and
double joystick support, source code.

Other Releases (Amiga)

We have also released, for example, popular character editors for these
games:

    * Bard's Tale 1-3
    * Demon's Winter
    * Faery Tale Adventure
    * Phantasie 1 & 3
    * Questron 2


HISTORY--------------------------------

6.01  [Amiga][Windows]:          Fri 25 Apr 2008.
    . Arcadia: support for ROMs up to 31K.
    . Miscellaneous improvements and bug fixes.

6.0   [Amiga][Windows]:          Fri 11 Apr 2008.

5.82  [Amiga][Windows]:          Sat  5 Apr 2008.
5.81  [Amiga][Windows]:          Mon 31 Mar 2008.
5.8   [Amiga][Windows]:          Fri 21 Mar 2008.
5.7   [Amiga][Windows]:          Thu  6 Mar 2008.
5.62  [Amiga][Windows]:          Wed 27 Feb 2008.
5.61  [Amiga][Windows]:          Wed 20 Feb 2008.
5.6   [Amiga][Windows]:          Mon 18 Feb 2008.
5.53  [Amiga][Windows]:          Wed 13 Feb 2008.
5.52  [Amiga][Windows]:          Mon 11 Feb 2008.
5.51  [Amiga][Windows]:          Wed  6 Feb 2008.
5.5   [Amiga][Windows]:          Mon  4 Feb 2008.
5.4   [Amiga][Windows]:          Fri 25 Jan 2008.
5.3   [Amiga][Windows]:          Fri 18 Jan 2008.
5.2   [Amiga][Windows]:          Fri 11 Jan 2008.
5.1   [Amiga][Windows]:          Sun 30 Dec 2007.
5.0   [Amiga][Windows]:          Fri 21 Dec 2007.

4.83  [Amiga][Windows]:          Sun 16 Dec 2007.
4.82  [Amiga][Windows]:          Tue 11 Dec 2007.
4.81  [Amiga][Windows][MorphOS]: Thu  6 Dec 2007.
4.8   [Amiga][Windows]:          Wed 28 Nov 2007.
4.75  [Amiga][Windows]:          Mon 19 Nov 2007.
4.74  [Amiga][Windows]:          Mon 12 Nov 2007.
4.73  [Amiga][Windows]:          Mon  5 Nov 2007.
4.72  [Amiga][Windows]:          Mon 29 Oct 2007.
4.71  [Amiga][Windows]:          Sun 21 Oct 2007.
4.7   [Amiga][Windows]:          Thu 18 Oct 2007.
4.62b [Amiga][Windows]:          Mon 15 Oct 2007.
4.62a [Amiga][Windows]:          Sun 14 Oct 2007.
4.62  [Amiga][Windows]:          Sat 13 Oct 2007.
4.61  [Amiga][Windows]:          Sun  7 Oct 2007.
4.6   [Amiga][Windows]:          Sat 29 Sep 2007.
4.57  [Amiga][Windows]:          Thu 27 Sep 2007.
4.56a        [Windows]:          Wed 19 Sep 2007.
4.56  [Amiga][Windows]:          Sat 15 Sep 2007.
4.55  [Amiga][Windows]:          Thu 13 Sep 2007.
4.54  [Amiga][Windows]:          Fri  7 Sep 2007.
4.53  [Amiga][Windows]:          Mon  3 Sep 2007.
4.52  [Amiga][Windows]:          Tue 28 Aug 2007.
4.51  [Amiga][Windows]:          Fri 24 Aug 2007.
4.5   [Amiga][Windows]:          Mon 20 Aug 2007.
4.4   [Amiga][Windows]:          Thu 16 Aug 2007.
4.32  [Amiga][Windows]:          Thu  2 Aug 2007.
4.31  [Amiga][Windows]:          Sat 21 Jul 2007.
4.3   [Amiga][Windows]:          Mon 16 Jul 2007.
4.27  [Amiga][Windows]:          Tue  3 Jul 2007.
4.26a [Amiga][Windows]:          Mon 25 Jun 2007.
4.26  [Amiga][Windows]:          Thu 14 Jun 2007.
4.25  [Amiga][Windows]:          Fri  1 Jun 2007.
4.24  [Amiga][Windows]:          Fri 25 May 2007.
4.23  [Amiga][Windows]:          Sat 19 May 2007.
4.22  [Amiga][Windows]:          Thu 17 May 2007.
4.21  [Amiga][Windows]:          Fri  4 May 2007.
4.2   [Amiga][Windows]:          Mon 30 Apr 2007.
4.11  [Amiga][Windows]:          Thu 19 Apr 2007.
4.1   [Amiga][Windows]:          Mon  9 Apr 2007.
4.02  [Amiga][Windows]:          Mon  2 Apr 2007.
4.01  [Amiga][Windows]:          Mon 26 Mar 2007.
4.0   [Amiga][Windows]:          Sun 11 Mar 2007.

3.1   [Amiga][Windows]:          Wed 28 Feb 2007.
3.02  [Amiga][Windows]:          Wed 21 Feb 2007.
3.01  [Amiga][Windows]:          Mon 12 Feb 2007.
3.0   [Amiga][Windows]:          Wed  7 Feb 2007.

2.31  [Amiga][Windows]:          Wed 10 Jan 2007.
2.3   [Amiga]:                   Tue 26 Dec 2006.
2.22  [Amiga]:                   Fri 22 Dec 2006.
2.21  [Amiga][Windows]:          Mon 18 Dec 2006.
2.2a  [Amiga][Windows]:          Tue  5 Dec 2006.
2.2   [Amiga][Windows]:          Thu 30 Nov 2006.
2.14a [Amiga]:                   Thu 23 Nov 2006.
2.14  [Amiga][Windows]:          Fri 10 Nov 2006.
2.13  [Amiga][Windows]:          Tue  7 Nov 2006.
2.12  [Amiga][Windows]:          Mon 23 Oct 2006.
2.11a [Amiga][Windows]:          Wed 18 Oct 2006.
2.11  [Amiga][Windows]:          Mon 16 Oct 2006.
2.1   [Amiga][Windows]:          Thu 12 Oct 2006.
2.01  [Amiga][Windows]:          Sun  1 Oct 2006.
2.0   [Amiga][Windows]:          Tue 26 Sep 2006.

1.63  [Amiga][Windows]:          Mon 11 Sep 2006.
1.62a [Amiga][Windows]:          Mon  4 Sep 2006.
1.62  [Amiga][Windows]:          Sun  3 Sep 2006.
1.61a [Amiga][Windows]:          Fri  1 Sep 2006.
1.61  [Amiga][Windows]:          Thu 31 Aug 2006.
1.6   [Amiga][Windows]:          Tue 22 Aug 2006.
1.51a        [Windows]:          Tue 15 Aug 2006.
1.51  [Amiga][Windows]:          Sun 13 Aug 2006.
1.5   [Amiga][Windows]:          Mon 31 Jul 2006.
1.4a  [Amiga][Windows]:          Mon 24 Jul 2006.
1.4   [Amiga][Windows]:          Wed  5 Jul 2006.
1.321        [Windows]:          Mon  3 Jul 2006.
1.32a [Amiga]:                   Fri 30 Jun 2006.
1.32  [Amiga][Windows]:          Wed 28 Jun 2006.
1.311        [Windows]:          Thu 22 Jun 2006.
1.31  [Amiga][Windows]:          Thu 15 Jun 2006.
1.3a         [Windows]:          Fri  9 Jun 2006.
1.3   [Amiga][Windows]:          Thu  8 Jun 2006.
1.21  [Amiga][Windows]:          Fri  7 Apr 2006.
1.2   [Amiga]:                   Sun  2 Apr 2006.
1.11  [Amiga]:                   Sun 19 Feb 2006.
1.1   [Amiga]:                   Fri 17 Feb 2006.
1.0   [Amiga]:                   Thu 16 Feb 2006.


TOOLBAR--------------------------------

The upper row of gadgets are:

      F5  RESET to game

 Amiga-O  Open (load) a BIN/EAS/EAR/INS/INR/PGM/TVC/TVS/TVR file.

 Amiga-S  Save snapshot...

 Amiga-_  Save screenshot as IFF ILBM...

 Amiga-.  Run ARexx script...

          FPS:          current frames per second. Strictly speaking, the
                        number of frames that were executed (not
                        necessarily drawn) during the last second. The
                        number of frames emulated will be the same as the
                        number of frames drawn except when (a) warp mode
                        and "limit refresh rate" are both on; or (b) frame
                        skipping is 2 or more.

The lower row of gadgets are:

Controller gadgets (orange):

      F6  ANALOG:       normally off.
     F10  AUTOFIRE:     normally off.
      F7  SWAPPED:      normally off.

Speed gadgets (cyan):

       P  PAUSED:       normally off.
      F8  WARP:         normally off.

Sprites gadgets (green):

 Amiga-L  COLLISIONS:   normally on.
 Amiga-D  DEMULTIPLEX:  normally off.

Graphics gadget (purple):

 Amiga-P  FLAGLINE:     normally on.

Audio gadget (yellow):

 Amiga-U  SOUND:        normally on.

Note that at in some modes (1x, or 2x + narrow), not all of these buttons
will be visible. You can shift-drag (left and) right over the toolbar to
scroll the other buttons into view.

 (none)   (none)        normally "stop". Macro status.  This is either
                        "stop" (blue square; neither recording nor playing
                        back), "play" (red triangle; playing back an EAR/
                        INR/TVR file) or "record" (red circle; recording
                        such a file).


MENU-----------------------------------

     Project  
     View     
     Macro    
     Debug    
     Log      
     Settings 
     Help     


PROJECT MENU---------------------------

    Project|Reset to game                     F5
    Project|Reset to monitor                  Amiga-,
    Project|Open...                           Amiga-O
    Project|Revert                            Amiga-`
    Project|Quickload snapshot                Amiga-4
    Project|Save BIN/PGM...                   Amiga-A
    Project|Save snapshot...                  Amiga-S
    Project|Save TVC...                       Amiga-\\
    Project|Quicksave snapshot                Amiga-5
    Project|Audit games                       (none)
    Project|Save screenshot as IFF ACBM...    (none)
    Project|Save screenshot as IFF ILBM...    Amiga-_
    Project|Save screenshot as BMP...         (none)
    Project|Act as server                     (none)
    Project|Connect as client...              (none)
    Project|Quit                              Amiga-Q, Esc

Menu:         Project|Open...
Shortcut:     Amiga-O (Amiga), Ctrl+O (IBM-PC)
CLI Argument: [FILE] <filename>
Debugger CLI: (none)
ARexx:        OPEN [<filename>]
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

.BIN files are raw ROM dumps of cartridges, for Arcadia or Interton. You
can of course load or save these as desired. The machine is automatically
reset when loading these.
  For known ROMs, and for all snapshots and recordings, the emulator will
configure itself automagically as the correct machine (if autosense is
enabled).
  For unknown ROMs, there is no reliable way to determine what machine it
it is intended for; therefore you should set "Options|Machine"
appropriately first.
  Note that changing to Arcadia also changes to NTSC, and that changing to
Interton or Elektor also changes to PAL.
  When emulating the Interton VC 4000, the emulator will automagically
reconfigure its memory as appropriate if a known ROM is detected (if
"sense game?" is yes). If an unknown ROM is loaded, or "sense game?"
is no, it configures itself as follows:

    BIN is 2048 bytes or less  2K       ROM + 0K cartridge RAM  (type "A")
    BIN is 2049-4096 bytes     4K       ROM + 1K cartridge RAM  (type "C")
    BIN is 4097 bytes or more  6K (5K) ROM + 1K cartridge RAM  (type "D")

See the source code and the Interton VC 4000 Coding Guide for more
details.

Menu:         Project|Quickload snapshot
Shortcut:     Amiga-4 (Amiga), Ctrl+4 (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

Quickload will attempt to load QUICKSAV.EAS|INS|TVS, depending on the
current machine. (Game information is never shown when quickloading a
snapshot, regardless of the current "Autosense?" setting.)

Menu:         Project|Save BIN/PGM...
Shortcut:     Amiga-A (Amiga), Ctrl+A (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

The PGM (ProGraM) format is as follows:

       $0           must be $00
       $1..   $2    loaded into $8BE.. $8BF (program start vector)
       $3.. $8BF    ignored
     $8C0+          loaded into $8C0+

PGM files must be 2140-8192 bytes in length. Code execution begins from
the address specified by the program start vector (typically $900 or
$8C0).

Menu:         Project|Save snapshot...
Shortcut:     Amiga-S (Amiga), Ctrl+S (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        SAVEAS [<filename>]
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

You can save a 'snapshot' (aka 'savestate') of the current state of the
emulator whenever desired, and then load it back as desired. This gives a
'load/save game' feature. (This is not to be confused with 'screenshots',
which are of course raster bitmap files.) You can drag and drop snapshot
files, load them at startup, etc.
  The formats used for these files are the same for both AmiArcadia and
WinArcadia; thus the files are interchangeable between platforms. The game
itself is stored inside the snapshot file so that the original BIN/PGM/TVC
file is no longer required.
  The "EAS" extension is used for Emerson Arcadia 2001 snapshots, the
"INS" extension is used for Interton VC 4000 snapshots and the "TVS"
extension is used for Elektor TV Games Computer snapshots.

Menu:         Project|Save TVC...
Shortcut:     Amiga-\\ (Amiga), Ctrl+\\ (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       Elektor only
Remembered?   No

The TVC (TVGC Cassette) format is as follows:

       $0           must be $02
       $1..   $2    load address (where to start loading the program)
       $3..   $4    loaded into $8BE.. $8BF (program start vector)
       $5+          loaded into load address and onwards

Note that some games (eg. ESS-010-9: Rocket Hunting) - specifically,
those that begin and/or end with one or more $00 bytes - do not save
correctly as TVC files, due to the way PGM files are converted to TVC
files.

Menu:         Project|Quicksave snapshot
Shortcut:     Amiga-5 (Amiga), Ctrl+5 (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

Quicksave will save a snapshot as QUICKSAV.EAS|INS|TVS, depending on the
current machine.

Menu:         Project|Audit games
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

This will refresh the emulator's audit list, which is displayed in the
sidebar. The user's preferred games directory is used. Subdirectories are
not supported. Only BIN/PGM/TVC files are supported. Unknown games are not
supported.

Menu:         Project|Act as server
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

Menu:         Project|Connect as client...
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

Unfortunately network play this does not seem to work properly for remote
play (ie. Internet), only for local play (ie. server and client both
running on the same host computer). It is intended to be used as follows:

    * both players load the emulator and load the desired game.
    * left player chooses "Act as server". (This also reveals the
      IP address of the left player.)
    * "Listening..." subwindow appears to left player. (Left player
      can stop listening by closing the subwindow or pressing any
      key. The main window will ignore all input during this time.)
    * right player chooses "Connect as client...".
    * right player enters the IP address of the left player.
    * connection is established, both games reset automatically.
    * play!

Resetting (except when this is done by the networking subsystem as the
connection is established) will drop the connection. The port used by
Ami/WinArcadia is 6666. Both players have access to the "console" keys
(START, A, B, soft RESET keys), and to their own controllers (left for
server, right for client). Editing memory while networked is not
recommended and will cause inconsistent results. Both players should have
the same options set (especially speed, collision detection, autosense and
"use compatibility hacks?").
  AmiArcadia and WinArcadia are of course compatible for this, so you
could use AmiArcadia for one player and WinArcadia for the other, if
desired.


VIEW MENU------------------------------

    View|Controls...                          Amiga-C
    View|Monitor...                           Amiga-M
    View|Cartridge RAM contents               (none)
    View|Motherboard RAM contents             (none)
    View|Screen contents                      (none)
    View|UDC/sprite imagery                   (none)
    View|UVI/PVI status                       (none)
    View|CPU status                           (none)
    View|PSGs status                          (none)
    View|ROM as imagery                       (none)
    View|Monitor RAM contents                 (none)
    View|All memory                           (none)
    View|Menubar?                             Ctrl+M
    View|Pointer?                             Amiga-X
    View|Titlebar?                            Amiga-B
    View|Toolbar?                             Ctrl+L
    View|Sidebar?                             Amiga-I
    View|Sort sidebar by|Game name            (none)
    View|Sort sidebar by|Machine              (none)

These commands send their output to stdout, thus you can redirect the
output when starting from CLI, eg.:

1> AmiArcadia >logfile

Menu:         View|Controls...
Shortcut:     Amiga-C (Amiga), Ctrl+C or F12 (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        OPENCONTROLS
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   No

    You can see an MPT-03 (for Arcadia), Interton VC 4000 (for Interton),
    or Elektor TV Games Computer (for Elektor) with the guest keys
    labelled. (Not available in full-screen mode on AmiArcadia.)
      This is a real-time controls display: it shows all input as
    perceived by the guest machine. When paused, the controls display will
    not change as the machine is not perceiving any input. Note that many
    games may not bother reading certain axes or paddles; this will
    result in the relevant paddle directions staying unlit, and is
    normal. For analog controllers, the relevant paddle directions are
    lit when the paddle position is extreme, not when the paddle is
    being "moved".
      Also, you can click with the left mouse button on the keypad/
    console buttons (but not the paddle directions or RESET button) as
    another method of input to the emulator.
      The Palladium x1-x4 keys are not included in the MPT-03 and are
    thus unsupported by the View|Controls... command.

Menu:         View|Monitor...
Shortcut:     Amiga-M (Amiga), F6 (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        OPENMONITOR
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   No

    You can see the real-time CPU/UVI/PVI/PSG/RAM monitor. Note that
    this is updated only once per frame or when pausing or after editing;
    this can give misleading results eg. when watching PnPADDLE for the
    Arcadia (in this case, the register is always $FF at the end of the
    frame).

Menu:         View|Cartridge RAM contents
Shortcut:     (none)
CLI Argument: n/a
Debugger CLI: CRAM
ARexx:        VIEW CRAM
Default:      n/a
Hosts:        Both
Guests:       Interton, types "C" and "D" only
Remembered?   n/a

    Shows the contents of the cartridge RAM (ie. RAM that is onboard the
    game cartridge). This is only available for modes "C" and "D" of the
    Interton VC 4000.

Menu:         View|Motherboard RAM contents
Shortcut:     (none)
CLI Argument: n/a
Debugger CLI: MRAM
ARexx:        VIEW MRAM
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Shows the contents of the motherboard RAM (ie. RAM that is built into
    the console/computer).

Menu:         View|Screen contents
Shortcut:     (none)
CLI Argument: n/a
Debugger CLI: SCRN
ARexx:        VIEW SCRN
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Shows the contents of the screen in a grid. For Arcadia, low-
    resolution games only display the upper half of this and may use the
    lower half as additional RAM.
      For Arcadia, the screen contents are also shown as text, according
    to the following table:

    $0123456789ABCDEF
     ----------------
$00:  /\\#bc_efghijklm    $00          : space
$10: 0123456789ABCDEF    $01-$0F (/-m): graphics characters
$20: GHIJKLMNOPQRSTUV    $38-$3B (n-q): sprites 0-3
$30: WXYZ.,+$nopqrstu    $3C-$3F (r-u): user defined characters 0-3

$00 ( ): ........ $01 (/)  .......# $02 (\\): #....... $03 (#): ########
         ........          ......#.          .#......          ########
         ........          .....#..          ..#.....          ########
         ........          ....#...          ...#....          ########
         ........          ...#....          ....#...          ########
         ........          ..#.....          .....#..          ########
         ........          .#......          ......#.          ########
         ........          #.......          .......#          ########

$04 (b): ######## $05 (c): ......## $06 (_): ........ $07 (e): ##......
         ########          ......##          ........          ##......
         ........          ......##          ........          ##......
         ........          ......##          ........          ##......
         ........          ......##          ........          ##......
         ........          ......##          ........          ##......
         ........          ......##          ########          ##......
         ........          ......##          ########          ##......

$08 (f): ######## $09 (g): ######## $0A (h): ##...... $0B (i): ......##
         ########          ########          ##......          ......##
         ......##          ##......          ##......          ......##
         ......##          ##......          ##......          ......##
         ......##          ##......          ##......          ......##
         ......##          ##......          ##......          ......##
         ......##          ##......          ########          ########
         ......##          ##......          ########          ########

$0C (j): .......# $0D (k): #....... $0E (l): ######## $0F (m): ########
         ......##          ##......          #######.          .#######
         .....###          ###.....          ######..          ..######
         ....####          ####....          #####...          ...#####
         ...#####          #####...          ####....          ....####
         ..######          ######..          ###.....          .....###
         .#######          #######.          ##......          ......##
         ########          ########          #.......          .......#

Menu:         View|UDC/sprite imagery
Shortcut:     (none)
CLI Argument: n/a
Debugger CLI: UDC
ARexx:        VIEW UDC
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Shows the graphics data for the 4 sprites (and the 4 user-defined
    characters, for the Emerson Arcadia 2001 only). '#' is a set pixel,
    '.' is a clear pixel.

Menu:         View|UVI/PVI status
Shortcut:     (none)
CLI Argument: n/a
Debugger CLI: UVI or PVI as appropriate
ARexx:        VIEW UVI or VIEW PVI as appropriate
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Shows the status of the 2637 UVI (Emerson Arcadia 2001) or 2636 PVI
    (Interton VC 4000 and Elektor TV Games Computer) coprocessor (aka
    GPU). Strictly speaking, the NOISE register ($1E80) of the Interton
    and (expanded) Elektor are separate to the PVI, but this is included
    for completeness.
       "Clock" is the number of "short" CPU "cycles" (ie. clock periods)
    executed since reset.
       "Raster" is the number of the rastline currently being "drawn". If
    calling this function between frames, this number will be extreme.
       "Frames" is the number of frames that have been emulated since
    reset.
       "Time" is the running time since reset, as viewed from the
    perspective of the guest machine. This figure is based only on the
    number of (complete) frames emulated since reset; thus it does not
    consider the amount of time elapsed since the start of the current
    frame. Natch, you will get different time figures in NTSC mode as
    compared with PAL mode, since the duration of a frame is longer in PAL
    mode. The machine is considered to have been in its current region
    since reset.

Menu:         View|CPU status
Shortcut:     (none)
CLI Argument: n/a
Debugger CLI: CPU
ARexx:        VIEW CPU
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Shows the status of the 2650 CPU processor.
      These bits in the PSU are shown individually:

    S   S     Sense
    F   F     Flag
    I   II    Interrupt Inhibit

    The Stack Pointer (SP) is also part of the PSU but is
    shown separately.
      Note also that interrupts are (apparently) not generated by the
    Arcadia, only by the Interton and Elektor.

    These bits in the PSL are shown individually:

    D   IDC   Inter Digit Carry
    R   RS    Register Select
    W   WC    With Carry
    O   OVF   OVerFlow
    M   COM   COMpare
    C   C     Carry

    The Condition Code (CC) is also part of the PSL but is shown
    separately.
      Only one letter is used for each bit. Uppercase means the bit is
    set, lowercase means it is clear.

Menu:         View|ROM as imagery
Shortcut:     (none)
CLI Argument: n/a
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Shows the entire game (and monitor ROM, in Elektor mode) in bitfield
    format. This assists in game disassembly. The output is formatted for
    use with the VACS assembler. Normally you will want to redirect the
    output to a file. By looking at the output you will be able to
    recognize the shapes of the sprite imagery (graphics data). '#' is a
    set pixel, '.' is a clear pixel.

Menu:         View|Monitor RAM contents
Shortcut:     (none)
CLI Argument: n/a
Debugger CLI: BRAM
ARexx:        VIEW BRAM
Default:      n/a
Hosts:        Both
Guests:       Elektor only
Remembered?   n/a

    Shows the $800..$8BF area (the monitor RAM). The contents are
    interpreted. For MONOB, '#' indicates that the relevant on-screen
    "character" does not match any ROM "character", and '' indicates
    that the relevant on-screen "character" matches a meaningless ROM
    "character".
      Note that the displayed values for R0..R6, PSU and PSL are for the
    copies kept in the monitor RAM; ie. they are not necessarily the
    current values of the real registers/PSU/PSL (you would use "View|CPU
    status" to see those). Likewise, MONOB and MLINE do not necessarily
    reflect what is currently displayed on the guest screen.

Menu:         View|All memory
Shortcut:     (none)
Debugger CLI: ALL
ARexx:        VIEW ALL
CLI Argument: n/a
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Shows the contents of $0000..$7FFF (ie. the entire address space) for
    Arcadia, or $0000..$1FFF for Interton/Elektor. This obeys mirroring
    rules.

Menu:         View|Menubar?
Shortcut:     Ctrl+M
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        IBM-PC only
Guests:       All
Remembered?   Yes

Menu:         View|Pointer?
Shortcut:     Amiga-X (Amiga), Ctrl+X (IBM-PC)
CLI Argument: POINTER=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        Both
Guests:       All
Remembered?   Yes

    Show mouse pointer on/off.

Menu:         View|Title bar?
Shortcut:     Amiga-B (Amiga), Ctrl+B (IBM-PC)
CLI Argument: TITLEBAR=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        Both
Guests:       All
Remembered?   Yes

    Amiga: Show screen titlebar on/off. This only affects full-screen
    mode.
      IBM-PC: Show window titlebar on/off.

Menu:         View|Toolbar?
Shortcut:     Ctrl+L
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        IBM-PC only
Guests:       All
Remembered?   Yes

Menu:         View|Sidebar?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   Yes

Whether the game selection sidebar is shown or not.

Menu:         View|Sort sidebar by
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      Game name
Hosts:        Both
Guests:       All
Remembered?   n/a

Controls the order of items displayed in the sidebar. You can sort by game
name or by (guest) machine.


MACRO MENU-----------------------------

    Macro|Start recording...                Amiga-R
    Macro|Restart playback                  Amiga-+
    Macro|Stop recording/playback           Amiga-T
    Macro|Loop playback?                    Amiga-Y
    Macro|Run ARexx script...               Amiga-.

Menu:         Macro|Start recording...
Shortcut:     Amiga-R (Amiga), Ctrl+R (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

You can save a 'recording' (aka 'history') of a gameplay session. This can
be played back (viewed) later. It is useful for high score attempts, game
demonstrations, etc. These files contain an embedded snapshot (and
therefore also an embedded ROM image) and the input data.
  The "EAR" extension is used for Emerson Arcadia 2001 recordings, the
"INR" extension is used for Interton VC 4000 recordings, and the "TVR"
extension is used for Elektor TV Games Computer recordings.
  To start recording, either click the "stop" button or choose the Macro|
Start Recording... menu item. Opening a BIN/EAS/EAR/INS/INR/PGM/TVS/TVR
file, resetting, quitting, saving, clicking the "record" button or
choosing the Macro|Stop Recording menu item will terminate the recording.
  To play back a recording, simply open the EAR (Emerson Arcadia 2001),
INR (Interton VC 4000) or TVR (Elektor TV Games Computer) file as you
would open a BIN/PGM/TVC/EAS/INS/TVS file; you can even drag and drop,
etc.

Menu:         Macro|Stop recording/playback
Shortcut:     Amiga-T (Amiga), Ctrl+T (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

Menu:         Macro|Loop playback?
Shortcut:     Amiga-Y (Amiga), Ctrl+Y (IBM-PC)
CLI Argument: LOOP=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        Both
Guests:       All
Remembered?   Yes

    When on, playback of macro recordings (ie. EAR/INR/TVR files) will
    loop to the beginning (and thus continue to play) when the end of the
    input is reached. When off, playback of macro recordings will stop
    when the end of the input is reached.


DEBUG MENU-----------------------------

    Debug|CLI...                              Amiga-9
    Debug|Edit register/memory...             Amiga-K
    Debug|Break/Continue                      P
    Debug|Run to next raster line             Amiga-!
    Debug|Run to raster line <n>...           Amiga-$
    Debug|Run to next DMA                     Amiga-\@
    Debug|Run to next interrupt               Amiga-%
    Debug|Run to next frame                   Amiga-#
    Debug|Step                                Amiga-Z
    Debug|Set code breakpoint...              Amiga-G
    Debug|Clear code breakpoint               Amiga-H
    Debug|Set data watchpoint...              Amiga-W
    Debug|Clear data watchpoint               Amiga-E
    Debug|Watch reads?                        (none)

These commands send their output to stdout, thus you can redirect the
output when starting from CLI, eg.:

    1> AmiArcadia >logfile

Menu:         Debug|CLI...
Shortcut:     Amiga-9 (Amiga), Ctrl+9 (IBM-PC)
CLI Argument: (none)
Debugger CLI: Q (to turn off)
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   No

    Enables the CLI (command line interface) to the debugger. This
    provides a MESS-like debugger interface via the keyboard. The prompt
    which indicates the debugger is ready to accept a command is ">". "H"
    will show a list of the available commands. Most of the commands
    available from this CLI are equivalent to their menu-based equivalents
    from the View and Debug menus.
      Note that the emulator GUI (eg. menus, toolbars) is disabled whilst
    the prompt is displayed. Executing this command automatically pauses
    the emulation (this interface is only usable whilst the emulation is
    paused). The CLI interface can be disabled either by reselecting (ie.
    unchecking) the "Debug|CLI..." command, or by issuing the "Q" (Quit)
    command via the debugger CLI.

Menu:         Edit memory/register...
Shortcut:     Amiga-K (Amiga), Ctrl+K (IBM-PC)
CLI Argument: (none)
Debugger CLI: E [<address> <value>]
ARexx:        POKE [ADDRESS] <address> [VALUE] <value>
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    You can edit (ie. poke) the contents of any address. You can use
    decimal (eg. 12345) or hexadecimal (eg. $1234) notation for the
    address and the desired new contents of that address. Giving PSL, PSU,
    IAR, RAS0..RAS7 or R0..R6 as the address will allow modification of
    those CPU registers. (SP and CC are modified by changes to PSU and
    the PSL, respectively.) You can also give mnemonics eg. PITCH,
    VOLUME, etc. as the address; these are translated automagically into
    the correct address (eg. $18FD, $18FE, etc.).
      The maximum address is of course 32767; the maximum desired new
    contents is 255, except for IAR and RASn where the maximum desired new
    contents is 32767. (Therefore, by adjusting the IAR, you can jump to
    another area of the code.) The minimum desired new contents is of
    course 0 in all cases.
      The reads/writes are not directed through the usual memory
    attribute/mirroring routines. This means, for example, that you can
    write (edit) the contents of addresses which are normally read-only
    (eg. ROM), and can read the contents of addresses which are normally
    write-only (eg. BGCOLOUR) (although such write-only addresses will
    still appear as $FF or whatever to running programs). Mirroring is not
    applied, eg. writing to location $1000 will not change the contents of
    location $1400, etc.
      Changes made to ROM will survive a reset operation, but not a revert
    or loop playback operation.Changes made to, for example, unmapped
    areas, or unused ROM areas, are not loaded/saved as part of BIN/EAS/
    EAR/INS/INR/TVS/TVR files. Files are always saved with the same size
    as they were loaded with (eg. if you "extend" a 2K ROM by adding more
    code/data to the end of it, extending it beyond 2K, only the first 2K
    is saved), except for PGM files (which are always saved as 8K) and
    TVC files (for which the emulator attempts an automagic detection of
    the start and end of the game, unsuccessfully in some situations).

Menu:         Debug|Break/Continue

Same as pause/unpause.

Menu:         Debug|Step
Shortcut:     Amiga-Z (Amiga), Ctrl+Z (IBM-PC)
CLI Argument: (none)
Debugger CLI: [S]
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Step forwards one CPU instruction. Note that some functions are
    disabled whilst stepping, as they are only designed for use between,
    not during, frames. Also note that CPU tracing is not automatically
    enabled.

Menu:         Debug|Ignore next instruction
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: I
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Ignores the next CPU instruction. This is effectively the same as
    stepping, except that the instruction is not actually executed. The
    clock is advanced as if the instruction had in fact been executed.

Menu:         Debug|Run to next raster line
Shortcut:     Amiga-! (Amiga), Ctrl+Shift+1 (IBM-PC)
CLI Argument: (none)
Debugger CLI: R R
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

    Runs until the start of the next raster line.
      Note that some functions are disabled whilst using this feature, as
    they are only designed for use between frames.

Menu:         Debug|Run to raster line <n>...
Shortcut:     Amiga-$ (Amiga), Ctrl+Shift+4 (IBM-PC)
CLI Argument: (none)
Debugger CLI: R [<number>]
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

    Runs until the start of the raster line you specify.
      Note that some functions are disabled whilst using this feature, as
    they are only designed for use between frames.

Menu:         Debug|Run to next DMA
Shortcut:     Amiga-\@ (Amiga), Ctrl+Shift+2 (IBM-PC)
CLI Argument: (none)
Debugger CLI: R D
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       Arcadia only
Remembered?   No

    Runs until the next change of DMA (ie. the next change of the CHARLINE
    register).
      Note that some functions are disabled whilst using this feature, as
    they are only designed for use between frames.

Menu:         Debug|Run to next interrupt
Shortcut:     Amiga-% (Amiga), Ctrl+Shift+5 (IBM-PC)
CLI Argument: (none)
Debugger CLI: R I
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       Elektor and Interton
Remembered?   No

    Runs until the next interrupt is generated. Interrupts which are
    suppressed (ie. the Interrupt Inhibit bit is set at the time) are
    of course ignored.
      Note that some functions are disabled whilst using this feature, as
    they are only designed for use between frames.

Menu:         Debug|Run to next frame
Shortcut:     Amiga-# (Amiga), Ctrl+Shift+3 (IBM-PC)
CLI Argument: (none)
Debugger CLI: R F
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   No

    Runs until the start of the next frame.

Menu:         Debug|Set code breakpoint...
Shortcut:     Amiga-G (Amiga), Ctrl+G (IBM-PC)
CLI Argument: (none)
Debugger CLI: BP [<address>]
ARexx:        (none)
Default:      None
Hosts:        Both
Guests:       All
Remembered?   No

    Allows you to interactively set or change the code breakpoint. You can
    specify it as hexadecimal or decimal; the other gadget will
    automatically update correspondingly.

Menu:         Debug|Clear code breakpoint
Shortcut:     Amiga-H (Amiga), Ctrl+H (IBM-PC)
CLI Argument: (none)
Debugger CLI: BC
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Clears the code breakpoint.

Menu:         Debug|Set data watchpoint...
Shortcut:     Amiga-W (Amiga), Ctrl+W (IBM-PC)
CLI Argument: (none)
Debugger CLI: WP [<address>]
ARexx:        (none)
Default:      None
Hosts:        Both
Guests:       All
Remembered?   No

    Allows you to interactively set or change the data watchpoint. You can
    specify it as hexadecimal or decimal; the other gadget will
    automatically update correspondingly.

Menu:         Debug|Clear data watchpoint
Shortcut:     Amiga-E (Amiga), Ctrl+E (IBM-PC)
CLI Argument: (none)
Debugger CLI: WC
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Clears the data watchpoint.

Menu:         Debug|Watch reads?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: WR
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   No

    If on, reads by the CPU (only) of the data watchpoint trigger the
    watchpoint.

You can use the debugger commands either via the menus or via a keyboard-
based command line interface (CLI) (ie. a console).

Note that the I/O area, and the input and output lines, of the Elektor TV
Games Computer, are (arbitrarily) considered to be unreadable and
unwritable; thus, such accesses will be reported as illegal reads/writes.

When the emulator breaks for the "Run to" commands, and for breakpoints/
watchpoints, the leftmost pixel of the current rastline is complemented,
as a visual aid. Eg. if you do "Run to raster line 50", the leftmost pixel
on rastline 50 will be complemented when the emulator breaks.

The emulator is also able to generate "profile" reports, which indicate
the number of times each different type of opcode has been executed
since reset, and the cycles used therein. Such reports are not generally
very useful.

It can also generate "coverage" reports, which indicate which
bytes have been executed/read/written/etc. since reset. This is useful for
detecting self-modifying code, and also the functions of various parts of
the game. (Eg. if you load a game and then do a coverage report before
starting to play it, you will be able to see what areas of the code are
used for initialization and drawing of the title screen.)

If you want to generate these reports, you must recompile with PROFILE
and/or COVERAGE #defined, as they do slow down the emulation slightly. See
the source code for more information.


LOG MENU-------------------------------

      Log|Trace CPU?                          Backspace
    Debug|EPROM accesses?                     (none)
    Debug|Illegal instructions?               (none)
    Debug|Illegal reads/writes?               (none)
    Debug|Monitor calls?                      (none)
    Debug|Subroutine calls/returns?           (none)

These commands send their output to stdout, thus you can redirect the
output when starting from CLI, eg.:

    1> AmiArcadia >logfile

None of these options change the actual behaviour of the emulator, only
what is printed to stdout.

Menu:         Log|Trace CPU?
Shortcut:     Backspace (Amiga), Ctrl+Backspace (IBM-PC)
CLI Argument: (none)
Debugger CLI: T
ARexx:        TRACE ON|OFF
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   No

    Toggles on/off real-time tracing (ie. disassembly) of the code being
    executed. The state of the CPU is also shown between each instruction.
    Of course enabling this will slow down the emulation severely.

Menu:         Log|EPROM accesses?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: LE
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       Expanded Elektor only
Remembered?   No

    When enabled, each read/or write to an EPROM area will cause a message
    to be printed.

Menu:         Log|Illegal instructions?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: LI
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   No

    When enabled, execution of opcodes that are undefined ($10, $11, $90,
    $91, $B6, $B7, $C4..$C7), indeterminate (LODZ r0), or strange (REDx,
    WRTx, and, for Emerson Arcadia 2001, RETE) will cause a message to be
    printed.
      Additionally, overflows and underflows of the Return Address Stack
    (RAS) will cause a message to be printed.

Menu:         Log|Illegal reads/writes?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: LR|LW
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   No

    When enabled, read and writes of memory locations which are read-only
    or write-only (as appropriate), mirrored or unmapped will cause a
    message to be printed.
      Some accesses can generate two violations. For example (Emerson
    Arcadia 2001): reading address $1300 will log a mirrored read
    violation; then, when the access has been translated to $1B00, it will
    log an unmapped read violation.

Menu:         Log|Monitor calls?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: LM
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       Elektor only
Remembered?   No

    When enabled, each transfer of control (ie. branch) to the monitor ROM
    (except when caused by an interrupt) will cause a message to be
    printed.

Menu:         Log|Subroutine calls/returns?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: LS
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   No

    When enabled, each subroutine branch (including interrupts), and each
    return from a subroutine (or interrupt), will cause a message to be
    printed. This is useful for ascertaining the calling structure and
    code organization of a game. The messages are indented by a number of
    spaces equal to the level of the Return Address Stack (RAS).


MNEMONIC REGISTERS---------------------

When setting breakpoints and watchpoints, and editing memory, you can use
these mnemonic UVI/PVI/PSG/ROM/RAM register names instead of the raw
decimal or hexadecimal addresses:

    EA2001 (UVI):            TVGC (ROM code, ROM data):

    SPRITE0Y      = $18F0    RESET         =    $0 (start of ROM code)
    SPRITE0X      = $18F1    INTRR         =    $3
    SPRITE1Y      = $18F2    BVEC1         =    $6
    SPRITE1X      = $18F3    BVEC2         =    $8
    SPRITE2Y      = $18F4    START         =    $A
    SPRITE2X      = $18F5    INIT0         =   $23
    SPRITE3Y      = $18F6    INIT1         =   $28
    SPRITE3X      = $18F7    START1        =   $38
    VSCROLL       = $18FC    MWAIT0        =   $45
    PITCH         = $18FD    MWAIT1        =   $47
    VOLUME        = $18FE    MONINT        =   $4B
    CHARLINE      = $18FF    FREFR0        =   $4E
    P1LEFTKEYS    = $1900    FREEF1        =   $57
    P1MIDDLEKEYS  = $1901    FILELN        =   $71
    P1RIGHTKEYS   = $1902    FREFR1        =   $77
    P1PALLADIUM   = $1903    FREFR2        =   $7A
    P2LEFTKEYS    = $1904    MPOBJ1        =   $AD
    P2MIDDLEKEYS  = $1905    MPOBJ2        =   $B1
    P2RIGHTKEYS   = $1906    MPOBJ3        =   $B5
    P2PALLADIUM   = $1907    MPOBJ4        =   $B9
    CONSOLE       = $1908    MKEY          =   $BD
    RESOLUTION    = $19F8    MKEY1         =   $CA
    BGCOLOUR      = $19F9    MKEY2         =   $CD
    SPRITES23CTRL = $19FA    MKEYR         =   $D4
    SPRITES01CTRL = $19FB    MKEY3         =   $DE
    BGCOLLIDE     = $19FC    MKEY5         =   $EF
    SPRITECOLLIDE = $19FD    MKEY6         =   $FD
    P2PADDLE      = $19FE    FNOP          =  $10C
    P1PADDLE      = $19FF    FMEM          =  $10D
                             FBK           =  $110
    VC4000/TVGC (PVI):       FREG          =  $113
                             FINIT         =  $116
    NOISE         = $1E80    FPC           =  $119
    P1LEFTKEYS    = $1E88    FRC           =  $11C
    P1MIDDLEKEYS  = $1E89    FWC           =  $11F
    P1RIGHTKEYS   = $1E8A    KBFTBL        =  $122
    CONSOLE       = $1E8B    SAVE          =  $13E
    P2LEFTKEYS    = $1E8C    SAVE1         =  $161
    P2MIDDLEKEYS  = $1E8D    CLROBJ        =  $16E
    P2RIGHTKEYS   = $1E8E    PVIPAR        =  $177
    SPRITE0AX     = $1F0A    KBSCAN        =  $181
    SPRITE0BX     = $1F0B    KBSC0         =  $18A
    SPRITE0AY     = $1F0C    KBSC12        =  $193
    SPRITE0BY     = $1F0D    IA00          =  $195
    SPRITE1AX     = $1F1A    IA01          =  $198
    SPRITE1BX     = $1F1B    IA02          =  $19B
    SPRITE1AY     = $1F1C    IA03          =  $1A0
    SPRITE1BY     = $1F1D    IA04          =  $1A3
    SPRITE2AX     = $1F2A    KBSC5         =  $1B6
    SPRITE2BX     = $1F2B    KBSC6         =  $1B8
    SPRITE2AY     = $1F2C    KBSC7         =  $1BD
    SPRITE2BY     = $1F2D    KBSC1         =  $1C0
    SPRITE3AX     = $1F4A    KBSC2         =  $1C3
    SPRITE3BX     = $1F4B    KBSC3         =  $1CF
    SPRITE3AY     = $1F4C    KBSC8         =  $1D9
    SPRITE3BY     = $1F4D    KBSC11        =  $1DC
    HORIZ1        = $1FA8    KBSC10        =  $1DF
    HORIZ2        = $1FA9    KBSC4         =  $1E3
    HORIZ3        = $1FAA    KBSC9         =  $1E9
    HORIZ4        = $1FAB    KBSBR         =  $1EE
    HORIZ5        = $1FAC    KBSBR0        =  $1F4
    PITCH         = $1FC7    KBSBR4        =  $1FB
    SIZES         = $1FC0    KBSBR2        =  $1FD
    SPR01COLOURS  = $1FC1    KBSBR1        =  $1FF
    SPR23COLOURS  = $1FC2    LINE          =  $20E
    SCORECTRL     = $1FC3    LINE2         =  $212
    BGCOLOUR      = $1FC6    LINE07        =  $21E
    SCORELT       = $1FC8    LINE6         =  $234
    SCORERT       = $1FC9    LINE7         =  $23A
    BGCOLLIDE     = $1FCA    LINE8         =  $23C
    SPRITECOLLIDE = $1FCB    CHARPS        =  $24B
    P1PADDLE      = $1FCC    LINE05        =  $255
    P2PADDLE      = $1FCD    LINE09        =  $25B
                             LINE06        =  $25F
    Expanded TVGC (PSGs):    IMGTBL        =  $27B
                             SCROLL        =  $2CF
    PITCHA1_L     = $1D00    SCROL1        =  $2D1
    PITCHA1_H     = $1D01    SCROL3        =  $2D9
    PITCHB1_L     = $1D02    SCROL4        =  $2DB
    PITCHB1_H     = $1D03    NEWMES        =  $2E3
    PITCHC1_L     = $1D04    MESSAG        =  $2EA
    PITCHC1_H     = $1D05    MESSL         =  $2F5
    PITCHD1       = $1D06    ASMDAT        =  $31D
    ENABLE1       = $1D07    ASSMC         =  $328
    AMPLITUDEA1   = $1D08    ASSMC1        =  $332
    AMPLITUDEB1   = $1D09    STRDAT        =  $339
    AMPLITUDEC1   = $1D0A    RESDAT        =  $340
    PERIOD1_L     = $1D0B    LOADAT        =  $346
    PERIOD1_H     = $1D0C    OUTADD        =  $34E
    SHAPE1        = $1D0D    OUTADR        =  $350
    PORTA1        = $1D0E    OUTBYT        =  $354
    PORTB1        = $1D0F    NIBL          =  $35E
    PITCHA2_L     = $1D10    OUTNAD        =  $368
    PITCHA2_H     = $1D11    OUTADS        =  $36C
    PITCHB2_L     = $1D12    SPACES        =  $377
    PITCHB2_H     = $1D13    STDATA        =  $381
    PITCHC2_L     = $1D14    STDAT1        =  $392
    PITCHC2_H     = $1D15    STDAT2        =  $39B
    PITCHD2       = $1D16    INCADR        =  $39F
    ENABLE2       = $1D17    REG01         =  $3B0
    AMPLITUDEA2   = $1D18    REG1          =  $3B8
    AMPLITUDEB2   = $1D19    REG7          =  $3D1
    AMPLITUDEC2   = $1D1A    REG2          =  $3D6
    PERIOD2_L     = $1D1B    IAREG         =  $3DB
    PERIOD2_H     = $1D1C    REG3          =  $3E0
    SHAPE2        = $1D1D    REG4          =  $3F4
    PORTA2        = $1D1E    REG5          =  $400
    PORTB2        = $1D1F    MEM0          =  $40C
                             MEM1          =  $415
                             MEM2          =  $41C
                             MEM3          =  $42E
                             MEM4          =  $43E
                             MEM7          =  $44D
                             MEM9          =  $452
                             MEM8          =  $465
                             MEM5          =  $467
                             MEM6          =  $46A
                             MEMFS3        =  $47D
                             MEMBYT        =  $480
                             MEMLIN        =  $483
                             MEMFS7        =  $486
                             FMEM1         =  $495
                             FMEM3         =  $499
                             FMEM2         =  $4A2
                             BKSC          =  $4A9
                             FBK1          =  $4C3
                             FBK2          =  $4CB
                             FBK3          =  $4D1
                             IABK          =  $4D6
                             FBK4          =  $4DB
                             FBK5          =  $4DD
                             FBK20         =  $4F5
                             FBK21         =  $50A
                             GO0           =  $50E
                             GO4           =  $515
                             GO3           =  $529
                             GOLIN         =  $52C
                             GO1           =  $52F
                             GO2           =  $532
                             ZBRR1         =  $537
                             ZBRR2         =  $539
                             UMODE         =  $53B
                             STRTUP        =  $540
                             BREAK1        =  $594
                             BREAKM        =  $5A4
                             BREAK2        =  $5B2
                             PCEQBK        =  $5C4
                             BRKSBR        =  $5CD
                             BRKSB1        =  $5E0
                             WCAS0         =  $5E8
                             WCAS1         =  $5F3
                             WCAS2         =  $5F7
                             WCAS3         =  $602
                             WCALIN        =  $605
                             WCAS4         =  $608
                             WCAS6         =  $610
                             WCAS2A        =  $626
                             WCAS7         =  $628
                             WCAS8         =  $63C
                             WCASF1        =  $642
                             WCAS9         =  $64A
                             BLOCK         =  $655
                             WCASB         =  $671
                             WCAS10        =  $681
                             IBOUT         =  $690
                             WCAS11        =  $699
                             WCAS12        =  $6A4
                             WCAS13        =  $6B8
                             BOUT          =  $6D0
                             COUT          =  $6D3
                             COUT1         =  $6DA
                             COUT2         =  $6E1
                             COUT3         =  $6E3
                             ONE           =  $6EA
                             ZERO          =  $6EE
                             DELAY         =  $6F2
                             PULSE         =  $6F7
                             CHIN          =  $709
                             CHI1          =  $70D
                             CHI2          =  $710
                             CHI3          =  $712
                             CHI4          =  $71B
                             CBCC          =  $726
                             RBIT          =  $731
                             RBIT1         =  $734
                             RBIT2         =  $739
                             RBIT3         =  $73B
                             RBIT4         =  $73D
                             RBIT5         =  $747
                             RCAS0         =  $758
                             RCAS7         =  $764
                             CHLINE        =  $76A
                             CHLIN1        =  $76D
                             RCAS8         =  $774
                             RCAS2         =  $778
                             RCAS1         =  $788
                             ICHIN1        =  $797
                             IOBJA         =  $79E
                             RCAS3         =  $7A8
                             RCAS4         =  $7B0
                             RCAS9         =  $7CE
                             ICHIN         =  $7D1
                             RCAS5         =  $7D9
                             RCAS6         =  $7EE
                             RCASER        =  $7F4
                             MONOB         =  $800 (start of ROM data)
                             MLINE         =  $890
                             FSEQ          =  $898
                             SILENC        =  $898
                             ENTM          =  $899
                             MFUNC         =  $89A
                             MSCR          =  $89B
                             RKBST         =  $89D
                             LKBST         =  $89E
                             MKBST         =  $89F
                             FSCRM         =  $8A0
                             REGM          =  $8AC
                             BK1           =  $8B5
                             BK2           =  $8B7
                             INTADR        =  $8B9
                             PC            =  $8BE

When emulating the basic Elektor TV Games Computer, you can still use the
mnemonic names for NOISE and for the various PSG registers, but the
expected sound hardware will of course not be present.


SETTINGS MENU--------------------------

    Settings|Controllers|Analog for guest?    Amiga-/
    Settings|Controllers|Analog for host?     (none)
    Settings|Controllers|Sensitivity...       (none)
    Settings|Controllers|Autofire?            Amiga-0
    Settings|Controllers|Autofire requires    (none)
                         firebutton?
    Settings|Controllers|Enable joystick 1?   Amiga-J
    Settings|Controllers|Redefine keys...     Amiga-*
    Settings|Controllers|Swapped?             F7
    Settings|Graphics|1x size?                Amiga-1
    Settings|Graphics|2x size?                Amiga-2
    Settings|Graphics|3x size?                Amiga-3
    Settings|Graphics|Full screen?            F9
    Settings|Graphics|Narrow?                 Amiga-N
     Options|Graphics|Stretch to fit?         Ctrl+F
    Settings|Graphics|Flag line emulation?    Amiga-P
    Settings|Graphics|Frame skipping...       Amiga-F
    Settings|Machine|Emerson Arcadia 2001     Amiga-6
    Settings|Machine|Interton VC 4000         Amiga-7
    Settings|Machine|Elektor TV Games         Amiga-8
                     Computer
    Settings|Machine|Use compatibility hacks? (none)
    Settings|Machine|Swap loader/saver EPROMs (none)
    Settings|Speed|Paused?                    P
    Settings|Speed|NTSC?                      Amiga-[
    Settings|Speed|PAL?                       Amiga-]
    Settings|Speed|Warp?                      F8
    Settings|Speed|Limit refresh rate?        (none)
    Settings|Sprites|Collisions?              Amiga-L
    Settings|Sprites|Demultiplex?             Amiga-M
    Settings|Sound|Enabled?                   Amiga-U
    Settings|Sound|Filtered?                  (none)
    Settings|Sound|Volume...                  (none)
    Settings|Autosave?                        (none)
    Settings|Sense game?|Yes, verbose         (none)
    Settings|Sense game?|Yes, quiet           (none)
    Settings|Sense game?|No                   (none)
    Settings|Create icons?                    Amiga-I

Menu:         Settings|Controllers|Analog for guest?
Shortcut:     F6 (Amiga), Ctrl+F6 (IBM-PC)
CLI Argument: ANALOG=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   Yes

    Analog control for guest (ie. for the EA2001/VC4000/TVGC, not for the
    Amiga/IBM-PC). Off is digital, on is analog.
      This setting is automagically adjusted when loading a known ROM.

Menu:         Settings|Controllers|Analog for host?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        Amiga only
Guests:       All
Remembered?   Yes

   On the Amiga, you can use digital or analog joysticks (or paddles). (On
   the IBM-PC, you must use analog joysticks (or paddles).) Input from the
   keyboard and any gamepads is unaffected.

Menu:         Settings|Controllers|Sensitivity...
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      Medium
Hosts:        Both
Guests:       All
Remembered?   Yes

   This can be very low, low, medium, high or very high. It is only
   relevant when using analog controls for guest with digital controls
   (keyboard, gamepad or digital joystick) on host.
      This setting is automagically adjusted when loading a known ROM.

Menu:         Settings|Controllers|Autofire?
Shortcut:     F10
CLI Argument: AUTOFIRE=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   Yes

    Autofire on the primary firebuttons of both players. If "sense
    game?" is yes and the game is known, the primary firebutton, on/off
    setting and rate are automagically adjusted upon loading.

Menu:         Settings|Controllers|Autofire requires firebutton?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   Yes

   If on, the autofire is only engaged whilst the primary firebutton is
   held down. If off, the autofire is always engaged. Of course, this
   setting is meaningless when autofire is off.

Menu:         Settings|Controllers|Enable 1st joystick?
Shortcut:     Ctrl+Shift+9
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        IBM-PC only
Guests:       All
Remembered?   Yes

   Enables the primary joystick. This is normally assigned to the left
   player.

Menu:         Settings|Controllers|Enable joystick/gamepad 1? (Amiga),
              Settings|Controllers|Enable 2nd joystick? (IBM-PC)
Shortcut:     Amiga-J (Amiga),
              Ctrl+Shift+0 (IBM-PC)
CLI Argument: JOY1=ON|OFF (Amiga),
              (none) (IBM-PC)
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   Yes

   For AmiArcadia, enables the joystick/gamepad in port 1 (the mouse
   port). For WinArcadia, enables the secondary joystick. This is
   normally assigned to the right player.

Menu:         Settings|Controllers|Redefine keys...
Shortcut:     Amiga-* (Amiga), Ctrl+Shift+8 (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      See Controllers
Hosts:        Both
Guests:       All
Remembered?   Yes

    You can redefine the keyboard. (Keys which are present on both the
    alphanumeric keypad and the numeric keypad are distinguished with a
    preceding "a" (alphanumeric) or "n" (numeric), respectively. Eg.
    alphanumeric 1 is shown as "a1", and numeric 1 is shown as "n1".) Key
    redefinitions are loaded and saved as part of the configuration file.
    The bottom "keys" are the four "firebuttons", which are mapped to
    other arbitrary guest buttons by the autosensing subsystem. The
    emulator GUI keys cannot be altered. Some keys cannot be used for
    redefinitions (for AmiArcadia, these are Esc, F5..F10, Right Amiga, ;,
    ', P, Caps Lock; for WinArcadia, these are Esc, F5..F10, F12, Alt
    keys, Windows keys, Menu key).
      Note that only the host keyboard controls can be remapped; host
    joysticks/gamepads are not remappable.
      There are some supplied example configuration files, which you can
    use with the SETTINGS CLI argument:

    Dictionary.config/DICTIONA.CFG:
      allows standard QWERTY keyboard mappings for the Arcadia Dictionary
      (Video-Lexikon) application.
    Monitor.config/MONITOR.CFG:
      allows standard QWERTY keyboard mappings for the built-in Elektor
      monitor ROM.
    X-Arcade.config/X-ARCADE.CFG:
      mappings for use of an X-Arcade "joystick".
    10-1x.config/10-1X.CFG:
      allows standard QWERTY keyboard mappings for the Elektor
      ESS-010-1x: Change Words for Hangman application.

Menu:         Settings|Controllers|Swapped?
Shortcut:     F7
CLI Argument: SWAPPED=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   Yes

   Swaps the left and right controls (for keyboards and real joysticks/
   gamepads), so that you could play with the other set of keys for
   example.
     This setting is automagically adjusted when loading a known ROM, so
   that the "only" or "first" player always uses the left controller.

Menu:         Settings|Graphics|1x size?
              Settings|Graphics|2x size?
              Settings|Graphics|3x size?
Shortcut:     Amiga-1|2|3 (Amiga), Ctrl+1|2|3 or Ctrl|F1|F2|F3 (IBM-PC)
CLI Argument: SIZE=1|2|3
Debugger CLI: (none)
ARexx:        (none)
Default:      Depends on host resolution
Hosts:        Both
Guests:       All
Remembered?   Yes

    1x-3x graphic scaling to enlarge the display. This only affects
    windowed mode.

Menu:         Settings|Graphics|Narrow mode?
Shortcut:     Amiga-N (Amiga), Ctrl+N (IBM-PC)
CLI Argument: NARROW=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   Yes

    When off, graphics are wider horizontally (2:1 pixel ratio). When on,
    graphics are narrower horizontally (1:1 pixel ratio).

Menu:         Options|Graphics|Stretch to fit?
Shortcut:     Ctrl+F
CLI Argument: STRETCH=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        IBM-PC only
Guests:       All
Remembered?   Yes

    This setting only affects full-screen mode. When off, the guest
    screen is centred on the host screen and there is a grey border around
    it. When on, the guest screen is stretched to fill the host screen.

Menu:         Settings|Graphics|Flag line emulation?
Shortcut:     Amiga-N (Amiga), Ctrl+N (IBM-PC)
CLI Argument: NARROW=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   Yes

    For Arcadia, this toggles whether or not the Flag pin in the PSU
    inverts the output colours. (Some Arcadia console family members, such
    as the Emerson, do not have this pin connected, whereas others, such as
    the MPT-03 and Palladium VCG, do.)
      For Interton/Elektor, this toggles whether or not the background and
    grid are drawn in halfbrite colours (on), or fullbrite colours (off).
    (Some Interton console family members, such as the Interton itself,
    use halfbrite mode, but others, such as the Fountain, use fullbrite
    mode.)
      This setting is automagically adjusted when loading a known ROM.

Menu:         Settings|Graphics|Frame skipping...
Shortcut:     Amiga-F (Amiga), none (IBM-PC)
CLI Argument: FRAMESKIP=1|2|3|4|5|6|7|8|9|10
Debugger CLI: (none)
ARexx:        (none)
Default:      1
Hosts:        Both
Guests:       All
Remembered?   Yes

    1 shows every frame, 2 shows every 2nd frame, 3 shows every 3rd frame,
    etc. This has no effect in warp mode if "limit refresh rate" is
    enabled. Note that frame skipping can have some undesired
    synchronicity effects with games which perform multiplexing. Enabling
    demultiplexing can sometimes help with this problem.

Menu:         Settings|Machine|Use compatibility hacks?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        Both
Guests:       Interton and Elektor only
Remembered?   Yes

    If on, the emulator adjusts its behaviour for certain known games;
    this improves the apparent compatibility. (Although conceivably the
    unhacked behaviour could be more correct, as we are unable to test
    these games on the real hardware.) "Sense game?" must be yes. Changing
    this setting only affects games loaded in the future, not the game
    currently in memory.

Menu:         Settings|Machine|Swap loader/saver EPROMs
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      Loader
Hosts:        Both
Guests:       Expanded Elektor only
Remembered?   No

    The Rapid Loading Games (RLG) "loading" (ie. EPROM to RAM) and
    "saving" (ie. RAM to EPROM) routines occupy the same address ranges
    in memory. One EPROM chip contains the "loading" routine, and another
    contains the "saving" routine. There is only one appropriate socket
    for these two chips; therefore the desired chip must be "plugged into"
    the socket.
      This command "removes" the current chip and "plugs in" the other
    one. Eg. if the loader is plugged in, the loader will be removed and
    the saver will be plugged in instead.

Menu:         Settings|Speed|Paused?
              Debug|Break/Continue
Shortcut:     P (Amiga), Pause (IBM-PC)
CLI Argument: PAUSED=ON|OFF
Debugger CLI: G (to unpause)
ARexx:        PAUSE and UNPAUSE
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   Yes

    If the debugger CLI is enabled, control goes to it; otherwise control
    goes to the menus/toolbars.
      Changes to graphics options may not be shown until the machine is
    unpaused. When CPU tracing is off, you can only pause between frames.

Menu:         Settings|Speed|NTSC?
              Settings|Speed|PAL?
Shortcut:     Amiga-[|] (Amiga), Ctrl+[|] (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      NTSC for Arcadia, PAL for Interton and Elektor
Hosts:        Both
Guests:       All
Remembered?   Yes

    NTSC (60 FPS) (Amiga-[) or PAL (50 FPS) (Amiga-]) mode. Note that this
    merely changes the real speed at which the emulator runs; it does not
    change the emulation timings or graphics modes in any way (ie. there
    is no difference that is detectable to games running in the emulator).
      This setting has no effect  in warp mode, except that it determines
    the refresh rate when the refresh rate is limited.

Menu:         Settings|Speed|Warp mode?
Shortcut:     F8
CLI Argument: WARP=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   Yes

    When off, emulation speed is limited to 50 (PAL) or 60 (NTSC)
    frames per second. When on, the emulator runs as fast as possible.

Menu:         Settings|Speed|Limit refresh rate?
Shortcut:     (none)
CLI Argument: LIMITREFRESH=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      Off
Hosts:        Both
Guests:       All
Remembered?   Yes

    You can limit the screen refresh rate, for even faster emulation on a
    fast computer. This only has an effect in warp mode (and only, of
    course, if your computer can exceed an emulation and display rate of
    50/60 FPS).
      When the refresh rate is not limited (the default), the emulator
    draws (refreshes) every frame that it executes (assuming frame
    skipping is not in use).
      When the refresh rate is limited, the emulator only draws the
    display 60 (NTSC) or 50 (PAL) times per second at most.
      Limiting the rate thus allows even faster emulation at the cost of
    some visual smoothness.
      The FPS display always shows the number of frames executed per
    second, not the number of frames drawn per second.

Menu:         Settings|Sprites|Collisions?
Shortcut:     Amiga-L (Amiga), Ctrl+F8 (IBM-PC)
CLI Argument: COLLISIONS=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        Both
Guests:       All
Remembered?   Yes

    Enables sprite-sprite and sprite-background collision detection. Note
    that some games use other methods to detect collisions.

Menu:         Settings|Sprites|Demultiplex?
Shortcut:     Amiga-D (Amiga), Ctrl+D (IBM-PC)
CLI Argument: DEMULTIPLEX=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        Both
Guests:       Arcadia only
Remembered?   Yes

    Retains the sprite images from the previous frame to prevent
    flickering. This does not "work" for all games.
      This setting is automagically adjusted when loading a known ROM.

Menu:         Settings|Sound|Enabled?
Shortcut:     Amiga-U (Amiga), Ctrl+U (IBM-PC)
CLI Argument: SOUND=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        Both
Guests:       All
Remembered?   Yes

    Sound effects on/off.

Menu:         Settings|Sound|Filtered?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      Use current state
Hosts:        Amiga only
Guests:       All
Remembered?   Yes

    You can toggle the Amiga low-pass audio filter from within AmiArcadia.
    Generally the best results are obtained from having it enabled. Not
    all Amigas are able to disable this filter: eg. A1000 and early A2000
    cannot, A500, A1200 and later A2000 ("B2000") can. Note that this
    feature is only available if BANGPAULA is #defined (which is the case
    for the provided AmigaOS binary, but not for the MorphOS version).

Menu:         Settings|Sound|Volume...
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      Loudest
Hosts:        Both
Guests:       All
Remembered?   Yes

    You can set the global volume of the emulator, in the range of 0..8.
    0 is silence, 4 is half volume, 8 is full volume.

Menu:         Settings|Autosave?
Shortcut:     (none)
CLI Argument: AUTOSAVE=ON|OFF
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        Both
Guests:       All
Remembered?   Yes

    This causes the emulator to automatically save a snapshot (PROGDIR:
    Games/AUTOSAVE.EAS|INS|TVS) of the current game when quitting (unless
    you quit during a frame), and to automatically load the snapshot at
    startup. (Game information is never shown when loading an autosave at
    program startup, regardless of the current "Autosense?" setting.)

Menu:         Settings|Sense game?
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      Yes, quiet
Hosts:        Both
Guests:       All
Remembered?   Yes

   If yes, known games are detected and the emulator configures the
   machine, memory map, paddle swapping, autofire on/off and rate, 1st..
   4th firebuttons, analog/digital guest controllers, analog paddle
   sensitivity, compatibility hacks, and sprite demultiplexing
   accordingly, and optionally shows information about the loaded game. If
   no, none of this occurs. We recommend choosing yes.
     It works for BIN/EAR/EAS/INR/INS/PGM/TVR/TVS/TVC files. Over 400
   files are known.
     Verbose will show information about the game being loaded. Quiet will
   not, except that bad and suspect dumps are mentioned.
     Changing this setting only affects games loaded in the future, not
   the game currently in memory.

Menu:         Settings|Create icons?
Shortcut:     Amiga-I
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      On
Hosts:        Amiga only
Guests:       All
Remembered?   Yes

    Whether to create icons when saving files.
      Sample icons for BIN/PGM/TVC/EAS/INS/EAR/INR/TVS/TVR/IFF/BMP files
    are provided in the icons/ directory. The appropriate
    icons/icon_#?.info file is copied to create an icon for the file.
    Remember that AmiArcadia is an AppWindow; thus you can drag and drop
    icons onto it to load them.

"Remembered?" is whether the setting is automatically loaded at startup
and saved at exit.

See also: Toolbar and Debugging sections.


HELP MENU------------------------------

    Help|Gaming Guide...                      (none)
    Help|Manual...                            (none)
    Help|About...                             Amiga-?

Menu:         Help|Gaming Guide...
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

    Goes to the relevant Gaming Guide at the Emerson Arcadia 2001 Central
    website.
      For AmiArcadia, you need OpenURL.library for this.

Menu:         Help|Manual...
Shortcut:     (none)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Both
Guests:       All
Remembered?   n/a

Menu:         Help|About...
Shortcut:     Amiga-? (Amiga), Ctrl+Shift+/ (IBM-PC)
CLI Argument: (none)
Debugger CLI: (none)
ARexx:        (none)
Default:      n/a
Hosts:        Amiga only
Guests:       All
Remembered?   n/a


CONTROLLERS----------------------------

Emerson Arcadia 2001:

The genuine consoles have four buttons on the console itself (START, A, B,
RESET). There are also two semi-detachable "hand controllers". Each of
these controllers has a "paddle" (analog-style joystick) and a "keypad" of
12, 14 or 16 buttons. Only the Dictionary program (and the MUSIC.BIN
homebrew example) make use of the extra buttons of the 16-button
controller.

Interton VC 4000:

The genuine consoles have three buttons on the console itself (START,
SELECT, RESET). There are also two semi-detachable "hand controllers".
Each of these controllers has a "paddle" (analog-style joystick) and a
"keypad" of 12 buttons.

The 14-button (MPT-03-style) keypad layout is arranged and named as
follows, the same as an MPT-03:

      2     2    You will observe that there are three buttons which all
      1  2  3    produce the same "scancode"; ie. they do the same thing;
      4  5  6    it is impossible for the guest machine (ie. the game)
      7  8  9    to differentiate between them.
     Cl  0 En

2:  2/Fire
Cl: Clear
En: Enter

Elektor TV Games Computer:

There are the following keys, and 2 paddles:

    .UC..   RCAS. WCAS. ..C..   ..D.. ..E.. ..F..
    START   BP1/2 .REG. ..8..   ..9.. ..A.. ..B..
    .LC..   .PC.. .MEM. ..4..   ..5.. ..6.. ..7..
    RESET   ..-.. ..+.. ..0..   ..1.. ..2.. ..3..

Guest-Host Mapping

      F1: 'START'
      F2: 'A'     (Emerson Arcadia 2001)
      or 'SELECT' (Interton VC 4000)
      or 'UC'     (Elektor TV Games Computer)
      F3: 'B'     (Emerson Arcadia 2001)
      or 'LC'     (Elektor TV Games Computer)
      F4: 'RESET' (Elektor TV Games Computer only - RESET key)
      F5: 'RESET' (reset to game)
 Amiga-,: 'RESET' (Elektor TV Games Computer only - reset to monitor)

The F4 reset merely sets the appropriate bit in the key matrix
corresponding to the RESET button; it is up to the game to act on this.
  The F5 reset merely causes the IAR (program counter) to be reset to the
start of the game.
  The Amiga-, reset merely causes the IAR to be reset to the start of the
monitor ROM (which is what happens when the real machine is reset).

    Left Player    Right Player

         I             Up
        \\|/            \\|/
       J-+-L         Lt-+-Rt
        /|\\            /|\\
         K             Dn

     a1 a2 a3        n( n) n/    Emerson-style, or Elektor-style
      Q  W  E        n7 n8 n9
      A  S  D        n4 n5 n6
      Z  X  C        n1 n2 n3

     a2    a2        n)    n)    MPT-03-style, or Interton-style
     a1 a2 a3        n( n) n/
      Q  W  E        n7 n8 n9
      A  S  D        n4 n5 n6
      Z  X  C        n1 n2 n3

        a2              n)       Palladium-style
     a4  R  F        n* n- n+
     a1  V a3        n( nE n/
      Q  W  E        n7 n8 n9
      A  S  D        n4 n5 n6
      Z  X  C        n1 n2 n3

      F2    .a1.. .a2.. .a3..   .n(.. .n).. .n/..    Elektor TVGC
      F1    ..Q.. ..W.. ..E..   .n7.. .n8.. .n9..
      F3    ..A.. ..S.. ..D..   .n4.. .n5.. .n6..
      F4    ..Z.. ..X.. ..C..   .n1.. .n2.. .n3..

a:  alphanumeric
n:  numeric
nE: numeric ENTER

The View|Controls... command is very useful.

Using joysticks and gamepads

The joystick/gamepad directions are mapped to the paddle directions as
you would expect.

                                        Arcadia/
    Gamepad button (joystick button)    Interton       Elektor
    Red (primary firebutton)            usually '2'    usually 'WCAS'/'E'
    Blue (secondary firebutton)         usually '1'    usually 'RCAS'/'D'
    Green (-)                           usually '3'    usually 'C'/'F'
    Yellow (-)                          usually '0'    usually '+'/'2'
    Reverse (-)                         A/SELECT       UC
    Forward (-)                         B/-            LC
    Play (-)                            START/START    START

    .UC..   RCAS. WCAS. ..C..   ..D.. ..E.. ..F..
    START   BP1/2 .REG. ..8..   ..9.. ..A.. ..B..
    .LC..   .PC.. .MEM. ..4..   ..5.. ..6.. ..7..
    RESET   ..-.. ..+.. ..0..   ..1.. ..2.. ..3..

By default, the joystick/gamepad in port '2' (the usual joystick/gamepad
port) controls the left player, and the joystick/gamepad in port '1' (the
usual mouse port) controls the right player (note that you will need to
enable joystick/gamepad '1' (JOY1 option) if you want to make use of it).


OTHER KEYS-----------------------------

Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10
```` 1 2 3 4 5 6 7 8 9 0 - = . <-    Del Hel   ( ) * /
..... Q W E R T Y U I O P [ ] RET              7 8 9 -
... .. A S D F G H J K L ; ' . UR      Up      4 5 6 +
..... . Z X C V B N . , / ? .....   Lt Dn Rt   1 2 3 E
   .. .. -----Spacebar---- Am ..               -0- . n

F1:              START
F2:              'A'
F3:              'B'
F4:              RESET key (Elektor TVGC only)
F5:              RESET to game
F6:              digital/analog controllers
F7:              swapped controllers on/off
F8:              warp speed on/off
F9:              windowed/full-screen mode
F10:             autofire on/off
Amiga-`:         revert
Amiga-1:         1x size
Amiga-2:         2x size
Amiga-3:         3x size
Amiga-4:         quickload snapshot
Amiga-5:         quicksave snapshot
Amiga-6:         Emerson Arcadia 2001 emulation
Amiga-7:         Interton VC 4000 emulation
Amiga-8:         Elektor TV Games Computer emulation
Amiga-9:         open debugger CLI
Amiga-!:         run to next raster line
Amiga-\@:         run to next DMA (Emerson Arcadia 2001 only)
Amiga-#:         run to next frame
Amiga-$:         run to raster line <n>
Amiga-%:         run to next interrupt (Interton and Elektor only)
Amiga-_:         save screenshot
Amiga-_:         save screenshot
Amiga-[:         NTSC region
Amiga-]:         PAL region
Amiga-A:         save ROM
Amiga-B:         show titlebar on/off
Amiga-C, Help:   controls
Amiga-D:         demultiplexing on/off
Amiga-E:         clear data watchpoint
Amiga-F:         (adjust) frame skipping
Amiga-G:         set code breakpoint
Amiga-H:         clear code breakpoint
Amiga-I:         create icons on/off
Amiga-J:         mouse/joystick mode for mouse port
Amiga-K:         change register/memory
Amiga-L:         collisions on/off
Amiga-N:         narrow mode on/off
Amiga-O:         load BIN/EAS/EAR/INS/INR/PGM/TVS/TVR
Amiga-P:         flagline connected toggle on/off (Arcadia),
                 or halfbrite backgrounds on/off (Interton, Elektor)
Amiga-Q, Esc:    quit
Amiga-R:         start recording
Amiga-S:         save snapshot
Amiga-T:         stop recording
Amiga-U:         sound on/off
Amiga-W:         set data watchpoint
Amiga-X:         show pointer on/off
Amiga-Y:         loop playback on/off
Amiga-Z:         step
Amiga-,:         RESET to monitor
Amiga-.:         run ARexx script
Amiga-?:         about
Backspace:       trace CPU on/off
;:                speed whilst held down (no effect in warp mode)
':               1 FPS whilst held down (no effect in warp mode)
P:               paused on/off (same as break/continue)


MISCELLANEOUS--------------------------

Terminology

"Emerson Arcadia 2001", "Arcadia" or "EA2001" is generally used in the
emulator and this document to refer to the entire Emerson Arcadia 2001
console family. However, it should be noted that there are sub-groupings
within this family which have differences (eg. extra keys, FLAGLINE
connected or not, etc.).
  Likewise, "Interton VC 4000", "Interton" or "VC4000" refers to the
entire Interton VC 4000 console family with its various sub-groupings.
  "Elektor TV Games Computer", "Elektor" or "TVGC" refers to the Elektor
TV Games Computer (also commonly known by its German name: "Elektor TV
Spielcomputer").
  The titlebar of the program will vary according to what is being
emulated: "AmiArcadia", "AmiInterton" or "AmiElektor" as appropriate.
  The term "PVI", for our purposes, includes the NOISE register ($1E80),
which is, strictly speaking, a separate component.
  The terms "controllers", "paddles" and "joysticks" refer to the (guest)
game controllers, especially to the directional joystick-like component of
them. This does not match the more common definition of "paddles" to mean
rotatable dials.
  The terms "guest" and "host" refer to the Arcadia/Interton/Elektor and
the Amiga/IBM-PC, respectively.
  "Monitor" can refer to the real-time system monitor (as in View|
Monitor...). The BIOS (ie. operating system) of the Elektor TV Games
Computer is also referred to as the "monitor" (as in "Reset to monitor").
  The term "game" is used for any guest software that is run under
the emulator, even utilities, demos, etc.
  1K (one kilobyte) is 1024 bytes, of course.
  "CLI" can refer to the normal AmigaDOS/Windows command line interface
(eg. "CLI arguments"). It is also used to refer to the console-based
debugger interface (eg. "debugger CLI").
  "Macro" can refer to gameplay recordings (ie. EAR/INR/TVR files), or
to ARexx scripts.
  "Break" is synonymous with "pause". "Continue" is synonymous with
"unpause".

Elektor TV Games Computer

The (fixed version of the) monitor ROM is built into the Elektor emulator.
In the expanded machine, the RLG 2716 EPROM loader or saver (loader by
default) (at $1C00..$1C7F and $1E00..$1E7F) and the calculation routine
(at $2000..$21FF) are also built in.

The emulator supports both the basic ("base") and expanded ("extended")
versions of the Elektor TV Games Computer (also known by its German name:
"Elektor TV Spielcomputer"). By default, the expanded version is emulated.
However, when the autosensing subsystem detects a game/utility that does
not require, and is not enhanced by, the extra features of the expanded
version, the basic version is emulated.

The expanded version has these improvements compared to the basic version:

    * extra RAM;

    * random number generators at $1D20, $1FAF and $1FFF;

    * an Interton-style NOISE generator at $1E80 (roughly emulated);

    * two AY-3-8910 Programmable Sound Generators (PSGs) (partially
      emulated);

    * the Rapid Loading Games enhancement (partially emulated);

    * two cartridge slots (not emulated: use Interton machine to run
      cartridge games).

Configuration file

Most settings are loaded automatically from the configration file at
startup, and likewise are saved to there automatically at exit.

The priority of configuration sources at startup are as follows:

    1. Autosense settings for the relevant game
    2. Configuration file specified by the SETTINGS CLI argument
    3. Other CLI arguments
    4. PROGDIR:AmiArcadia.config
    5. Built-in defaults

Lower numbers indicate higher priority; eg. autosense overrides everything
else.

Note that the "autosave" option refers to automatically saving a snapshot
of the current game at exit; it has nothing to do with the
configuration file, which stores emulator settings. And "autosense" is
another thing altogether.

Configuration files are not cross-compatible between AmiArcadia and
WinArcadia. However, BIN/EAS/EAR/INS/INR/PGM/TVC/TVS/TVR files are cross-
compatible (between concurrent versions).


AREXX COMMANDS-------------------------

The supported commands, and their version of introduction, are:

  . ACTIVATE                                                         5.4
  . ACTIVATEWINDOW                                                   5.3
  . CLEAR                                                            5.3
  . CLOSECONTROLS                                                    5.6
  . CLOSEMONITOR                                                     5.6
  . CMDSHELL          OPEN|CLOSE                                     5.4
  . DEACTIVATE                                                       5.4
  * GETMACHINE                                                       5.52
  * GETVERSION                                                       5.3
  * GETSCREEN                                                        5.51
  . LOCKGUI                                                          5.4
  . MOVEWINDOW        [LEFTEDGE] <leftedge> [TOPEDGE] <topedge>      5.4
  . OPEN              [<filename>]                                   5.3
  . OPENCONTROLS                                                     5.6
  . OPENMONITOR                                                      5.6
  . PAUSE                                                            5.4
  * PEEK              <address>                                      5.3
  . POKE              [ADDRESS] <address> [VALUE] <value>            5.3
  * REQUESTFILE       [TITLE <title>] [PATH <path>]                  5.5
                      [FILE <filename>] [PATTERN <pattern>]
  . REQUESTNOTIFY     [TITLE <title>] [PROMPT] <prompt>              5.5
  * REQUESTRESPONSE   [TITLE <title>] [PROMPT] <prompt>              5.5
  . SAVEAS            [<filename>]                                   5.3
  . SAVEACBM          [<filename>]                                   5.5
  . SAVEBMP           [<filename>]                                   5.5
  . SAVEILBM          [<filename>]                                   5.5
  . TRACE             ON|OFF                                         5.51
  . UNLOCKGUI                                                        5.4
  . UNPAUSE                                                          5.4
  . VIEW              ALL|CPU|CRAM|LOWER|MRAM|PSG|PVI|RAM|ROM|SCRN|  5.52
                      UPPER|UDC|UVI
  . QUIT                                                             5.3
  . WINDOWTOBACK                                                     5.3
  . WINDOWTOFRONT                                                    5.3

Commands marked with '.' do not return anything.
Commands marked with '*' write their return code to the RESULT variable.

Eventually more commands will be supported; suggestions are welcomed.


COMPATIBILITY--------------------------

Some games may work better (or worse) than indicated, as they have not
been comprehensively retested for this release.

Note that the compatibility listings are very rough, as we do not know
what the correct behaviour of the most of the games should be. Your
assistance would be appreciated.

If you have any software not in the lists below (especially Super Bug!),
please send them to us, to help improve the emulator.

General incompatibilities (all):
 Horizon jittering affects the entire rastline rather than just a portion
  of it.
 Bus emulation is not implemented.
 PAL/NTSC toggling doesn't change the number of cycles per frame, nor the
  sound output, as it presumably should.
 The emulator multiplexes the CPU and UVI/PVI emulation on a per-rastline
  basis for more speed.
 The aspect ratio and overscan of the emulation may not be identical to
  those on the real machines (depends on the magnification and other
  settings of the television set anyway).
 Some opcodes which are unused in any known or conceivable Arcadia/
  Interton/Elektor program (eg. REDC) may not function in exactly the same
  way as they would on a real machine.
 Interrupts are late.
 Some hardware registers which perhaps should be cached (ie. read
  occasionally by the UVI/PVI, and then using that value for a while), are
  being reread as necessary by the emulator, and vice versa.
 Timing is somewhat inexact.
 Noises are not correct (eg. ROBOTKIL player-wall collision should have
  more "sizzle").
 Aliasing of high-pitched tones (but this maybe plagues the real machines
  too?).
 Console keys (eg. START) should be latched.

General incompatibilities (Emerson Arcadia 2001):
 Some behaviours and timings of the UVI registers are not reproduced?
 Sprites are drawn at a different point in the frame (ie. the end) than
  they would be on a real Arcadia (during main drawing).
 Some variants (the Palladium VCG, for example) do not have RAM mirroring.
  The emulator emulates an actual Emerson Arcadia 2001 (which does have
  RAM mirroring) in this regard.

General incompatibilities (Interton VC 4000):
 Unknown "4K ROM + 0K RAM" cartridges are actually emulated as "4K ROM +
  1K RAM" cartridges, due to the impossibility of distinguishing between
  the two.

General incompatibilities (Elektor TV Games Computer):
 The Programmable Sound Generators are not completely emulated (ie. no
  envelopes).
 AmiArcadia only: Only 4 sounds can be played simultaneously, rather than
  14. This is a limitation of the host hardware.
 The cassette interface is not emulated.
 Some characteristics of EPROM memory (ie. "difficulty" of writing,
  slowness of reading of repeatedly overwritten EPROMs) are not emulated.
 Loading/saving of the $2000..$7FFF region is not supported.

These may seem to be emulator bugs but in fact are faithfully emulated
(ie. non-problems) (all):
 Tones are off-key.
 Flickering horizon lines (although this happens somewhat differently
  under AmiArcadia than on a real machine).

These may seem to be emulator bugs but in fact are faithfully emulated
(ie. non-problems) (Emerson Arcadia 2001):
 Many games have flickering sprites and/or backgrounds (due to the use of
  multiplexing techniques).
 Some games (HOBO, JUMPBUG?, THE-END, TURTLES) have garbage lines of
  colour at the bottom of the screen (these are generally offscreen on a
  typical television setup).

Specific Emerson Arcadia 2001 game incompatibilities:

100% OK  99% OK   Problem

3DSOCCE?
ALIENINV
ASTROINV
AUTORACE
BASEBALL
BASKETBA
BATTLE
BLACKJAC
BOWLING
BOXING
BRAINQUI
BREAKAWA
CAPTURE
CATTRAX
CIRCUS
COMBAT
CRAZYCLI
CRAZYGOB
         DORAEMON Blank line between head and body when moving down
                  (timing or variable caching problem?)
DR-SLUMP
ESCAPE
FOOTBALL
FUNKFISH
GOLF              If you are using the unpatched version, you must ensure
                  autosense is on
HOBO
HORSERAC
JUMPBUG?
JUNGLER
         MACROSS  Graphics glitches (timing or variable caching problem?)
MISSILEW
MONACO
NIBBLE
OCEANBAT
         PARASHOO Graphics glitches when losing a life (timing problem?)
PLEIADES
R2DTANK
         REDCLASH Flickering box on title screen
ROBOTKIL
ROUTE16
SATTACK?
SMISSION
SOCCER
SPIDERS
SRAIDERS
SSQUADRO
STARCHES
SUPERGOB
SVULTURE
TANKSALO
TENNIS
THE-END
TURTLES
VIDLEX#?

(As per the AmigaDOS standard, ? is a wildcard representing one character,
and #? is a wildcard representing zero or more characters.)

See the Emerson Arcadia 2001 Gaming Guide for information about specific
EA2001 game non-problems. Please report any other incompatibilities you
believe to be present.

Specific Interton VC 4000 game incompatibilities:

Playable Broken   Problem

4INAROW
AIRSEAAT          Suspect dump
AIRSEABA
BACKGAMM          Major graphics problems
BLACKJAC
         BOWLING  Doesn't work
BOXING            Minor graphics problems
CAPTURE
         CARRACES Doesn't work properly
CASINO
CHESS1
CHESS2
CIRCUS
COCKPIT           Minor graphics problems
CODEBREA
COMBATA           Minor graphics problems
COMBATB           Minor graphics problems
DRAUGHTS
GOLF
         GRNDPRIX Doesn't work properly
HEADON
HIPPODRO
         HORSERAC Suspect dump
HUNTING
HYPERSPA          Minor graphics problems
         INVADERA Minor graphics problems
         INVADERB Minor graphics problems
LABYRINT
LASERATT
MATHEMA1          Minor graphics problems
MATH2
MASTERMI
METROPOL          Major graphics problems
MONSTERM
         MOTOCROS Doesn't work properly
MUSICALG
OLYMPICS
PINBALLA
PINBALLB
PLANETDE
SOCCERA
SOCCERB
SOLITAIR          Minor graphics problems
SPACEWAR
SHOOTGAL
SHOOTOUT
SUPERINV
SUPERSPA
TREASURE
         WINTERSP Major graphics problems

Note that the list above is for when "use compatibility hacks?" is
enabled.

Specific Elektor TV Games Computer incompatibilities:

See the Elektor TV Games Computer Gaming Guide
(http://amigan.classicgaming.gamespy.com/egg/).

"IIII" indicates that the monitor ROM is initialized and ready to accept
commands. (The emulator saves you the trouble of pressing the START
button.) For more details about the monitor software, see the "TV Games
Computer" book (available from the site).

Note that 07-D-Disassembler has nothing to disassemble at $900, due to
the way programs are loaded (memory is cleared when loading); however, it
does work and can be used to disassemble eg. itself, the monitor ROM,
the EPROM routines, etc.


TROUBLESHOOTING------------------------

Where can I get more games for this emulator?

http://amigan.classicgaming.gamespy.com/a-softwa.zip (Arcadia)
http://amigan.classicgaming.gamespy.com/i-softwa.zip (Interton)
http://amigan.classicgaming.gamespy.com/e-softwa.zip (Elektor)

Manuals and other resources are also available at
http://amigan.classicgaming.gamespy.com/

My game is not working properly!

Emerson Arcadia 2001: Check your settings, especially the input settings
(eg. digital/analog paddle mode, autofire on/off, paddle swapping) and
sprite collisions on/off. Try adjusting the frame skipping value, as
certain synchronicities can occur with games which use multiplexing
techniques. Read the game manual and/or game help. Check the compatibility
non-problems list in the Emerson Arcadia 2001 Gaming Guide. Ensure that
you are using a known good dump (enabling verbose autosensing will warn
you about known bad dumps).

Interton VC 4000: Check your settings, especially the input settings
(eg. digital/analog paddle mode, autofire on/off, paddle swapping) and
sprite collisions on/off. Try adjusting the frame skipping value, as
certain synchronicities can occur with games which use multiplexing
techniques. Read the game help in the Interton VC 4000 Gaming Guide.
Ensure that you are using a known good dump (enabling verbose autosensing
will warn you about suspect and known bad dumps). Ensure that "use
compatibility hacks" (and autosensing) is enabled. The state of Interton
VC 4000 emulation is unfortunately still poor. Your help is sought in
compatibility testing and/or emulator development.

Elektor TV Games Computer: Check your settings, especially the input
settings (eg. digital/analog paddle mode, autofire on/off, paddle
swapping) and sprite collisions on/off. Try adjusting the frame skipping
value, as certain synchronicities can occur with games which use
multiplexing techniques. Read the game manual (inlay). Ensure that "use
compatibility hacks" (and autosensing) is enabled. The state of Elektor TV
Games Computer emulation is unfortunately still poor. Your help is sought
in compatibility testing and/or emulator development.

When I load a ROM, the screen does not update accordingly!

Ensure that the emulator is not paused.

The colours in my game are wrong!

Toggle the flagline emulation.

Players are drifting when there no keyboard input!

Ensure that "use analog on host" is disabled.

Horizon lines are jittering!

The genuine consoles also exhibits such jittering, though over a narrower
area.

I can't find a BIOS file!

The Arcadia and Interton do not possess a BIOS; thus a BIOS file is not
necessary or possible. Stub "demo" programs for these machines are
built into the emulator. The (fixed version of the) monitor ROM of the
Elektor is built into the emulator.

The sprites or background in my game are flickering!

In the case of sprites, this is a technique used in many EA2001 programs
to display more than the normal limit of 4 sprites by rapidly
multiplexing them; ie. displaying only 4 sprites at a time but quickly
switching between the sprite sets. You can use the sprite demultiplexing
feature, but this does not "work" for all games because (a) it only
affects sprites, not character tiles, and (b) it assumes that there are 8
sprites which are displayed 4 sprites at a time on alternating frames. The
following games meet this criteria: FUNKFISH, REDCLASH, SATTACK? (sprites,
not starfield), TENNIS and TURTLES. For certain other games (eg. MACROSS),
demultiplexing will reduce but not eliminate the flickering.

Certain combinations of keys do not work!

This is due to the limitations of the Amiga keyboard hardware, and happens
when there are several keys held down. This problem is well-documented in
eg. the Amiga ROM Kernel Reference Manuals. It affects all Amiga software,
not just AmiArcadia. There is not really a workaround for this, other than
using joystick(s) instead of keyboard. A similar limitation is also
present on most IBM-PC keyboards, and thus also affects WinArcadia.

The emulation is slow!

Indeed it is, unfortunately. Here are some suggestions to increase the
speed of the emulator:

(a) You should patch the graphics subsystem; this gives an astounding
    performance improvement for OCS/ECS/AGA under WinUAE (and a
    significant improvement on a real Amiga) that affects not only
    AmiArcadia but also various other software. See here for more
    information.

(b) WinUAE users can make the emulation faster by checking "Immediate
    Blitter" (and of course unchecking "Cycle exact CPU and Blitter"), in
    Settings|Hardware|Chipset|Misc chipset options.

(c) 1x graphics scaling gives faster redraws than the 2x or 3x scaling;
    you could run in a low-resolution screenmode to enlarge the apparent
    size of this.

(d) Narrow mode is faster than wide mode.

(e) RTG modes are generally faster than OCS/ECS/AGA modes.

(f) Windowed mode is generally faster than full-screen mode.

(g) Shallow modes (fewer colours) are generally faster than deep (more
    colours) modes. For example, under MorphOS at least, changing from a
    16-bit screenmode to an 8-bit screenmode almost doubles the speed.

(h) Skipping frames will increase the speed.

(i) You could increase AmiArcadia's priority (eg. with the PRI argument
    from CLI, the TOOLPRI Workbench ToolType, or the SetTaskPri CLI
    command).

(j) You could compile specifically for your CPU if you are using something
    better than a 68020 (the provided binary is 68020-optimized).

(k) WinUAE users could use a faster version of WinUAE, such as WinUAE
    0.8.8 R9.

(l) "View|Controls..." and "View|Monitor..." slow down the emulation
    somewhat.

Recordings are not playing back correctly!

Check the sprite collisions, autosense and "use compatibility hacks?"
settings: they must be the same as what was used when the recording was
made.

The cursor keys have no effect!

By default, the cursor keys are assigned to the right-hand player (player
2). The left-hand player (player 1) uses I/J/K/L. You could use the
"swap controllers" option to reverse this, or you could redefine the keys.

My games are not appearing in the sidebar!

Load a game from your desired games directory, then "Audit games".
