  ___           _      _   _   ____  ___  
 / . \         I I _  I \ I I I   / /  _\                             
 I  _/  _   __ I I/ / I  \I I I  \  I \_                              
 I  \  /.\ / / I   /  I \   I I  /  \__ \
 I_I_\ \_/ \_\ I_I\_\ I_I\__I I___\ /___/ RockNES X 
 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- First released on March 9th, 2000
 www.rocknesx.com

 RockNES X by Alexandre da Veiga, alexandre@rocknesx.com
 RockNES (DOS) by Fx3, fx3rnes@hotmail.com

 Version 1.61, 12/08/2000
 
 ----------------------------------------------------------------------------
 Disclaimer:

 - I am not affiliated with Nintendo or any other company, nor advocate 
 the piracy of Nintendo games. This software is freeware, for absolutely
 non-commercial use. It may be distribute freely *as is* (non-modified).
 Commercial games cannot be packaged with this emulator.
 - When you use this software you do so at your own risk. The author cannot
 be responsible for any loss or damage resulting from the use or misuse of
 this software.
 - If you do not agree with these terms, DELETE THIS SOFTWARE NOW.
 ----------------------------------------------------------------------------

 Warnings BEFORE you contact me:
   
 - Do not send STUPID questions.
 - Do not send/request *anything* (pirate stuff, ROMs or junk).
 - Do not ask me 'how-to-use' RockNES X.
 - Do not ask me 'how to write/start' anything (like emulators).
 - Do not ask me about future versions.
 - Do not ask me about finding games.
 - *READ* this doc fully before asking me about anything.

 ----------------------------------------------------------------------------
 There are tons of bad dumps, most of them with junk in the header. Use a
 good tool to fix them... However, if after all it fails, so submit me the
 game information (an easy text file with the game title, mapper and a shorty
 problem description). Ah, if the mapper is not supported, send me docs.
 ----------------------------------------------------------------------------
		
 What's new:
 -----------

 X-specific:
 
 - This new RockNES X version can be 40-120% faster than the previous version.
 - Added triple buffering
 - 8 bit rendering engine optimized
 - Auto frameskip added (highly recommended!)
 - Ppu code optimized
 - Now RockNES X creates automatically the savegames, movies and battery save directories when necessary.
 - Battery save fixed
 - Added screenshot support
 
 Emulation:

 - Mapper #33 improved somewhat (support Flintstones);
 - Mapper #43 (150-in-1) changed to number #235;
 - Mapper #48 (SMB2j (LF36)) changed to number #43;
 - Fixed mapper #21 (Ganbare Goemon Gaiden 2 has correct gfx);
 - Fixed mapper #68, more games are playable;
 - Fixed VS Atari RBI Baseball patch (on reads);
 - Fixed pAPU timing (was completly wrong, damn!), output is better;
 - Added ppu tile caching system
 - Added a decent savestate format - unhappily NOT compatible with the old ones;
 - Added a new method for noise luts, much clean;
 - Added mapper #180 (Nichibutsu, game Crazy Climber supported);
 - Added preliminary VS UniSystem reads handler (Atari RBI Baseball works),
   thanks to xodnizel;
 - Added a cheap hack to get Paris-Dakar Rally Special working (map66);
 - Fixed a major bug in the mapper #40 (SMB2j) reset;
 - Fixed mapper #83 CHR bankswitch (World Heroes2 works);
 - Fixed mapper #232 (BF9096 chip - used by Codemasters' Quattro carts);
 - Fixed mapper #233 (the '20-in-1' half works, 'reset' to active);
 - Fixed number of cpu cycles per sprite DMA transfer;
 - Fixed ppu layout (frame starts at VBlank);
 - Fixed ppu latch system and ppu reads, thanks to Ki for his findings
   (pass ok in the tests programs).
 - Fixed mirroring state saving (when a mapper uses a custom mirroring);
 - Tweaks in the FDS driver, more games are working;
 - Cleaned up the 16k CHR RAM support code, used by mapper #13;
 - General cleanups to boost the performance;
 - Added a 'secret' mapper, as explained in the rocknes homepage...
 - NES sound driver partially rewritten. Added real-time state for register
   $4015, which fixes sound output for all games;
 - Added mapper #76 driver (Namco 109);
 - Added mappers #72, #92, #101 (Taito mappers);
 - Added mappers #83 (Cony mapper), #240;
 - Added mapper #100 (NESticle MMC3 hack mode, untested);
 - Fixed mapper #70 (small hack for Kamen Rider Club);
 - Fixed mapper #113 (to support HES carts);
 - Removed duplicated pattern table saving on games with no VROM.
 - Fixed a bug on sound reset, the noise channel is now working properly.
 - Better noise emulation;

 Note: if you want to check out past changes, feel free to view 'oldnews.txt'.

 ----------------------------------------------------------------------------

 Minimum Requirements

 DirectX 7
 Pentium-class processor (Pentium-II recommended)
 A good (fast!) videocard
 Windows-compatible soundcard for sound

 Note: PLEASE BE SURE YOU HAVE DIRECTX7 or greater installed in your system
       BEFORE ASKING ME WHY THE EMULATOR DOESN'T WORK!

 ----------------------------------------------------------------------------

 The RockNES X Description/Features

 This software is a Nintendo Entertainment System 8-bit (NES) emulator.
 The RockNES X is the Win32/DirectX 7 (Windows 9x, Windows 2000) version of
 the original RockNES emulator for DOS.

 Currently, the following things are emulated:

 - 6502 CPU emulator by Matthew Conte;
 - Full PPU emulation with scanline gfx engine;
 - NES I/O (such as joypads);
 - Sound emulation (all the 5 channels and VRCVI sound);
 - Palette (very closed to real NES);
 - Color emphasis used by some games / NES demos;
 - Monochrome mode;
 - Save RAM (backed battery if present/used by a game);
 - Mappers 0,1,2,3,4,5,6,7,8,9,10,11,13,15,16,17,18,19,20,21,22,23,24,25,26,
   32,33,34,40,41,42,43,64,65,66,68,69,70,71,73,75,78,79,85,88,90,91,94,97,99,
   110,113,117,118,151,160,184,187,189,225,226,227,228,229,230,231,232,233,234,
   246 and 255.
   Most of these 70 mappers have full support.

 The following extra features are emulated as well:

 - Konami's jap. VRCVI extra sound chip emulation (Akumajo Densetsu/Madara);
 - VS Unisystem arcade machines (missing linked-system) in .NES format,
   emulated as mapper #99;
 - Famicom DiskSystem, emulated as mapper #20. To play games, you'll need FDS
   images and the BIOS 'disksys.rom' in the same folder where you placed RockNES X.
   Find it by yourself, PLEASE do not request it.
 - NES Movies (*.RMx files, x=0..9);
 - Save states (*.RNx files, x=0..9);
 - NESticle saved states (*.STA,*.STx files) loading;

 The X features:

 - Windows GUI interface;
 - Full screen video at ANY resolution supported by the videocard;
 - Windowed Mode at ANY size you want. Currently, 8-bit windowed mode is not
   fully supported;
 - Stretched video mode;
 - 256x224 alternate video mode;
 - 8, 16, 24 and 32 bits color mode supported (many newer videocards work better
   in higher video color depths (16-bit or higher);
 - Scanlines support;
 - Pixel Interpolation (great, but only if sopported by the hardware);
 - Joystick support (if Windows (DirectX) supports, the RockNES X supports);

 About NESticle saved states:

 "Anything that extends the life of NESticle is evil".
 It's possible to load NESticle saved states, but the support is limited.

 About command line:

 You can use ROCKNESX <romfile> to start a game from the prompt, or to
 create game shortcuts.

 ----------------------------------------------------------------------------

 How to Use

 Just run ROCKNES X and try... it's pretty easy!
 When the game starts, the keys are:

 Emulator Keys:

 <ESC> - Exit

 <F1>  - Help

 <F2>  - Save state (*.RSx, x=0..9 is the current slot).
 <F3>  - Slot selector (0..9 -> 0..). <Shift+F3> for reverse order.
 <F4>  - Load state.

 <F5>  - Soft Reset.
 <F6>  - FDS disk side change (A->B->C->D->A...).
 <F7>  - FDS disk insert/eject.

 <F9>  - Movie record (again to stop).
 <F10> - Movie play (again to stop).

 PAUSE - Pause/Resume the emulation

 KEYPAD (+) - increase frameskip (default=0, limit=9).
 KEYPAD (-) - decrease frameskip.

 
 Default Keys for Player 1:

 <Enter>   - Start Button
 <R Shift> - Select Button
 <Z>       - A buttom
 <X>       - B buttom

 note: the config file (rockconfig.dat) is created when you run RockNES X for
        first time (When it's not found).

 ----------------------------------------------------------------------------

 What is a NES Mapper?

 (by Fx3)

 1. 'NES mapper' is a function that handles CPU reads/writes from/to a
 specific memory region. In other words, it's the 'emulation' of a special
 chip (as known as MMC = multi-memory-controller) and everything to suit the
 internal cartridge/board architecture. It does extra functions to suit
 the game, such as video ROM switching (the character data, graphics), PRG
 pages (data which should be a game music, stage data or own 6502 program),
 IRQs (mostly to display scores, like Super Mario Bros. 3 score, or some
 cool raster effects, such as Rockman 6 title screen), extra sound channels
 (such as Akumajou Densetsu, the japanese CastleVania 3) and more.

 2. When a game uses a mapper (notice that Super Mario Bros. or any other
 single game DOES NOT USE), the CPU writes to some memory areas, mostly to
 $8000-$FFFF. Each address does something, or a range by itself.

 ----------------------------------------------------------------------------

 Thanks to:

 Fx3 - for all the emulator core!
 Roberto - for all the support and testing!
 kojote/lus - for the RockNES ASCII logo (hey, do you remember?)
 Luiz - for the artwork!

 ----------------------------------------------------------------------------

 KEEP PLAYING... KEEP THE DREAM ALIVE.