           =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
                           K.G.B.  version 0.10
                         written by Matt Currie
                            mattc@ihug.co.nz
           http://www.geocities.com/SiliconValley/Heights/7673/
           =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

1.0  What is it?
=-=-=-=-=-=-=-=-

It's a Nintendo Gameboy (tm) emulator for DOS (and eventually Windows).
The CPU emulation and most of the screen emulation is written in 32-bit
assembly and the wrapper is in Delphi.  To run Delphi code under DOS I'm
using WDosX v0.94 by Michael Tippach.

You're probably gonna want to have a pentium of some description to run
it well.  There is frame skipping support but sometimes it just skips
too many frames and, well, never starts updating the screen again. :)
That would probably happen on a 486-33 or lower.  If the number below
the fps counter on the right just starts going up and up and doesn't
come back down, then you know its time to upgrade your computer. *8-)

2.0  History
=-=-=-=-=-=-

0.10  98/06/08:   -first release



3.0  How to use it
=-=-=-=-=-=-=-=-=-

To use KGB you obviously need some gameboy roms.  These can be obtained
by downloading them from carts you own, or if you don't have access to a
reader/writer you can probably find the roms to the carts you own on the
net somewhere.  Don't ask me, I won't tell you (cos i don't know).

Copy KGB into the directory where your roms are.  Your roms MUST have 
a .GB extension or the battery backup won't work correctly.

KGB does have a GUI but not all the options are accessable from it
at the moment.  These other options can be accessed by command line
parameters when you start up KGB.

   usage:  kgb.exe [/b] [/v?] [game.gb]

        /b    :   puts KGB in blurry mode, slower but looks nicer for
                  some games and demos (checkout punk.gb and bc.gb,
                  two homebrewn carts from the recent Gameboy Demo compo.
                  they look real nice with this on).

        /v?   :   select from the different video modes:
                        0  :  320x200  -  standard vga mode.
                        1  :  320x240  -  square pixel mode, so the
                                          display is not elongated.
                                          DEFAULT mode.  may not be
                                          compatible with all screens.
                        2  :  360x144  -  full screen mode - slower.

examples:

        kgb /b /v2 wario2.gb      - blurry mode, full screen, warioland 2.
        kgb /v0                   - standard vga mode, goes straight to the
                                    menu.

When it starts up, if you specified a game to run, it will begin the
emulation immediately, if not, it will come up with the main menu.  From
here, currently, you can only select a game to play, reset the gameboy
and quit.

When you go to the game selection menu it shows a list of all .GB files in
the current directory. You can't change directory at the moment, this should
be in a later release.

3.1 Keys
--------

In the emulation these keys control the gameboy.

Arrow keys   =   Joypad
A            =   B
S            =   A
D            =   Select
F            =   Start

These currently cannot be changed.

In the emulation, ESC and SPACE can be used to access the menu.



4.0 Status/Future
=-=-=-=-=-=-=-=-=

4.1 What's done
---------------
CPU emulated
Screen emulated - sprite priorities need testing
MBC1, MBC2, MBC3 crudely emulated.
Battery backed-up RAM into .SAV files.
Blurry LCD gameboy screen.
GUI - more to do.
Speed throttling.

4.2 What's not done but might be done if you hold your breath long enuf
-----------------------------------------------------------------------
Instant save/load.
Cheating - game genie probably
VS Mode - Two gameboy's emulated and linked up (only prob here is the linkup)
Super Gameboy/Colour Gameboy support
Sound
Joystick/Joypad and SNESPro support
The Windows 95 port.

4.3 Bugs
--------
Well, there's got to be quite a few in the emulation cos compatatiblility
(sp :)  isn't great, to say the least.

Special note for Warioland 2:

Yes, it does run, and quite well, as far as I've seen. EXCEPT! for when you
first start the game and the clouds are scrolling horizontally and then
scroll vertically down.  Make sure you don't press any keys until
'Warioland 2' has dropped down, then you should be able to play the game
normally. HAVE FUN!



5.0 Thanks
=-=-=-=-=-

Thanks to everyone basically who has done anything to do with the gameboy,
cos I've probably used it in writing the emulator or testing it or whatever.  



6.0 Legal, cover my ass type stuff
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-You get what you pay for and since I've charged you nothing I don't owe you
jack.
-I am in no way at all whatsoever affiliated with Nintendo of America,
of Japan, or anywhere in fact.
-Gameboy is a registered trademark of Nintendo Co., Ltd.
-The Nintendo logo displayed is not stored in my program but in the rom image
being provided by the user.  It is extracted and displayed as in the real
Gameboy.
-If this program damages you, your computer, your dog, your life or, your
wife or anything related to you or your existance then you agree not to hold
me liable, by running this program you agree to this statement.
-You may distribute this version of the program freely as long as you do not
include any Gameboy rom images with the distribution, this includes being on
CD-ROMs or whatever.


Thank you and good night!
       
