BoyCott Advance/SDL, the free Nintendo Gameboy Advance emulator, README V1.1
       Copyright (c) 2002 SDLEmu development-team <sdlemu@ngemu.com>
----------------------------------------------------------------------------

Authors:
Emulator Core:
Julien 'Gollum' Frelat, Dysfunction and Richard Bannister

Windows Version:
Dysfunction and Julien 'Gollum' Frelat, <julien.frelat@libertysurf.fr>
                                        http://boycottadvance.emuunlim.com


SDL Version:
Carwyn Jones,   turok2@currantbun.com
Lu_zero,        lu_zero@psxfanatics.com
Niels Wagenaar, sdlemu@ngemu.com

DISCLAIMER:

The use of this software is entirely at your own risk. The developers can't be
held responsible for damage done to your hard- and/or software.

This emulator requires ROM images for use. The use of ROM images from commercial
Gameboy Advance games are allowed as long as you own the original cartridge.
The use of pirated or illegally obtained ROM's is prohibited and is a act of
piracy and illegal by law in certain countries. WE DO NOT SUPPORT PIRACY.

1. What is BoyCott Advance/SDL?

BoyCott Advance was developed (at first) by Julien 'Gollum' Frelat as a Nintendo
Gameboy Advance handheld emulator for Windows systems. It was one of the first
Gameboy Advance emulator to run commercial games before the handheld reached the
USA and Europe.  

Since BoyCott Advance v0.18b (not released to the public) the development 
started of BoyCott Advance/SDL. On 30 May 2001 the very first release of BA/SDL
(based upon the 0.19b emulation core) made it's introduction to the Internet.

BoyCott Advance/SDL is a straight port of BoyCott Advance using the great multi-
media library called Simple Directmedia Layer (SDL). The source is highly 
portable and has there for many versions available for different operating
systems. Versions exists for the following platforms :

- BeOS R5 (Personal/Professional) for i386;
- [insert favorite distro] Linux for i386 (kernel 2.2.x and 2.4.x);
- FreeBSD 4.x for i386;
- Windows 9x/ME, 2K and XP for 32-bit i386;
- QNX RTP 6.x for i386 (beta);

BoyCott Advance/SDL is released as freeware. Because of the author's wishes, no
source will be made available (so don't request this!) but in time you can find
portions from the source available in SDLEmu's other project : Cygne/SDL.

BoyCott Advance/SDL makes use of the following libraries :

- SDL 1.2.5  (http://www.libsdl.org);
- zlib 1.1.4 (http://www.zlib.org);
- OpenGL 1.2 (http://www.opengl.org or http://www.mesa3d.org);

BeOS, FreeBSD and Linux users! Make sure you've installed these libraries!

Feel free to send (bug) reports, fanmail or TODO items to SDLEmu's e-mail
address : sdlemu@ngemu.com. The latest versions will become available on it's
official website : http://sdlemu.ngemu.com. A forum for BoyCott Advance/SDL 
can be found on http://sdlemu.ngemu.com/phpBB2/index.php. 

2. What is SDL?

The Simple Directmedia Layer library, or SDL for short, is a multimedia library
designed for graphics (software, YUV Overlay, OpenGL), input handling, sound
and other multimedia aspects. Currently it's available for several platforms
like BeOS, Linux, FreeBSD, NetBSD, WIN32, PSX, etc. This means that most code
which use SDL is highly portable and could compile on other platforms.

For more information about SDL I should advice you to set your internet browser
to the SDL website : http://www.libsdl.org.

3. What is a Nintendo Gameboy Advance?

EEK! If you don't know this, you must be living on Marse :) But just in case,
the Gameboy Advance is the follow-up for the popular handheld Gameboy. The first
Gameboy was a black-and-white handheld device manufactured by Nintendo. The
device was an instand success and became the most selling handheld ever.

Well, that was about 12 years ago. In 2001 Nintendo released the new and 
improved Gameboy based upon a 32-bit CPU. It was called the Gameboy Advance.
The Gameboy Advance is like a portable SNES but with so much more! This device
is one the very best handheld out on the market (maybe not like the Atari Lynx
but it's getting there :) with great graphics and sound support. The games
are incredible in detail and are fun to play to.

Check Nintendo's website at http://www.nintendo.com for more info about it's
products. If you don't have one now, buy it! It's worth every penny!

4. Enough allready, how can I use BoyCott Advance/SDL?

Make sure you got a BeOS R5, Linux, FreeBSD or WIN32 i386 compatible operating
system (BoyCott Advance/SDL only works for intel x86 compatible systems like the
Pentium series, AMD K6 series, AMD Athlon series, AMD Duron series and the 
VIA/Cyrix series). BoyCott Advance/SDL was developed on the following systems :

AMD Athlon Classic 650Mhz with 1GB RAM      Intel Celeron 466Mhz with 128MB RAM
NVidia Geforce 3Ti500 64MB                  3Dfx Voodoo3 2000 16MB
SoundBlaster Live! Value                    SoundBlaster PCI-128

On these systems BoyCott Advance/SDL archieved about 100% GBA speed with sound.
For every OS you should have the latest drivers installed for your hardware.
Your videohardware must run a colourdepth of 16bpp. On WIN32 platforms BA/SDL
makes use of DirectX compatible drivers/libraries.

Acceleration is provided using OpenGL so make sure you got OpenGL (or compat.)
drivers installed. FreeBSD and Linux users must have there GL(X)/MESA libraries
updated/installed since the binary has depencies for these libraries and it
won't run without them. WIN32 and BeOS users have no worries, both systems have
OpenGL implented in there operating system. WIN32 users should upgrade to the
latest DirectX version (at the time of write DirectX 9.0a) but it works with
DirectX 5.x and up.

BoyCott Advance/SDL makes use of a commandline based switch system. In other 
words, you must make use of the MS-DOS Console or your (X) Terminal program. For
a complete view of the switches go to chapter 6b of this README.

An other option is to edit the file 'boyca.cfg' or 'boyca.ini' and chance the 
settings you want to use. Be sure to read the comments (with a #) to see what 
they do. BeOS users and WIN32 users have the option to use the GBA/SDL frontends.

In most cases the command './boyca romfile.gba' or 'boyca romfile.gba' will do
the trick (where the 2nd option is the ROM image' name). BoyCott Advance/SDL
supports ZIP/GZIP compressed ROM images. Please make sure you read the ROM
Images? section about our policy on ROM images.

5. ROM Images?

Ok, for use with this emulator you need binary dumps of the original game-
cartridges or Public Domain games/demo's. These binary dumps are called ROM's
or ROM images. The use of ROM images is allowed as long as you own the orignal
game. If not, this is a act of piracy which hurts the gaming/emulation community
as well as the developers of BoyCott Advance and BoyCott Advance/SDL.

Several authors have been developing Public Domain games and/or demo's to show
off there programming skills. These ROM images are widely available on the
internet. Using google you should find some to work with BASDL. The game
Pong Fighter is in this release package (look in /PongFighter) and is developed 
by Guyfawkes from gbaemu.com. You can use BoyCott Advance/SDL right away :) For 
other Public Domain ROM images browse to http://www.pdroms.com.

BTW, ROM images may be compressed with ZIP or GZIP compression. This is 
supported and should work with out problems.

Several ROM images produces strange results. This has got to do with the 
emulation of the GBA BIOS. Luckily BoyCott Advance/SDL can use the binary dump
of the GBA bios (default named gbasys.bin). But you may only use this dump if
you own the Nintendo Gameboy Advance handheld! With BA/SDL you can also use
hacked versions of the BIOS. See the switches or the configfile for more details
how to use them. For the record, the dumps can now be compressed to be used with
BoyCott Advance/SDL!

6a. Keyboard settings

To use the several ROM images you surely need to know how to control BA/SDL
so it acts like a real Nintendo Gameboy Advance. Here are the keyboard settings
which are the default settings for BoyCott Advance/SDL :

Directional Key defines : 

GBA Key A      : X or button 1 on joypad and/or joystick
GBA Key B      : C or button 2 on joypad and/or joystick
GBA Key L      : Z or button 3 on joypad and/or joystick
GBA Key R      : V or button 4 on joypad and/or joystick
GBA Key Start  : ENTER
GBA Key Select : TAB
GBA Key UP     : UP or button-up on joypad and/or joystick
GBA Key DOWN   : DOWN or button-down on joypad and/or joystick
GBA Key LEFT   : LEFT or button-left on joypad and/or joystick
GBA Key RIGHT  : RIGHT or button-right on joypad and/or joystick

Misc. Key defines :

GBA emulation Pause    : F1
GBA emulation Continue : F2
FPS Counter enable     : F3
FPS Counter disable    : F4
Frameskip increase     : F5 (does not work with autoskip)
Frameskip decrease     : F6 (does not work with autoskip)
Save Savestate         : F7 (select savebank with keys 1 through 4)
Load Savestate         : F8 (select savebank with keys 1 through 4)
Take screenshot        : F9 (not supported in OpenGL)
GBA Reset              : F10
Quit                   : ESCAPE

!!WARNING!! The following options can crash the emulator or can produce very
strange side effects :

Overclock GBA CPU      : Nummeric Keypad + (plus) 
Downclock GBA CPU      : Nummeric Keypad - (minus)

6b. Commandline switches

BoyCott Advance/SDL makes use of the following switches :

-[no]autoskip		: Enable/Disable the auto frameskip option.
-[no]bios		: Enable/Disable use of the GBA BIOS.
-[no]fastboot		: Enable/Disable the GBA BIOS fastboot sequence.
-[no]intro		: Enable/Disable some GBA release intro's.
-[no]romwrites		: Enable/Disable ROM writes for running older demo's.
-[no]reversesound	: Enable/Disable reverse sound playing.
-[no]sound		: Enable/Disable GBA sound emulation.
-[no]throttle		: Enable/Disable the throttle to a max of 60FPS.

-biosfile      filename	: Select an (alternate) GBA BIOS dump.
-frameskip     0 -  9	: Enable frameskip from 0 to 9.
-glmethod      1 -  2	: Allows you to select a different rendering method.
-gltexture     1 -  2	: Allows you to select Anti-Aliasing/Blur effect.
-joyport       0 -  3   : Allows you to select an other gameport.
-mode          0 - 19	: Make use of the 19 usuable filters. 
-scale	       1 -  4   : Allows you to resize the window/drawing.
-overlaymethod 1 -  5   : Select the Overlay rendering method.

-fps			: Enable FPS counter options.
-fullscreen		: Enable rendering in fullscreen mode.
-joystick		: Enable the use of a joystick/gamepad.
-nvidiahack		: When you see a garbled display, use this hack.
-opengl			: Enable OpenGL  rendering engine.
-overlay		: Enable Overlay rendering engine.


All these options are more explained in the configfile!


7. Finding Bugs/Contributions?

Did you find bugs or do you want to make contributions? Feel free to send them
to sdlemu@ngemu.com so that they can be solved/implented in the next source
release. 

Anyone who has features, ideas to add to the SDL version should send them here 
sdlemu@ngemu.com, full recognition will be given for any features added. 

Bugs can also be submitted on the SDLemu forum : http://sdlemu.ngemu.com/phpBB2.

8. Contact information.

The latest version of BoyCott Advance/SDL will always be available at the 
SDLemu website. You can find it at http://sdlemu.ngemu.com. 

Contacting us is the easiest using e-mail and by sending it to sdlemu@ngemu.com.
The other way is using the forum (the link is provided at the SDLemu website).

Lame messages like ROM requests or why doesn't game xxx run will not be 
anwsered.

9. Overall

Have fun with this release!

