NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v21

http://xport.xbox-scene.com

what's new:

 Core:

 - CUE sheet loading for ISO/MP3 is fixed

 - Loading state from BIN/CUE would not restart the CDDA
   being played.  Fixed.

 GUI:

 - Brought up to date with most recently added features


Stella, Gnuboy, SMSPlus, FCEUltra, HUGO, NeoPop, DGen, Bochs, HUGO-CD,
FMSXBox, Bliss, WinSTon, Gens, Z26X, StepmaniaX, PCSXBox, XBoyAdvance,
DOSXBox, AtariXLBox, MirrorMagicX, KoboX, MaelstromX, MarblesX, Vice64X,
Vice20X, VicePETX, KegsX, XPired, AdamX, WonderSwanX, BeatsOfRageX,
PowermangaX, LynxBox, BlueMSXBox, GladiatorX, AmphetamineX, StarfighterX,
PachiX, BlobWarsX, OdysseyX, ArnoldX, X68000X, WinUAEX, MekaX,
MednafenX-NES, MednafenX-PCE, MednafenX-Lynx
what's next?

Enjoy!


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

NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v20

http://xport.xbox-scene.com

what's new:

 Core:

 - Some improvement to sector cacheing when playing real Sega CDs (see notes)

 GUI:

 - Added "Soften Display" to video settings configuration options

 - "Sort Directories to top" was not working 100% correctly with items 
   that start with a non-alphabetic character - fixed


Notes
-----

When playing real Sega CDs discs (not images) the FMV can stutter occasionally.
Previous versions of NeoGenesis would try to intelligently buffer as much as 
possible, but you never know where the next piece of data needs to be read 
from the disc until it's already being requested.  Since this is emulation, 
there's no way to anticipate where the reads will be and store it.  The best 
that can be done is to read ahead a certain amount because usually data is 
read linearly from the disc.  This eliminates a good deal of stutter.  However, 
there is only so much one can do to compensate for scratched discs and the 
XBox's ability to read CD media.  Bear in mind that when (if) you listen to 
audio CDs on your XBox they will not stutter because audio tracks are read
from start to finish and the XBox can buffer lots of data at the beginning.
This results in one pause before the track starts, but while the track plays
the audio data can be read much faster than it needs to be sent to the
audio output.  In emulation, there is a short amount of time in between each
frame to read whatever data is needed from the disc, so only so much can be 
buffered at a time.  Trying to read too much data at once will result in 
stuttering because you're waiting too long for all the data to come back from 
the disc and not reading enough can result in too many individual CD-read 
accesses which can also result in stuttering.  

I did notice during some FMV games that they would requests CD sectors a few
behind what was currently being read (almost like reading backwards).  The 
previous versions of NeoGenesis had buffering designed only for forward-reading.
This one has some backwards buffering as well.  This eliminates some more stutter,
but again, there is only so much that can be done to compensate for CD media.

If your CD games still stutter, I first suggest trying to clean your CDs.  If that
makes no difference, then I suggest you copy the disc to an image file and use that
instead.


Enjoy!

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

NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v19

http://xport.xbox-scene.com

what's new:

 Core:

 - Sometimes CDDA would not stop when it should.  This should now be fixed.


Enjoy!

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

NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v18

http://xport.xbox-scene.com

what's new:

 Core:

 - Fixed CDDA for BIN files read off of HD 

 GUI: 

 - Added arrows to menus to indicate items above/below visible lines
   Can be disabled under General Settings

 - Added option to always show screenshots when scrolling.
   Find it under General Settings

 - Default for Sprite Limit set to Yes

 - Settings for last saved game carry over to the next game you configure

 - Added game configuration option to Force 60hz in PAL


Enjoy!

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

NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v17

http://xport.xbox-scene.com

what's new:

 - GUI brought up to date with most recent 

 - Removed "Fix Screen Tearing" configuration option since it is no longer being used

 - Added option to manually disable SRAM to fix games like Puggsy

 - CDDA plays within BIN files now.  You must have a proper CUE file for the BIN
   and it must be named the same as the BIN file.
   (e.g. MY_SEGA_CD_GAME.BIN and MY_SEGA_CD_GAME.CUE )
   Load the CUE file - not the BIN file.

 - BIN files that are actually ROM images and not SegaCD images should correctly
   load as cartridges now.

 - Added Reset to in-game menu and also as a configurable button

 - All settings will be reset to a baseline when you start this version.
   This will remove the default mapping of BLACK to the screenshot button
   and will also default the Left Analog stick to act like the DPAD
   during gameplay.  However, any games you have previously played will
   have their button configurations loaded from the previously saved config 
   file and will override the new defaults.  

Enjoy!

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


NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v16

http://xport.xbox-scene.com

what's new:

 - New (and very excellent) skin by J-RED

 - New game configuration option : Overclock M68000 CPU feature
   - Prevents slowdown on games like Sonic when lots of sprites are on-screen

============
INSTALLATION
============

If you are a first-time NeoGenesis user, simply upload all the files to a directory
on your XBox and run the default.xbe file.

If you are a previous user of NeoGenesis, you need to first delete the 
E:\SAVES\NEOGENESIS\SKIN_SETTINGS.INI file.  Then you need to completely
remove your existing EMUSKINS directory and replace it with the new one in
this package.  

If you don't follow those instructions, you will get a very weird looking
display.  If that happens, go to "Configuration" -> "Video/Skin Configuration" ->
"Select Skin" and select the default_neogenesis skin.  Things should then
be back to normal.


================
OVERCLOCKING CPU
================

Now there's yet another reason why NeoGenesis is even better than a real
Genesis/Megadrive machine! :)

Ever notice in lots of games like Sonic and Strider that sometimes things will
slow down when lots of sprites are on the screen?  This happens on the real
hardware, too.  Now there's a way to correct that problem.  

Go to the game selection menu, highlight a game, and press X to bring up the
game configuration menu.  There is a new option called "Overclock M68000".
If you turn it on, you should notice that there is no more slowdown.

You can also turn on/off this overclocking from within the game.  While the
game is playing, press the right thumb stick to bring up the in-game menu.
Select "Configuration", "Configure Controllers", "Controller 1", 
"Change Emulator Definitions" and assign one of the emu buttons to be
"Toggle CPU Speed".  Now go to "Change Joypad Mappings", "Change Game Mappings"
and change the button mapping for "Toggle CPU Speed".  Now you can use that
button mapping to turn the CPU Overclocking on/off in the game so you can
better see the effects.

Most games don't suffer from any slowdown, so the overclocking option is
off by default.  

It also doesn't work well with 32x or SegaCD games. SegaCD games cannot even start
if the overclocking option is on at startup.  You'll need to toggle it on/off from
within the game.

WARNING : It is possible to put the emulator into an undefined state when using
the CPU Overclocking on 32x and/or SegaCD games.  The symptoms of this are 
stuttering music and halted gameplay.  If this happens, you'll need to restart
NeoGenesis.  If you just use the overclocking on regular non-32x, non-segacd games,
everything should stay fine.  



Stella, Gnuboy, SMSPlus, FCEUltra, HUGO, NeoPop, DGen, Bochs, HUGO-CD,
FMSXBox, Bliss, WinSTon, Gens, Z26X, StepmaniaX, PCSXBox, XBoyAdvance,
DOSXBox, AtariXLBox, MirrorMagicX, KoboX, MaelstromX, MarblesX, Vice64X,
Vice20X, VicePETX, KegsX, XPired, AdamX, WonderSwanX, BeatsOfRageX...
what's next?

Enjoy!


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


NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v15

http://xport.xbox-scene.com

what's new:

 - Fixed funky sound in Phantasy Star 2

 - Fixed ISO9660 + ISO/MP3 bug


Stella, Gnuboy, SMSPlus, FCEUltra, HUGO, NeoPop, DGen, Bochs, HUGO-CD,
FMSXBox, Bliss, WinSTon, Gens, Z26X, StepmaniaX, PCSXBox, XBoyAdvance,
DOSXBox, AtariXLBox, MirrorMagicX, KoboX, MaelstromX, MarblesX, Vice64X,
Vice20X, VicePETX, KegsX, XPired, AdamX, WonderSwanX...
what's next?

Enjoy!


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


NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v14

http://xport.xbox-scene.com

what's new:

 - ISO9660 support

 - Simplified menus

 - Help menu

 - New button options from Game Selection menu :
     X     - Configure Game
     BLACK - Delete save files for selected game
     WHITE - Adds/Removes selection as a favorite

 - HQ2X graphics filter

 - Option to startup with background music disabled

 - Option to startup on the favorites game selection screen or the regular game selection screen

 - Option to confirm overwriting save states


Stella, Gnuboy, SMSPlus, FCEUltra, HUGO, NeoPop, DGen, Bochs, HUGO-CD,
FMSXBox, Bliss, WinSTon, Gens, Z26X, StepmaniaX, PCSXBox, XBoyAdvance,
DOSXBox, AtariXLBox, MirrorMagicX, KoboX, MaelstromX, MarblesX, Vice64X,
Vice20X, VicePETX, KegsX, XPired, AdamX, WonderSwanX...
what's next?

Merry Christmas!

Enjoy!


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

NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v13

http://xport.xbox-scene.com

What's New:

 - Fixed relax+linux bugs

 - If you were having Linux+Relax or Samba issues, then I suggest you try
   this version of NeoGenesis.  If this fixes the problems people have been
   having, then the changes will go into all the ports I've done.  If not, then
   I probably will not bother...so I need to hear feedback.  

Stella, Gnuboy, SMSPlus, FCEUltra, HUGO, NeoPop, DGen, Bochs, HUGO-CD,
FMSXBox, Bliss, WinSTon, Gens, Z26X, StepmaniaX, PCSXBox, XBoyAdvance,
DOSXBox, AtariXLBox, MirrorMagicX, KoboX, MaelstromX, MarblesX, Vice64X,
Vice20X, VicePETX, KegsX, XPired, AdamX, WonderSwanX...
what's next?


Enjoy!


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


NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v12

http://xport.xbox-scene.com

What's New:

 - Memory corruption fix when loading Sega CD games.  If you were having problems with
   certain SegaCD games not working (e.g. Secret of Monkey Island, or anything, really)
   then this should probably fix it.  Some debugging code was left in and if the
   filename length of your SegaCD files was more than about 65 characters (including the
   path) then there would be a buffer overflow.  So if you had a long filename like
   E:\\GAMES\\SEGA\\SEGACDS\\SECRET_OF_MONKEY_ISLAND\\SECRET_MONKEY_ISLAND_02.MP3
   then things would get screwy.

 - Support for Linux Relax sharing
   At this time, your linux share name must contain the "/" character somewhere
   if you want it to be recognized as a linux share.
   For example :

   rlxshare=/home/player/[email protected]:1400

 - Possible Samba fix/improvement : see next item

 - New network configuration parameters : XBox IP, Subnet Mask, Gateway IP.
   Access these through the Configuration -> Network Options menu or change
   them in the INI file :

   [GENERAL]
   LOCAL_IP=192.168.1.30
   SUBNET_MASK=255.255.255.0
   GATEWAY_IP=192.168.1.254
   
   LOCAL_IP is the XBox IP address
   SUBNET_MASK is the subnet mask 
   GATEWAY_IP is your default gateway

   Set these to the same values you use in your XBMP configuration file.
 
   This might help people with Samba issues.


 - If you were having Linux+Relax or Samba issues, then I suggest you try
   this version of NeoGenesis.  If this fixes the problems people have been
   having, then the changes will go into all the ports I've done.  If not, then
   I probably will not bother...so I need to hear feedback.  

Stella, Gnuboy, SMSPlus, FCEUltra, HUGO, NeoPop, DGen, Bochs, HUGO-CD,
FMSXBox, Bliss, WinSTon, Gens, Z26X, StepmaniaX, PCSXBox, XBoyAdvance,
DOSXBox, AtariXLBox, MirrorMagicX, KoboX, MaelstromX, MarblesX, Vice64X,
Vice20X, VicePETX, KegsX, XPired, AdamX, WonderSwanX...
what's next?


Enjoy!


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


NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v11

http://xport.xbox-scene.com

What's New:

 - Update to current UI bugfixes/features 

 - Music Control Menu - press LTHUMB anywhere to bring up the music control menu.
   This is also a customizable controller action while in-game.  Configure it
   via the Controller Configuration -> UI Mappings menu.

 - Can now save any string setting (like Samba/Relax share names) and directory
   locations via menus.  To change Samba/relax share names, go to Configuration ->
   Network/Netplay Configuration.  To change the default directories, go to
   Configuration -> Change Default Directories 

 - Can enter descriptions for cheat codes using virtual keyboard or real keyboard.

 - Can now wrap backwards from first screenshot to last screenshot




Stella, Gnuboy, SMSPlus, FCEUltra, HUGO, NeoPop, DGen, Bochs, HUGO-CD, 
FMSXBox, Bliss, WinSTon, Gens, Z26X, StepmaniaX, PCSXBox, XBoyAdvance, 
DOSXBox, AtariXLBox, MirrorMagicX, KoboX, MaelstromX, MarblesX, Vice64X...
what's next?


Enjoy!


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


NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v10


http://xport.xbox-scene.com/


What's New:

 - PAL50 support was broken in v8 and fixed in v9, but v9 broke 4x filters and would hang
   whenever trying to change XBox filters.  This is fixed.

 - 4x Filters removed because most of them ran too slowly to be playable on any game and the
   ones that were playable didn't appear to give much ( if any ) improvement to graphics.
   If anyone objects, I'll listen to arguments for re-installing it.

 - Selectable throttle speed - now you can control how fast the throttle/fast forward
   option behaves.

 - Several new transition effects.  Currently, the transition effect is set to "random".  If you
   want to set the transition effect to a specific setting, then go to Main Menu -> Configuration ->
   Configure Skin -> Transition Effect.  If you don't want to see any transitions, then set
   the Transition Speed to 0 on the same menu.

 - Changed memory management of background textures.  This results in more free memory allowing
   for more/larger skin media.  (This is really only of interest to people making skins.)


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

NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v9


http://xport.xbox-scene.com/


What's New:

 - PAL50 support was broken in v8 ; fixed

 - Fixed Relax bug - now sharenames like $ROOT$ShareName work

 - Sorting is not case sensitive anymore

 - Forgot to mention - in v8 pressing DPAD Left/Right moves by letter
   on the file selection screens.  Move LTHUMB Left/Right to change
   screenshots.


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

NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v8


http://xport.xbox-scene.com/


What's New:

 - 480p, 720p, 1080i support

 - 4x varieties for all filters
    + Most of these 4x filters make the games run too slow to be enjoyable,
      but the AdvanceMame4x runs well and so do a few others.
    + I also suggest not using the 4x filters unless you can use
      720p or 1080i modes.  Scrunching a 1280x960 picture to half that size
      looks almost exactly the same as the 2x version (and perhaps a little
      worse because of the scrunching.)

 - Hardware filtering options : Point, Bilinear, Trilinear, Anisotropic 

 - Access new video options from Main Menu -> Configuration -> Video Configuration

 - Re-vamped the 50/60, tearing, jittery sound, etc.  Hopefully this should
   straighten out all the weird, misc bugs a few people have encountered when
   trying to play PAL games on NTSC XBox or vice versa.  



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

NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v7


http://xport.xbox-scene.com/


What's New:
 - Fixed bug where CDDA music would get turned back ON/OFF incorrectly when
   returning from Options Menu
 - Improved real-CD buffering so if your CD is scratched/damaged, it 
   should still play smoothly
 - Added new Configuration Option : Fix Tearing
    + Default is Auto - which means tearing is always fixed unless the game is playing
      consistently less than max FPS.  Set it to "Always" if you never want to
      see screen tearing.  For certain 32x games, this will result is a slightly
      lower/choppier framerate.  Set it to "Never" to get the best possible speed
      and smooth framerate but you may see screen tearing.  
 - New UI Feature - Auto Load Most Recent Save State
     + Turn this option on via the Main Menu -> Configuration menu
     + If it's on, then when you launch a game, the most recently saved
       state will automatically be loaded.



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


NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v6


http://xport.xbox-scene.com/


What's New:
 - Fixed bug in save states when playing from ISO/MP3.
   If you saved a game while it was playing an MP3, continued playing
   until it loaded another MP3, and then reloaded the save state from the
   other MP3, NeoGenesis would crash.  This is fixed.  



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


NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v5


http://xport.xbox-scene.com/

Sorry about the "two releases in 30 minutes" thing....but I think you'll like this one:

What's New:
 - Save States for CD games are now working (!)
   This is a feature even the windows version of Gens does not have.  :)



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


NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v4


http://xport.xbox-scene.com/


What's New:
 - Fixed video slowdown in 32x games.  Very nice FPS in Virtua Fighter 32x and
   all other 32x games now.
 - Other bugfixes that were fixed in other UI-similar releases.  (E.g. long
   filenames in network shares, etc)

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


NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v3

What's New:
 - Fixed screen tearing


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



NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v2

what's New:

 - Bug fix - rompath INI setting was not being read 
 - Sound fix for everyone experiencing "fast sound" (i.e. the people running
   50hz games on in 60hz XBox mode.)
 - New Skin options :
    + Continuously loop sprite animations or just loop once
    + Assign motion_x and motion_y variables 
    + Assign a bounding rectangle in which sprites can move
    + Assign a degree of rotation that the sprites should turn when they hit a boundary

Enjoy!


Stella, Gnuboy, SMSPlus, FCEUltra, HUGO, NeoPop, DGen, Bochs, HUGO-CD, FMSXBox,
Bliss, WinSTon, Gens/NeoGenesis, Z26, StepmaniaX, PCSXBox, XBoyAdvance....what's next?


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



NeoGenesis Sega Genesis/Megadrive/32X/SegaCD/MegaCD Emulator for XBox v1

Features :

 - Full sound/video

 - Excellent compatibility - ported from Gens

 - Runs real Sega CDs that you put in your XBox DVD drive or it can
   read ISO/MP3 and BIN image files

 - CUE sheet processing for more accurate CD-MP3 playback

 - CDDISSECT-friendly. Rip with CDDISSECT, upload to XBOX, run CUE

 - Selectable GENS settings : (see notes below feature list)
    + Country code ( Autodetect or force a specific country code )
    + CD Emulation Method - Perfect Synchro or Normal
    + 4-player adaptor on port 1 or port 2
    + Show CD LEDs
    + Fast Blur Effect
    + Sprite Limit
    + YM2612 Improvement
    + DAC Improvement
    + PSG Improvement
    + Selectable MSH2 processor speed
    + Selectable SSH2 processor speed

 - ZIP support

 - Netplay

 - Netplay option to allow for smoother netplay : netplay skip.
   When server starts netplay, you can select a netplay skip value.
   This number specifies how often it should skip checking for network data.
   The higher the number, the less often it checks for network data, but the
   result will be a less responsive controller.

 - Cheat system - Search/Create your own cheat codes or enter Game Genie codes

 - Favorites list

 - Resizable game screen

 - Save Game management - delete save game files

 - Skin-able :
    - Backgrounds
    - Sounds
    - Background Music
    - Sprites
    - Text position (right/left/center, top/bottom/center)
    - Text color, select bar color
    - Font
    - Fading speed
    - Screenshot position
    - Can specify 2 sprites to surround the selected menu option
    - Option to have a transparent select-bar color (from select-color menu)
    - Can flip sprites horizontally/vertically
    - If you want to change the way something looks in this new UI,
      chances are that you can change it via the Configuration menu.

 - Samba/NetBIOS sharing support (read files from your PC)

 - Relax Network Sharing (read files from your PC)

 - Support for filenames > 42 chars from shared directories

 - Play MP3 or M3U playlists in the background
   (Can also read MP3/M3U from across Samba/Relax shares.)

 - User definable save directory.  If you don't like the default of
   E:\SAVES\NEOGENESIS you can change it via the NEOGENESIS.INI file

 - Take in-game screenshots and display them on the game selection list

 - Graphics filters :
     + 2xSai
     + Super 2xSai
     + Eagle
     + Super Eagle
     + SuperScale
     + AdvanceMame 2x
     + Simple 2x
     + 2xSai Scanline
     + Super 2xSai Scanline
     + Eagle Scanline
     + Super Eagle Scanline
     + SuperScale Scanline

 - Record/Playback feature - record your gameplay in the emu and then
   play it back again.  Record up to 10 minutes of gameplay.

 - Every single in-game command is fully customizable on any of the
   four joypad controllers.

 - Map any emulator or UI command to a single button or a combination of
   two buttons.  (e.g. RTrigger+LTrigger = Save State)
   Basically, the controllers are 100% customizable.

 - Autofire capabilities for any emulator button on any controller

 - One-button combos (define a series of emulator commands to be played
   back when you press a user-definable XBox controller combination.)
   (E.g. Press RTrigger+LTrigger to execute the command string
   A,B,A,B,Up,Down,Left,Right)

 - Traverse any directory on any drive ( Continue selecting the parent
   directory entry on the file selection list to get the drive selection
   list.  Selectable drives are C, D, E, F, R, X, Y, Z, and SMB. 
   R is the CDROM drive.  SMB is the samba share you have defined in your
   NEOGENESIS.ini file.  RLX is the relax share you have defined in your
   NEOGENESIS.ini file.)  Press Y from any file-listing screen to go up one
   directory level.

 - Save States with 10 save state slots for each game

 - All UI commands (save state, load state, screenshot, etc) can be
   invoked from the Options/Pause menu as well as in-game via your
   customized joypad mappings.

 - Can be invoked from a command-line to directly run a game from a front-end
   or dashboard and bypass the user-selection screens. (Only if the frontend
   or dashboard supports this feature.)

 - Can return to the launching program *if* the launching program supports this
   feature.  For example, if the custom-launch routines are incorporated into 
   a new frontend, that frontend could launch NeoGenesis and when you exit 
   NeoGenesis, that frontend can be automatically reloaded.  

 - Flapjack and a cigarette


Various Important Notes:

============
Saving Games
============

This is a common pitfall with XBox emulators of consoles that use SRAM.  
If you are playing, for example, Phantasy Star, then when you have saved the game,
you must go back to the game select menu.  

If you just turn off your XBox while you are still playing the game, then
your saves will not be written to the XBox hard drive and it will be like you
never saved your game.


---------------------------------------------------------------
CUE sheet processing/CDDISSECT friendly
---------------------------------------------------------------

I've improved (IMHO) the original CD track processing by 
allowing for the input of a CUE sheet.  The original GENS source code calculates
CD track lengths by making a best calculation of the length of the MP3 files. 
This, however, is not always accurate.  If you have many MP3 tracks on a CD, the
track offsets grow increasingly incorrect.  Using a CDDISSECT-made CUE sheet
results in 100% accuracy.  (So I suggest you use it.)  Additionally, this port
of GENS is completely CDDISSECT friendly - meaning that you can pop a CD into
your computer, run CDDISSECT, upload all the files (without renaming anything)
and run the CUE sheet on XBox.  If you run the CUE sheet, you do not need to
rename the ISO file to remove the "01" at the end of the name.  However, if
you try to run the ISO file, it will not find the MP3 tracks (unless you first
rename the ISO file to remove the "01".)  If you have existing CD images on your
XBox that worked with another port of GENS, then they will also work with this
one.

============================================
Notes From Gens Documentation About Settings
============================================

Gens now features a custom YM2612 (main sound chip) sound core which
features a "High Quality" mode. The sound output is more accurate
in HQ mode, but it slows things down a bit.  

Gens also features an "improved" DAC (part of the YM2612) sound mode.
This makes the sound in a few games, ( e.g. Street Fighter 2), much better 
than it would be on real hardware.  However, it also causes bugs in other games 
so you should leave it turned off most of the time.

Tere is optional PSG sound "improvement".  This changes the PSG sound 
output from Square waves to Sine waves which is technically incorrect but can 
make some games sound better. Again you should leave this turned off unless you 
really hate the normal PSG sound.

The 2 SH2 processors can take up to 75% of the emulation time !
To gain some FPS, Gens offers the possibilities to change
MSH2 and SSH2 CPU clocks from 0% to 100%. 

Replace 100 by a lower value to speed up the 32X emulation.
100 means SH2 runs at 23 Mhz and 0 means 0 Mhz... easy :)
Gens doesn't emulate some wait states presents in the real 32X hardware so
you can decrease the master CPU to 60 for almost all games without affecting the
in-game speed.

Slave CPU is mainly used for sound emulation (except for some games with
many 3D calculations such as Virtua Racing), so you can decrease it if you think
PWN sound isn't important.


=====================
Relax Network Sharing
=====================

The relax sharing setting goes in the [GENERAL] section as follows:

rlxshare=c:\[email protected]:8989

Replace 192.168.123.77 with your computer IP address and replace 8989 with the
port where you have Relax running.


============================
Note on Samba/NetBIOS Shares
============================

There are two INI file settings relating to Samba/NetBIOS sharing and they both
reside in the [GENERAL] section of NeoGenesis.INI:

smbshare=smb://username:password@workgroup:ip_address/computername/sharename
smb_nameserver=192.168.0.1


The smbshare parameter accepts many different formats.  Here are the most 
common:

smbshare=smb://username:password@workgroup/computername/sharename
smbshare=smb://username:password@workgroup:ip_address/computername/sharename
smbshare=smb://username:password@computername/sharename
smbshare=smb://username:password@computername:ip_address/sharename
smbshare=smb://workgroup/computername/sharename
smbshare=smb://workgroup:ip_address/computername/sharename
smbshare=smb://computername/sharename
smbshare=smb://computername:ip_address/sharename

Please try all of the above combinations before deciding it does not work.
Also be aware that some people have to select their SMB drive in NeoGenesis a few
times before any files appear.

If it's still not working, then set the nameserver equal to the IP address of
the computer you are trying to reach or set it equal to your NetBIOS name server.
(If you don't know what a NetBIOS name server is, then just set it to the 
IP address of the computer you are trying to reach.)


Also remember that when you make changes to NeoGenesis.INI, you have to do a 
"Force Reload of D:\*.INI" from the Configuration Menu or else the changes
you made to NeoGenesis.INI will not be loaded.  




=============
Configuration
=============

Almost everything can be changed from the configuration menu.  Here are the
things that require manual modifications to the NeoGenesis.INI file included in
the package: 

Note - you do not need to change the defaults in the INI that comes packaged
with NeoGenesis in order for NeoGenesis to run.  These are all *optional*.

Samba share name - goes in the [GENERAL] section.  Example:

smbshare=SMB://USERNAME:PASSWORD@COMPUTERNAME/SHARENAME


Screenshot directory - default is E:\SCREENSHOTS - goes in [GENERAL] section
Example:

screenshot_dir=E:\SCREENSHOTS


Skin directory - where skins can be found.  Default is D:\EMUSKINS - goes in
[GENERAL] section.  Example:

skin_dir=D:\EMUSKINS


Save directory - this is where you want all your saved games to be stored.
Default is E:\SAVES\NEOGENESIS.  Goes in [GENERAL] section.  Example:

save_dir=E:\SAVES\NEOGENESIS


The default ROM directory INI setting goes in the [GENERAL] section as follows:

rom_dir=d:\sgenroms


If you change any of the above items, then you must upload the new NeoGenesis.INI
file to your XBox, load up NeoGenesis, then select "Force Reload D:\\*.ini 
Settings" from the Configuration menu.  Please note that this will overwrite
any of the setting changes you might have made after you first loaded
NeoGenesis.


===============
Menu Navigation
===============

Select menu options with the DPAD or with R/LTrigger.  The speed of 
R/LTrigger movements can be controlled by :

Configuration -> Menu Scroll Speed

There are some places where you can enter or change values.  This 
can usually be done in a variety of ways include DPAD Left/Right, 
R/L Trigger, and L/R Thumb.  Try all of them if the values are changing
too slowly.

"A" selects the highlighted choice.  "B" cancels/returns.
"Y" from a file-select list will go up one directory.


=====
SKINS
=====


Instructions for making a new skin:

 - Create a new directory off of your SKINS directory (default skins directory
   is D:\EMUSKINS
 - Place your sound/font/graphic media files in this new directory 
 - Load NeoGenesis
 - "Select Skin" from the main menu and select your new directory.
 - Select Configuration
 - select Configure Skin
 - Use the menus to select your new media files and change your settings
 - When you are satisfied with what you have, go back to the main menu.
 - Select "Configuration"
 - Select "Overwrite D:\*.ini and D:\emuskins\\<skin>\\settings.ini"
   This will write the skin settings in your skin directory (if your skin
   directory is on the hard drive.)
 - You're done!  You can package up the directory and share it with your friends.


If you wish to use sprites in your new skin, then read the following:

 - Create a subdirectory off of your new skin directory called SPRITES
   e.g. D:\EMUSKINS\NEWSKIN\SPRITES
 - In this new SPRITES directory create a 0-based numeric directory for
   each sprite you wish to make.  This means that if you have 4 sprites
   you wish to load, the directory names *must* be called 0, 1, 2, and 3.

   Do not call them 1, 2, 3, and 4.  
   Do not call them 0, 3, 5, 6.  
   Do not call them SPRITE1, SPRITE2, SPRITE3, SPRITE4.  

 - Inside each of these new directories, you must place the sprite frames.
   Each frame is represented by a BMP, PNG, or JPG file.  The order of the
   frames is given by the filenames.  These filenames must also be named
   with 0-based numbers.  For example, 0.png, 1.png, 2.png.  Look at the
   sprites directory of the included default skin to see how it works.

 - Do not skip numbers when naming sprite directories or sprite frame 
   filenames.  A list of directories called 0,1,2,5,7 is *INVALID*.
   Similarly, a list of files called 0.png, 1.png, 4.png, 5.png is also
   *INVALID*.

Also be aware of memory constraints.  Let's say you have a frame of a sprite
called 0.png.  This picture file is 90 pixels wide and 130 pixels high.
This will get rounded up to a 256x256 pixel 32bit picture.  This means
that it will consume 256x256x4 bytes (256KB) of memory.  If your sprite has
10 frames of animation, that's around 2.5MB of memory.  Keep this in mind
before you make ultra-smooth moving sprites with hundreds of frames of
animation.

You can check your available memory by going to Configuration -> Configure Skin
-> Show Available Memory

If you make/configure a skin and NeoGenesis does not load the next time you
play it, then you need to delete the E:\SAVES\NEOGENESIS\NEOGENESIS.INI and
E:\SAVES\NEOGENESIS\SKIN_SETTINGS.INI files.  NeoGenesis should work fine again,
but you'll have to reconfigure your skin.  The problem was probably
that one of your resources (like a WAV or background file) was specified
incorrectly or was never changed from the old skin.  Carefully look at the 
E:\SAVES\NEOGENESIS\SKIN_SETTINGS.INI file to make sure that all filenames exist 
in your skin directory.



====================
Controller Remapping
====================

Configuration -> Configure Controllers

There are 32 general/all-purpose emulator "buttons" or actions.  Each of these
buttons can be assigned a specific emulator action.  For example, Emu Button 1
can be A, or B, or DPad Down, etc.  These "emu buttons" can then be assigned 
XBox triggers.  For example, Emu Button 1 (which you have mapped to, for 
example, A) can be triggered by  XBox controller button B.  The default button 
mappings should provide enough information on how the system works and 
how it can be used.  

==========
Autofiring
==========

Configuration -> Configure Controllers -> Controller # -> Change Autofire

Each "Emu Button" can be set up for autofiring.  Simply set the autofire
variable to a non-zero value.  This value indicates how long the emulator
should wait before releasing and re-pressing the button.  A value of 1
might be too fast to register on some games.  I suggest setting it to a
number like 5 first and them fine-tuning it.


======
Combos
======

Setting up a combo can be kind of tricky because you need to know exactly
what the game expects to have happen on the joypads to execute the special
move.  For example, let's say that we want to map a standard move that is
described like this : 

D, DR, R, A

D = Down, DR = Down+Right, R = Right, A = A button

First, set the delay to a number like 2 or 3.  Then set up the moves.  In
this case, any (or none) of the following might work:

Down
Down+Right
Right
Right+A
Right

OR

Down
Down+Right
Right+A

OR

Down
Down+Right
Right
Right+A
Right+A
Right+A


You will probably need to fine-tune each combo move before it works, but
you'll soon get the hang of it.



================
MP3/M3U Playback
================

Simply select the MP3 or M3U file from the game-selection screen.

The M3U file can also just be a regular file with one songfile per line.
For example:

d:\songs\song1.mp3
e:\moresongs\song2.mp3
smb:\mp3s\song3.mp3

If you are making a playlist of songs on your SMB share, then please note
the format:

smb:\mp3s\song3.mp3

The smb:\ tells NeoGenesis to read from your SMB shared directory.  Do not
put the SMB share definition in the filename.

----------SMB shared filenames are case sensitive!!!---------


=======
Netplay
=======

In order to netplay with someone, follow these steps:

 - Go to the Configuration menu
 - Select Netplay options
 - Turn netplay on
 - Add a server if you are going to connect to someone else
 - Select the game to play
 - If netplay is on, it will ask you if you want to be the client
   or the server.  One person is the client, and the other is the server.
   If you are the server, the game will wait until the client has
   joined.  If you are the client, make sure the server is ready to accept
   your connection before continuing.  
 - When server starts netplay, you can select a netplay skip value.
   This number specifies how often it should skip checking for network data.
   The higher the number, the less often it checks for network data, but the
   result will be a less responsive controller.
 - Once a connection has been made, it should work fine.

NOTE : You both MUST be using the *EXACT* same game.  
I would be *extremely* surprised if the PAL version of a game
worked via netplay with an NTSC version of the same game.  


The server player is always player 1.  The client player is always player 2.

I don't know how well netplay will work across real networks.  Two xbox's 
on the same intranet work very well, though.

If your connection is lost during gameplay, just wait 30 seconds and
you can return to the game select menu.  (Or you can always reboot...)


==================================================
Cheating System - How To Make Your Own Cheat Codes
==================================================


Just about every single port I've released has this feature, and I 
occasionally hear people asking "how does it work?" This is easiest to 
explain by example:

 1) Start playing a game. 

 2) Go to Options Menu and select "Start Search for Cheat Code"

 3) Go back to game and lose a life

 4) Go to Options Menu and select "Continue Search For Cheat Code"

 5) Select "Search For Values Less Than Before" because when you
    first selected "Start Search For Cheat Codes" you had one more
    life than you do now.  You will see the number of matches go down.

 6) If the number of matches is greater than 10, then perform actions
    3, 4 and 5 continually until the number of matches is less than 10.
    If you run out of lives, then just start playing the game again.
    (Do not exit the emulator and select the game again - just start another
    game from within the emulator.)  Now you will have a full stock of lives,
    which is *more* than the last time you checked your values.  So when you
    continue searching, you'll want to select "Search For Values Greater Than
    Before."  Then go through steps 3-5 over and over until you have less than
    10 matches.

 7) Now that you have less than 10 matches, you can add the codes to your
    list.  If the search narrowed the list down to 1 possible match, it
    will automatically add it to your list.  Now you can "List Cheat Codes"
    and selectively turn on/off the cheat codes to try them out and see
    which on is the right one.

Alternately, you can use the "Search For An Exact Value" option if you
already know the number you wish to change.  Example:

Let's say you are playing Dragon Warrior and your character currently has
25 Hit Points.  Follow these instructions:

 1) Go to Options Menu and select "Start Search for Cheat Code"

 2) Select "Continue Search For Cheat Code"

 3) Select "Search For an Exact Value" and enter 25 as the number.
    The number of matches should decrease very quickly.  

 4) Go back to the game and do something to change your Hit Points amount.
    For example, let's say you drink a potion and your Hit Points are now 35.

 5) Go to options menu and select "Continue Search For Cheat Code"

 6) Select "Search For an Exact Value" and enter 35 as the number.
    Chances are very good that the number of matches will be down to 
    one or two.  Just try out the codes to see which one gives you infinite 
    Hit Points!

Advanced Cheat Code Usage:

Cheat codes have the following format:

TT AAAAAA VVVV

TT     = Type
AAAAAA = Address
VVVV   = Value

You can hand-edit the cheat codes you've created.  Go to the Cheat Code list,
select a code, and select Edit.  Let's say you've already created a cheat code
that keeps your hit points at 25.  The last four hex digits of your code will be
0019 (which is hexidecimal for 25.)  You can change the last two digits to, for 
example, FF which will give you 255 hit points instead of 25.  More sophisticated
codes can be made by altering the Type:

Type Table

80 - Means set the 16-bit value (0-65535) pointed to by the cheat code address 
     to the cheat code value.

30 - Means set the 8-bit value (0-255) pointed to by the cheat code address 
     to the cheat code value.

10 - Means increase the 16-bit value pointed to by the cheat code address
     by the cheat code value.

11 - Means decrease the 16-bit value pointed to by the cheat code address
     by the cheat code value.

20 - Means increase the 8-bit value pointed to by the cheat code address
     by the cheat code value.

21 - Means decrease the 8-bit value pointed to by the cheat code address
     by the cheat code value.

D0 - Means only execute the next code in the list if the 16-bit value pointed
     to by the cheat code address is equal to the cheat code value

D1 - Means only execute the next code in the list if the 16-bit value pointed
     to by the cheat code address is not equal to the cheat code value

D2 - Means only execute the next code in the list if the 16-bit value pointed
     to by the cheat code address is less than the cheat code value

D3 - Means only execute the next code in the list if the 16-bit value pointed
     to by the cheat code address is greater than the cheat code value

E0 - Means only execute the next code in the list if the 8-bit value pointed
     to by the cheat code address is equal to the cheat code value

E1 - Means only execute the next code in the list if the 8-bit value pointed
     to by the cheat code address is not equal to the cheat code value

E2 - Means only execute the next code in the list if the 8-bit value pointed
     to by the cheat code address is less than the cheat code value

E3 - Means only execute the next code in the list if the 8-bit value pointed
     to by the cheat code address is greater than the cheat code value

If you are familiar with cheat codes, you'll notice that these are standard
Gameshark types.  With enough experience you could make some seriously
interesting codes with this system.  

For example, I played around with Super Mario Bros (NES) and found out that
address 0007EE stores the number of coins and address 0007FA is the
one's digit in the timer.  Here are two codes:

E0 0007FA 03
20 0007EE 01

Those codes mean that while the ones timer digit is equal to three, increase the 
number of coins by one.  You won't see the coins updated on the overhead
display in the game, but if you start a game, wait until the timer one's
digit is a three and then collect a coin, you'll see that your coin value
is actually much higher than one, now.  Fun useless stuff.  :P



==================================================
Command-Line/Auto-Launching and Return to Launcher
==================================================

This section is for the developers of frontends, dashboards, etc.

NeoGenesis can be started with parameters to automatically launch a game
at startup.  Example code can be found in the custom_launch_params.cpp file.

There is also example code in that same file that will show you how to 
make NeoGenesis load your frontend/dashboard when it exits.




Enjoy!


Stella, Gnuboy, SMSPlus, FCEUltra, HUGO, NeoPop, DGen, Bochs, HUGO-CD, FMSXBox,
Bliss, WinSTon, Gens/NeoGenesis, Z26, StepmaniaX, PCSXBox, XBoyAdvance....what's next?