NESten 0.6 Beta Doomsday: Readme.txt                             02/11/00

Written by Brad "Zophar" Levicoff for TNSe

------------
Introduction
------------

NESten actually started as a fruit & vegetables emulator. Titled M.U.R.D.E.R
(My unnamed rodent didn't eat rice), this was a test to see how long it would
be before cavities would develop in the human mouth. Actually, wait, no. The
term "NESten" is a Norwegian word for "almost". Therefore, NESten is "Almost
NES". Get it? Didn't think so.

The project began as a test to see how well emulation of the NES could be
done in Delphi. Amazingly enough, the emulator can run full speed on a P166
MMX (with sound enabled, a decent video card is recommended).

If you don't like the emulator, you're welcome to try out other emulators,
such as N'tendo, iNES and Pretendo.

---------------
Version History
---------------

See whatsnew.txt

-------------------
Supporting Features 
-------------------

- NESten fully supports the following mappers:

0 (none), 1 (MMC1), 2 (UNROM), 3 (CNROM), 4 (MMC3),
7 (AOROM), 9 (MMC2), 10 (MMC4), 11 (Color Dreams),
19 (Namcot 106), 21 (Konami VRC4), 22 (Konami VRC2 Type A),
23 (Konami VRC2 Type B), 24 (Konami VRC6 A0/A1), 26 (Konami VRC6 A1/A0),
32 (Irem G-101), 33 (Taito TC0190), 34 (Nina-1) and 40 (SMB2j Lost Levels)

- NESten partially supports the following mappers:

16 (Bandai), 17 (FFE F8xxx), 25 (Konami) and 65 (Irem H-3001)

- Ability to play NSFs (NES sound files). Denoted as Mapper 666.
  (The number 666 is a coincidence!)
- Save States (Standardized NES save state SS?)
- Movie recording (NESten's own format: SM?)
- 4 player support
- Fast Scanline based renderer
- 8x8 and 8x16 sprites
- Recompiling 6502 core (all opcodes emulated) and Interpretive core
- Horizontal and Vertical Scrolling
- SRAM saving
- Emulates all NES sound channels:
   Square 1
   Square 2
   Triangle
   Noise (not 100% perfect)
   PCM (including RAW PCM support)
   VRC6 (for games such as Castlevania 3 japanese)
- Support for all controllers that support DirectInput (up to 4)
- WAV logging
- Cheat finder
- Fullscreen mode (320X240 & 640X480 for scanlines)
- Multiple palette support (just load a .PAL file)
- And so much more, your brain will freeze over!

--------------------------
Unsupported & Known issues
--------------------------

- Timing is not perfect
- Not all mappers are emulated perfectly (anyone have additional info?)
- The GUI is not visible in the fullscreen mode.
- Switching desktop color depth while NESten is running sucks
- Scanlines in fullscreen mode are buggy for some people
- No extra peripheral support (lightgun, powerglove, who cares anyway?)
- If you have less than a P166, you won't have too much fun

--------------------
Working the emulator
--------------------

To have fun playing with yourself in NESten, you should have a P166 or higher
(P200+ is recommended for playing with sound). The following should help you
learn how to run the emulator in the event that you have a brain lock and
can't figure it out on your own. ;) Having said that...

File Menu:
- Load ROM
   This opens up the NESten Load Dialogue where you may load a ROM or NSF, as
   well as get information on the many mappers that NESten supports. This
   menu is more informative than the generic load dialog.
- Load Dialog
   The generic load dialog for NESten. Fans of iNES and BioNES will recognize
   it. You can load NSFs and ROMs through this as well.
- Unload ROM
   Frees the currently loaded ROM from memory.
- Priorities
   Use this option to change the priorities for the core & rendering engine,
   and the sound core. If you notice NESten lagging when many programs are
   open, you'll want to set these higher.
- Reset Configuration
   Click on this, and you will reset NESten to its default configuration.
- Quit
   Use "Quit" to open up the ROM downloading script. Works in conjunction with
   Alt + F4 in mIRC. ... actually, it just quits the emulator.

CPU Menu:
- Run
   Starts emulation. Useful if you just hit "Stop" and want to resume the
   game.
- Stop
   Stops emulation. Useful if you find the need to pause the game to take a
   quick leak.
- Save State
   Saves the game's state in .SS? format.
- Load State
   Loads the game's state in .SS? format.
- Prev Slot
   Changes the save state slot to the previous slot.
- Next Slot
   Changes the save slot to the next slot.
- Incremental Saving
   With Incremental Saving on, every time you save state it automatically
   changes to the next slot without asking. Quite useful. (TNSe made me say
   that.)
- Record Movie
   Records a NES movie of you playing with yourself in .SM? format.
- Play Movie
   Plays a NES movie of you playing with yourself in .SM? format.
- Stop Movie
   Stops a NES movie of you... ahh you get the point.
- Hard Reset
   Resets the game as if you had just turned off the NES.
- Soft Reset
   Resets the game as if you had just pushed the 'reset' button on the NES.
- Use Interpretive Core
   Choosing this option will allow NESten to use the slower core. Useful in
   rare cases where there's a bug with the recompiling core.
- Show illegal ops
   Allows NESten to display illegal opcode messages when it hits them.
- Timing
   This option is for advanced users who wish to fiddle with the NES's
   timing. This also fixes weird bugs like in CV3.
- Cheat Console
   Allows you to enter Game Genie codes & use the cheat-finder. See cheat.txt
   for more information. (To be written)

Video Menu:
- Fullscreen
   NESten will run in a 320X240 or 640X480 fullscreen mode depending on
   the window size. Fullscreen mode is usually faster than windowed mode.
- NESten Float mode
   Allows NESten to 'float' when focus is not on it. Similar to 'always on 
   top'.
- Sleep while Sync'ing
   Helps preserve CPU by NESten not using as much CPU while vsync is on.
- Sync
   Allows you to choose how NESten syncs itself: 60FPS, 50 FPS, monitor refresh
   rate, or off. 60 FPS is recommended for all NTSC games, 50 FPS for PAL.
- Size
   Allows you to choose 1X or 2X size windowed mode. "Maintain Aspect Ratio on
   Stretch" allows you to stretch the window without distorting the ratio.
- Skip
   Lets NESten skip frames. This should never be set on unless you have a very
   slow computer and find NESten dragging along. 
   (Hardware upgrade recommended instead :)
- Buffer
   Can be set to software, hardware or Auto. This setting should only be 
   altered if you're having video problems.
- 256X224 (NTSC)
   This should always be on unless you're playing PAL games. NTSC games played 
   with this setting off will result in the top part and lower part of the
   screen not being clipped, which can look weird.
- Effects
   This allows you to choose 100% scanlines, which makes your hi-res monitor
   look like a crappy T.V. Useful! (Does however, give a little speed increase)
- Palette Console
   This option opens the Palette Console.
   The Palette console allows you to load a different palette, modify a palette,
   save a palette etc. You can choose from the ones that come with NESten or 
   you can create one yourself.

Sound Menu:
- Enabled
   Enables sound. Should always be on unless you have a very slow computer or 
   a hearing disability.
- Buffers
   Changes the sound buffering numbers. Only tinker with this setting if you 
   find your sound crackling or lagging (useful for crappy $5 SB clones).
- Channels
   Lets you choose which channels to turn on/off. Useful if you're bored, or if
   a particular channel sounds strange and you want to submit a bug report.
- Start / Stop Logging to WAV
   You can log any NES tune to WAV with this option on. Be warned, however, 
   44100Hz 8 bit mono WAVs do take up a bit of space. Time to break out the MP3
   encoder.

Input Menu:
- Player 1 input
   Allows you to select the keyboard or joystick controls and configure them 
   for player 1.
- Player 2 input
   See above.
- Player 3 input
   See the above "See above".
- Player 4 input
   See above the "See the above"'s See above.

View Menu:
- Stats
   Displays FPS (frames-per-second) counter and total frames counter.
- Debugger
   Opens the Debugger window.
- Info
   Opens the Info window that displays ROM header information such as PRG/CHR
   size and mapper #.
- Recompiler Data
   Displays Recompiler Data. (Right-Click on one to make a .DMP file)
- NSF control
   Allows you to change between different tracks in an NSF file.
- DirectX Information
   Displays DirectX information. Used for bug submitting purposes.
- About
   Opens the about window which displays version #, contact information and 
   thank-yous.

-----------
Coming Soon
-----------
- To be announced

-------------------------------------
Thanks and Greetings to the following
-------------------------------------

Zophar - For writing the documentation, beta-testing at 4 in the morning, and
hosting the official NESten homepage @ tnse.zophar.net. Be sure to visit 
www.zophar.net for all your emulation needs.

WARNING: These names have been put in a RANDOM order by a semi-sentient program!

Repulse, nyef, Jabo, y0shi, [_TRAC_], Neill1712, MickoZ, /Firebug/, Tom-Servo, Niiru,
][ellbent, Azimer, orkim, kevtris, Bananmos, [Vector], SnowBro, _Bnu, Crix0r, 
Memblers, Lycia, ReaperSMS, W1k, TwoBear, c003y, EFX, loopy, JL_Picard, Quietust,
Destop, NeoBlaze, {Slime}
... And the rest I forgot to type in. (or they change nicks so often 
that I don't remember it :P) (and to make the bots happy, |2099| and Jaellyn)


AND ALL YOU OTHER ON #n(letters left out,private channel),
#sn(yet another private channel), #ZopharsDomain,#kinox. 
AND YOU. YES EVEN YOU :)  
  
-------
Contact
-------

You can reach me at TNSeOWNZ@zophar.net
Official Homepage located at: http://tnse.zophar.net
Bug reports can be posted on the NESten messageboard.

PRAISE SATAN! (But do it before it is too late!)

-- EOF --