
__________________________________________________________________________________________

          ______  _____  ______ _______ ______   ______ _____ _    _ _______
         |  ____    |   |  ____ |_____| |     \ |_____/   |    \  /  |______
         |_____|  __|__ |_____| |     | |_____/ |    \_ __|__   \/   |______
                                                                    
              G      I      G      A       D      R      I      V      E


             GigaDrive is a Genesis / MegaDrive emulator for the GP32.


  #include <std_disclaimer.h>
    I do not accept responsibility for any effects, adverse or otherwise, that
      this code may have on you, your computer, your sanity, your dog... etc.
    You can use this software freely as long as you don't use it commercially.
__________________________________________________________________________________________

What's New

0.023
  + Very premilinary YM2612 sound. It plays a simple fixed volume square wave beep in
    response to Key On/Off events. In other words it sounds worse than a Spectrum!
    And yes, it will get better don't worry!
    Please don't e-mail me saying the sound sounds funny, I realise!
    
    Of course since there is no Z80 emulation only the minority of games which don't
    need the Z80 for sound work. I've compiled a short list, let me know if you find others
    as I'm curious about this!

    Afterburner II
    Dynamite Heady
    Golden Axe 2/3 
    Gunstar Heroes 
    Gynoug
    Mega Bomberman
    Moonwalker (not running yet)
    Phantasy Star 4
    Revenge of Shinobi
    Sega Soccer
    Shinobi 3
    Sonic 1
    Sparkster and Rocket Knight Adventures
    Street Fighter 2 Plus Champion Edition
    Streets of Rage
    Streets of Rage 2
    Strider
    Sword of Vermillion
    Test Drive 2
    Toe Jam and Earl


0.020
  + I think I fixed that emulator hang - it seemed to be something to do with when the
    time passed was less than one frame (e.g. the emulator was running too fast).

0.019
  Cyclone changes:
  + Added movep opcode (Sonic 3 works)
  + Fixed a problem with DBcc not decrementing if the condition is false (Shadow of the Beast)

0.018
  Cyclone changes:
    + Added SBCD and the flags for ABCD/SBCD. Score and time now works in games such as
      Rolling Thunder 2, Ghouls 'N Ghosts
    + Fixed a problem with addx and subx with 8-bit and 16-bit values.
      Ghouls 'N' Ghosts now works!
    + Alien 3 now works
    + Added ABCD opcode (Streets of Rage works now!)

0.017 Added Window (score display)

0.016 (Might be slightly faster)
0.015
  Fixed Sonic 1 crash
  The New Zealand Story is playable
  Added SMD support
  Fixed sprite priority

Cyclone Fixes
  + Added dbCC (After Burner)
  + Added asr EA (Sonic 1 Boss/Labyrinth Zone)
  + Added andi/ori/eori ccr (Altered Beast)
  + Added trap (After Burner)
  + Added special case for move.b (a7)+ and -(a7), stepping by 2
    After Burner is playable! Eternal Champions shows more
  + Fixed lsr.b/w zero flag (Ghostbusters)
    Rolling Thunder 2 first level only now works
  + Fixed N flag for .b and .w arithmetic. Golden Axe works!


__________________________________________________________________________________________


  GigaDrive is a partially-complete MegaDrive emulator for the GP32. It emulates the
  hardware of the MegaDrive console on the GP32. Basically, it makes your GP32 act like
  a MegaDrive.

  It uses the same code-base as my Pocket PC 'PicoDrive' emulator.

__________________________________________________________________________________________

                                   How to use

  Copy the GigaDriv.fxe file to your GP32.
  It overclocks to 156mhz, if you prefer, you can use the 132 version instead.
  Put rom images in SMD or BIN format in the /GPMM/GENESIS directory of your GP32


  This is just an early version so there's quite a few things missing or not up to scratch,
  e.g. sound, z80

__________________________________________________________________________________________

                                    Controls
In Game:
  Control Pad = Megadrive Pad
  Start       = Megadrive Start
  Select      = Megadrive A button
  B           = Megadrive B button
  A           = Megadrive C button
  L+R - switch to menu

In Menu:
  Control Pad = Select Rom
  A           = Load Rom
  Select      = Exit Emulator

__________________________________________________________________________________________

What's currently emulated:

  68000 : Yes

  VDP
    Scroll A/B  : Yes
    Line Scroll : Yes
    Sprites     : Yes
    Window      : Sort of
    H-Ints/HV Counter : Sort of

  Sound:
    Z80    : Not yet (faked)
    YM2151 : Not yet
    PSG    : Not yet

  Compatibility: ~50% ?

__________________________________________________________________________________________

Web page and contact info:

  I (Dave) can be reached at the usual spot, my web-page is:

    http://www.finalburn.com/

  And my e-mail address is as follows, just change the (atsymbol) to @
  
    dev(atsymbol)finalburn.com

  NB - I had to shut down the 'dave' mailbox so it's now 'dev', because the 'dave'
  e-mail address was printed everywhere and spambots logged it and spammed it to death! :P
  So if you must quote it, please quote it as above... or better yet just link to my webpage.

Thanks to:
  Craig for sending me a GP32!
  Mr. Spiv for his compression utility and generally being brilliant
  Sam for suggesting the GBAX2004 comp!
  Ryleh for trying out Cyclone in fGen32
  Max for doing the Smartphone version
  Lars for doing the P900 and P800 Symbian versions
  Charles Macdonald, for researching consoles right down to every individual bit!
  MameDev+FBA, for keeping on going and going and going

  ...and anyone else I forgot!

__________________________________________________________________________________________
