Initial commit

From the source code at <http://chui.dcemu.co.uk/uae4all.html#DOWNLOADS>
Add a .gitignore file for binaries
Add a Makefile for the GCW Zero
Add an almostclean target to the GCW Zero makefile

This target preserves famec.o, which takes a large amount of resources
to recreate. It also isn't affected by UAE4ALL-related conditional
compilation flags.
Fix double-buffering always drawing into the first frame
Fix building without FAME_CORE

The core in UAE4ALL requires 'log' from libm.
Fix surface locking, double-buffered display and the status line

Locking is required by all SDL operations that access the pixels array
directly, and unlocking is required by all SDL operations that can use
hardware acceleration (e.g. rectangles, blits). Correct the locking.

Double-buffering requires the Amiga display emulation to be reset with
a new frame address (after locking to allow direct access to pixels)
after flips. Set gfx_mem and prSDLScreenPixels, then add reset_drawing
in sdlgfx.cpp.

Double-buffering means that the status line cannot be considered drawn
already in the current frame anymore.
[#if DOUBLEBUFFER || STATUS_ALWAYS], draw the status line below every
frame.
Fix surface locking in the menu during emulation

Locking is required by all SDL operations that access the pixels array
directly, and unlocking is required by all SDL operations that can use
hardware acceleration (e.g. rectangles, blits). Correct the locking.
Fix surface locking in the saved state status screen

Locking is required by all SDL operations that access the pixels array
directly, and unlocking is required by all SDL operations that can use
hardware acceleration (e.g. rectangles, blits). Correct the locking.
Fix flickering around the saved state progress window

[#if DOUBLEBUFFER], clear the screen with black twice before showing
the saved state progress window to prevent the emulated screen from
flickering from the last frame shown to the frame before.

This is less hacky than copying the emulated screen twice and showing
the window on top of that.
Speed up saving compressed chunks in saved states

The LZMA compression level was simply lowered to 1. On the Dingoo and
Dreamcast, this will speed up creating saved states by 3 to 5 seconds.
On the GCW Zero, it saves 1 second, but the previous total time was
barely over a second.
Optimise switching of the video buffers

Previously, I called reset_drawing() to make sure the screen pointer
and line pointers were updated appropriately for the back buffer if
double buffering. I didn't realise that this carried a penalty of
calling memset on a 2.2 megabyte array to clear it. The intent was,
of course, to reset the emulated Amiga's video hardware entirely in
customreset.

This commit introduces a new function that simply sets the new screen
pointer and line pointers, and sdlgfx.cpp is made to call that.
Add home directory support
home support variables now match the naming convention of the rest of the code
Fix flickering around the restore state progress window

[#if DOUBLEBUFFER], clear the screen with black twice before showing
the restore state progress window to prevent the emulated screen from
flickering from the last frame shown to the frame before.

This is less hacky than copying the emulated screen twice and showing
the window on top of that.
Add OPK build ability to Makefile.gcw0
Render ':' and '/' characters; Show 'kick.rom not found' message only once and exit; Display search path of kick.rom in the message
Set joystick deadzone
Rewrite missing kick.rom screen logic
Swap X and Y button keymapping in the menu