GooBer 0.0.0a
~~~~~~~~~~~~~

1. What is GooBer?
2. Features
3. Road map
4. Why?
5. How to use
6. How to contact/bitch/flame/etc
7. "Props"

1 : What is GooBer?
~~~~~~~~~~~~~~~~~~~

GooBer is a Gameboy emulator that is designed to be portable to Win32, DOS and
Linux. This is achieved by using the awesome Allegro game programming library,
combined with basic ANSI C, GooBer compiles without modification on both
Win32, DOS and Linux!.


2 : Features
~~~~~~~~~~~~

0.0.0a:
  - Overhauled appearance, register and disassembly display is gone,
    interaction now takes place with GUI and hot keys.
  - Added crude tile caching to LCDC support.
  - Window and Sprites are now visible.
  - Lots of bugs discovered and fixed in CPU core.
  - Added Joypad support.
  - Runs following ROMS to the specified level of accuracy
    - TEST.GB : 75%, Graphics Demo works correctly, Text demo produces
             somewhat inaccurate results. 
    - SPACE.GB : 100%
    - SPRITE.GB : 100%
    - PUZZLE.GB : 100%
    - SOUND.GB  : ??%, Sound isn't available so this number is inaccurate, but the menus
		  display fine.
    - RPN.GB    : 100%


0.0.0:
  - ~ 99% CPU support    (*note: this figure was obviously wrong)
  - Crude LCDC support.


3 : Road Map
~~~~~~~~~~~~

These are the list of features I hope to see in version 0.0.1 of GooBer

* - Top priority, ! - High Priority, ~ - Low Priority

0.0.1: 
       * Faster LCDC Support,
       * Line-by-line sprite rendering, (0.0.0a blit'ed sprites all at once at VBLANK, ugh)
       * MBC support
       ! Stave saving
       ~ Sound

       
4 : Why ?
~~~~~~~~~

I dunno, because I can? Ask a stupid question and what do you get eh? :D
Basically, I wanted to write an emulator and the Gameboy seemed like the best
system to get my feet wet with: Reletively simple architechture and a
reletively large information base considering Nintendo never actually released
detailed technical specs.


5 : How to use
~~~~~~~~~~~~~~

When GooBer initializes the main menu is displayed. Currently the only options
are "GooBer" and "Gameboy". The "GooBer" menu displays Open, Snapshot and Exit.

      Selecting "Open" will yield the Allegro file selector dialog, where you
      can select a ROM file. When you click "OK" the ROM will begin to execute.
      
      Selecting "Snapshot" will take a snapshot of the gameboy display.

      Selecting "Exit" will exit GooBer. 

  The Gameboy menu displays "
  If you have something against GUI you can simply hit escape and the menu
will disappear, pressing escape toggles the GUI basically. To open a ROM
without the aid of GUI simply press 'o' and you can select a ROM. To exit
without the aid of GUI simply press 'x' and GooBer exits. Also, Pressing 'r' 
resets the GameBoy.

  When you load a ROM you use the keyboard as the GameBoy's joypad. The default
layout is listed in "goober.cfg" under [default_layout]


6 : How to contact/bitch/flame/etc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

If you need to contact me to ask questions (stupid or otherwise), bitch about
lack of quality, flame me or any other reason go ahead and email me at :
robotbebop@yahoo.ca, be warned, however; I will not respond to questions like
"Why are you doing this?" or "Don't you know about NO$GMB"


7 : "Props"
~~~~~~~~~~~
I would like to take these bytes to thank the following individuals:

  - stainless, TRAC, Lord_Nightmare and dalias, without whom I wouldn't have
    gotten as far on GooBer as I have, nor would I have learned the basic
    fundementals of emulation.

  - Martin Korth, doesn't know who I am, but without his Emu- er, Debugger,
    I would've had nothing to compare the execution of GooBer with :P I guess
    he is right about most people comparing the execution of their emulators
    with No$GMB :D

  - My Mommy, for kicking me off the internet two weeks prior to the time of
    writing, leaving me with not much else to fiddle with.

  - And last, but not least, the obligatory thanks to : You, the user!


