                                  FCE Ultra
                                    .22

                            http://www.kc.net/~zaik/
			 http://fceultra.emuunlim.com/
  			   http://sonicice.net/fceu/

What is new:
 
        *  Sprite/BG priority code rewritten.  It is now noticeably faster
           and much more accurate.
        *  Tweaked support for MMC2.  "Punch Out!" works well now.
        *  Added support for mapper 240.
        *  Sound is now oversampled at 16 times the playback rate.
        *  Mapper 66 emulation bug fixed.
        *  Fixed a page-crossing-detection bug in the conditional branch code
           in the 6502 emulator.
        *  Decreased volume of the AY-3-8910 sound channels.
        *  Rewrote code for analog joystick support.

Contents:

  1.  Basic information
        1.0 What FCE Ultra is.
        1.1 System requirements.
  2.  How to use
        2.0 Starting FCE Ultra
        2.1 What to do once emulation has begun
  3.  Compatibility
        3.0 Notes
        3.1 VS Unisystem Notes
  4.  Extra
        4.0 Contacting the author
	4.1 Credits


/******************************************************************************/
/*  1.0)	What FCE Ultra is:                                            */
/******************************************************************************/

        FCE Ultra is an NTSC and PAL Famicom/NES emulator for DOS and
 	Linux. It is based upon Bero's original FCE source code.  Current
	features include good PPU, CPU, pAPU, expansion chip, and joystick
	emulation.  Also a feature unique to this emulator(at the current
        time) is authentic Game Genie emulation!  Save states and snapshot
	features also have been implemented.  The VS Unisystem is emulated
	as well.

        FCE Ultra currently supports the following mappers(many partially):

Number:         Description:                    Game Examples:
--------------------------------------------------------------------------------
  0             No Mapper                       Donkey Kong, Mario Bros
  1             Nintendo MMC1                   MegaMan 2, Final Fantasy
  2             Simple 16KB PRG Switch          MegaMan 1, Archon, 1944
  3             Simple 8KB CHR Switch           Spy Hunter, Gradius
  4             Nintendo MMC3                   Recca, TMNT 2, Final Fantasy 3
  6             FFE F4 Series(hacked)           Saint Seiya, Ganbare Goemon
  7             AOROM                           Battle Toads, Lion King
  8             FFE F3 Series(hacked)           Doraemon Kaitakuhen
  9             Nintendo MMC2                   Punchout!
 10             Nintendo MMC4                   Fire Emblem, Fire Emblem Gaiden
 11             Color Dreams                    Crystal Mines, Bible Adventures
 13             CPROM                           Videomation
 15             Multi-cart                      100-in-1: Contra Function 16
 16             Bandai                          Dragon Ball Z, Gundam Knight
 17             FFE F8 Series(hacked)           Parodius, Last Armageddon
 18             Jaleco SS806                    Pizza Pop, Plazma Ball
 19             Namco 106                       Splatter House, Mappy Kids
 21             Konami VRC4 2A                  WaiWai World 2, Ganbare Goemon Gaiden 2 
 22             Konami VRC4 1B                  Twinbee 3
 23             Konami VRC2B                    WaiWai World, Getsufuu Maden
 24             Konami VRC6                     Akumajo Densetsu(Dracula 3)
 25             Konami VRC4                     Gradius 2, Bio Miracle: Boku tte Upa
 26             Konami VRC6 A0-A1 Inverse       Esper Dream 2, Madara
 32             Irem G-101                      Image Fight 2, Perman
 33             Taito TC0190/TC0350             Don Doko Don 1&2
 34             Nina-1                          Deadly Towers, Bug Honey
 40             (pirate)                        Super Mario Bros. 2
 41             Caltron 6-in-1                  Caltron 6-in-1                                                 
 64             Tengen RAMBO-1                  Shinobi, Klax
 65             Irem H-3001                     Daiku no Gensan 2
 66             GNROM                           DragonBall, SMB + Duck Hunt
 67             Sunsoft Mapper "3"              Fantasy Zone 2
 68             Sunsoft Mapper "4"              After Burner 2, Nantetta Baseball 
 69             Sunsoft FME-7                   Batman: ROTJ, Gimmick!
 71             Camerica                        Fire Hawk, Linus Spacehead
 73             Konami VRC3                     Salamander
 75             Jaleco SS8805/Konami VRC1       Tetsuwan Atom, King Kong 2
 76             Namco 109                       Megami Tenshi 1
 78             Irem 74HC161/32                 Holy Diver
 79             AVE                             F15 City War, Krazy Kreatures
 80             Taito X-005                     Minelvation Saga
 85             Konami VRC7                     Lagrange Point
 87             ??                              Argus
 90             Pirate                          Super Mario World, Mortal Kombat 93             ??                              Fantasy Zone
 93             ??                              Fantasy Zone
 94             ??                              Senjou no Ookami
 97             ??                              Kaiketsu Yanchamaru
 99             VS System 8KB CHR Switch        VS SMB, VS Excite Bike
112             Asder                           Sango Fighter, Hwang Di
119             MMC3-TQROM Board                High Speed, Pin*Bot
151             Konami VS System Expansion      VS The Goonies, VS Gradius
180             ??                              Crazy Climber
184             ??                              Wing of Madoola, The
225             Multi-cart                      58-in-1/110-in-1/52 Games
226             Multi-cart                      76-in-1
228             Action 52                       Action 52, Cheetahmen 2
229             Multi-cart                      31-in-1
240		??				Gen Ke Le Zhuan, Shen Huo Le Zhuan
246             ??                              Fong Shen Ban

        
/******************************************************************************/
/*  1.1)	System requirements:                                          */
/******************************************************************************/

        Minimum system requirements:

        Pentium 60 MHz
        8 MB RAM
        400 KB free disk space
        MS-DOS 6.0
        VGA adapter

        Recommended system requirements:

        Pentium 233 MHz
        16 MB RAM
        5 MB free disk space
        Windows 9x(LFN support)
        SVGA adapter with 512 KB of RAM
        Sound Blaster compatible sound card


/******************************************************************************/
/*  2.0)	Starting FCE Ultra                                            */
/******************************************************************************/

        Start FCE Ultra using the following format:

        fceu <arguments> romimage.nes

        <arguments> can be one or more of the following:

        -vgamode x      Select VGA mode(all are 8 bpp).
                        1 = 256x240
                        2 = 256x256
                        3 = 256x256(with scanlines)
                        4 = 640x480(VBE 2.0 - with scanlines)
                        5 = 640x480(VBE 2.0 - "T.V. simulation")
                        6 = 256x224(with scanlines)
        -ntsccol        Emulate an NTSC's TV's colors based on user-supplied
                        hue and tint values.
                         0 = Disabled.
                         1 = Enabled.
        -pal            Emulate a PAL NES.
        -sound	 x    Sound
                        0 = Disabled.
                        1 = Enabled.
	-joy x	      Joystick
		 	0 = Disabled.
			1 = Enabled.
        -novsync        No speed limiting.
        -gg             Activate Game Genie emulation.



/******************************************************************************/
/*  2.1)	What to do once emulation has begun:                          */
/******************************************************************************/

        Once emulation has begun, play as normal.  The mapping of controls
        is:

        Left Control            B
        Left Alt/X              A
        Enter/Return            Start
        Tab                     Select
        Cursor Down             Down
        Cursor Up               Up
        Cursor Left             Left
        Cursor Right            Right

        C                       Insert Coin.
        V                       View status of DIP switches.
        D                       Toggle DIP switch modifications allowed
                                (toggles save state selection abilities).

        T                       Select tint to adjust.
        H                       Select hue to adjust.
        +/-                     Increase/decrease tint or hue.

        0-9                     Select save state.
        `                       Temporarily disable speed limiting.
        Caps Lock               Switch between virtual joysticks.
        1-8(VS Unisystem)       Toggle dip switches.

	L			Lock virtual console.
	U			Unlock virtual console.
        CTRL R                  Reset.
        F5/F7                   Save/Load state.
        F9                      Save screen snapshot.
        ESC/F12                 End emulation.


/******************************************************************************/
/*  3.0)	Notes                                                         */
/******************************************************************************/

        
        If you believe FCE Ultra is too slow, you can try the following:
         * Use the "-novsync" command-line option.
         * Don't use a PC joystick.  Polling it slows down the emulator
           immensely.
         * Use a VESA video mode.  It is faster on my machine, but only
           while running under Windows.         
         * If you're in a multi-tasking environment, kill some of the other
           processes.
         * Turn the sound off.


        FCE Ultra will automatically calibrate your joystick at start up.
        Not touching anything on your joystick is imperative during start up.
        Automatic calibration will work well for most people; however, if
        you encounter problems, please email me and I might consider adding a
        manual calibration option.

        Sound Blaster sound output requires that the 'BLASTER' environment
        variable is set.  To set it(permanently), add the following line
        to your autoexec.bat file:

        set BLASTER=A240 I5 D1

        Where 240(hexadecimal) is the Sound Blaster's base I/O address, 5
        is the IRQ number, and 1 is the DMA channel.  *DO NOT GUESS AT THE
        SETTINGS*  Invalid settings can result in very bad things happening.


        Some games incorrectly have the 4-screen VRAM bit set in the iNES
        header.  This will result in graphical corruption, especially during
        scrolling.  Clear this bit to fix the problem.

        Sometimes save states created with previous versions will not work
        correctly(usually the screen is garbled, but game is fine, for the
        most part).  This usually will only occur with more complex mappers,
        like those that allow "weird" things such as using ROM as name table/
	attribute table data.


/******************************************************************************/
/*  3.1)	VS Unisystem Notes                                            */
/******************************************************************************/

        The VS Unisystem is a fairly difficult system to emulate, due to
        the newness of it(to emulation authors).  Here is how to use VS
        Unisystem emulation on FCE Ultra:

          ROM Images:

           * All VS Unisystem ROM images should have the VS Unisystem bit set.
           * VS Unisystem games that are about 49,000 bytes in size should
             use mapper 99(CHR bank select via $4016).
           * Other VS Unisystem games will use other mappers.  Here is a short
             list:


               CastleVania - 2
               Dr. Mario   - 1
               Goonies     - 151
               Gradius     - 151
	       Ice Climber - 99
               Platoon     - 68

          Running:
           
           * Use the C key to insert a coin.
           * Keys 1-8 control the DIP switches(after pressing D).

          Palette(s):

           * The colors in many VS Unisystem games may be incorrect.  This
             is due to each game having its own PPU, and thus using a
             different palette than games that use a different PPU.


/******************************************************************************/
/*  4.0)	Contacting the author                                         */
/******************************************************************************/

        I can be reached via email at zaik@kc.net.
        Bero can be reached via email at bero@geocities.co.jp


/******************************************************************************/
/*  4.1)	Credits                                                       */
/******************************************************************************/

\Firebug\	-	High-level mapper information.
Bero		-	Original FCE source code.
Donald Moore    -       DC PasoFami NES packs.
DJ Delorie	-	DOS port of gcc.
goroh		-	Various documents.
Jeremy Chadwick	-	General NES information.
Justin Smith	-	Giving me obscure ROM images in the dark ages of
			NES emulation.
Kevin Horton	-	Low level NES information and sound information.
Mark Knibbs	-	Various NES information.
Marat Fayzullin	-	General NES information, CPU emulation core.
Matthew Conte	-	Sound information.
Rob Mocca	-	DC PasoFami NES packs.

...and everyone else who has helped me.

