--------------------------------------------------------------------------------
Super Sleuth Personal Edition v1.02
Super Nintendo Entertainment System TM Compatible Software Emulator
Copyright (C) 1998-2004 Kris Bleakley
--------------------------------------------------------------------------------

Last Updated 23rd December 2004


Table of Contents

i.  Disclaimer
1.  Introduction
2.  System Requirements
3.  Getting Started
4.  Input Devices
5.  Development Tools
    5.1 State Inspector
        5.1.1 Tracing
        5.1.2 Breakpoints
        5.1.3 Watchpoints
    5.2 Transfer Gamepak
    5.3 State Manager
6.  Software Requirements
    6.1 Broadcast Satellaview
7.  Special Chips
8.  Bug Tracking
9.  Special Thanks
10. Copyrights


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

i. Disclaimer (Please read before operating software)

This product is provided free of charge and therefore on an "AS IS" basis, 
without warranty of any kind, express or implied, including without limitation 
the warranties that it is free of defects, virus free, able to operate on an 
uninterrupted basis, merchantable, fit for a particular purpose or 
non-infringing. This Disclaimer of warranty constitutes an essential part of 
this agreement. No use of the product is authorised hereunder except under this 
disclaimer. This product is for non-commercial use only and shall not be 
packaged with any commercially licensed software.


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

1. Introduction

Super Sleuth is a Super Nintendo Compatible Software Emulator designed 
specifically for use with 32-bit Microsoft Windows Operating Systems. This 
product is designed to aid in the development of software intended for use on 
the Super Nintendo Entertainment System (SNES). The real-time-debug system 
allows the user to easily trace CPU operation and track bugs efficiently.

While a number of years have been spent perfecting the software, it is not
guaranteed to be 100% compatible. A knowledge of the 65816 processor is required
to use the real-time-debug system.

Features include:

* 128KB Backup RAM support (Support for various backup units)
* Support for various ROM formats (Max 64Mbit Cartridge Mode,
  96Mbit Game Doctor Mode)
* Memory Transfer to supported hardware devices
* Support for Standard Controller and Mouse
* State Transfer in both proprietary and RTS formats
* DSP Support (including DSP-1, DSP-2, OBC-1 and S-DD1)
* Advanced 24bit colour mapping technology
* Screen Capture in PNG format


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

2. System Requirements

Super Sleuth was developed on an Intel Pentium IV 1.4Ghz system (128MB System 
Memory) running Windows XP. It is recommended that you limit the number of 
programs running in the background as this software uses a lot of CPU time 
while running. Users of Windows XP should be aware that this program will 
operate much faster under Windows 9X/ME operating systems. Idle CPU time will 
be given back to the system once the program loses focus.

Minimum System Required

* Intel Pentium 800Mhz or equivalent processor
* 32Mb Available System Memory
* 20Mb Available HDD space
* Microsoft Compatible Mouse and Keyboard
* Microsoft Windows 98
* Microsoft Direct-X 8

Recommended System Required

* Intel Pentium IV 1.4Ghz or equivalent processor
* 48Mb Available System Memory
* 20Mb Available HDD space
* Microsoft Compatible Mouse and Keyboard
* Microsoft Windows ME
* Microsoft Direct-X 8


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

3. Getting Started

Super Sleuth has been designed to be as user friendly as humanly possible, 
while retaining its purpose as a powerful development tool. To take advantage 
of a number of key development systems there are a few important details you 
will need to know before operating the software. For this software to be of any 
use, you will need ROM files. Under no circumstances will any ROM files be 
packaged with this software unless specified in this readme file.

It is recommended that you run Super Sleuth from a harddisk drive rather than 
from a read-only media such as a CD-ROM. On startup the in-built debug system 
will create a trace log file in the startup directory of the software. Failure 
to create this log file will result in the debugger not being able to trace CPU 
instructions. Also be aware that continual tracing of the system CPU will 
eventuate in the trace log growing rapidly in size.

Loading a ROM file is simple, just select load from the gamepak menu. A list of 
recently loaded (reload) files is also available from the gamepak menu. 
Alternatively, ROM files may also be loaded by dropping a file from windows 
explorer onto the main window. While this software is designed to load various 
ROM formats, the defacto format is of that used in Super Magicom/Wildcard 
backup devices. If for any reason a ROM file does not load correctly try 
converting to the defacto format (various conversion tools are available for 
download from the internet).

Each time a ROM file is loaded information about the ROM will be available on 
the General tab in the Properties window (the General tab will only be displayed
once a ROM file has been loaded). This information will also be written to the
trace log if tracing is available. The file will also be added to the top of the
reload list. If the file contains a header then this information will also be
available in hex/character format under the header tab (the header tab will only
be displayed if the software detects that the ROM file has a header). Optional
database support is also available to override ROM properties. The CRC32 value
will appear red in color should an entry not be found in the database or the
database does not exist.

The Properties window also contains various save options including the directory
where BackupRAM will be stored. This is ideal should the user be loading ROM
files from a read-only media such as a CD-ROM. If no save directory is specified
then the BackupRAM will be written to the directory where the ROM file resides.
The user can also specify the format to be used when storing BackupRAM. In most
cases this will inadvertently change the extension of the BackupRAM file. If a
loss of BackupRAM occurs be sure to check that the file extension matches the
currently selected format. BackupRAM will be automatically saved when another
gamepak is loaded or the program is terminated by the user.

Please note that there is no implemented feature to periodically save BackupRAM,
however BackupRAM maybe saved manually from the gamepak menu. In the event that
BackupRAM cannot be stored to disk, be sure to check that the save directory
exists and is blue in color. Should a ROM file need to be rewritten, the user
can specify whether the file will contain a header by checking the appropriate
checkbox (this has no bearing on the transfer to device covered later in this
readme file).

Once the ROM is loaded, the user can take screen captures in PNG format. The 
size of the image file will be determined by settings in the Properties window. 
Image files will be stored in the same location as specified for BackupRAM
and will be named as per the ROM file.


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

4. Input Devices

A variety of input devices have been developed for the Super Nintendo, nothing 
more standard than the controller that was packaged with the Control Deck. The
Configure Input Device Window allows the user to customize the buttons for two
standard control devices. Each button can be individually assigned by clicking
on the selected key. If the text for the selected button shows red in colour,
then the key selected is already assigned to another button. Each assigned key
can only be connected to a single button function.

Only two control devices are supported in this release, however future versions 
may support third party devices such as the Super Multi-tap for up to 8 connected 
control devices.

The following key functions are pre-defined:

~               Super Scope Turbo Toggle
Pause           Super Scope Pause Button
Esc             Restore windowed mode

Menu Shortcuts (not available in full-screen mode)

Ctrl-L          Load Gamepak
Ctrl-P          Save PNG
Ctrl-Enter      Hide/Show Properties Window
Ctrl-S          Save BackupRAM
Ctrl-Del        Reset


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

5. Development Tools

5.1 State Inspector

5.2 Transfer Gamepak

This tool allows the user to send the loaded ROM image to a specified hardware
device. Depending on the hardware device selected, the ROM can be transferred
directly to the device via parallel port or to disk in a format recognised by the
device. Specific device headers are automatically generated if no ROM header is
present. Parallel transfer may not be available under Windows NT based operating
systems due to heightened security.

The following hardware devices are supported:

Super Wildcard
- Mode 20/21/30/31
- Disk and Parallel Transfer
- DD/HD/ED Floppy Formats

Super Wildcard (64Mbit)
- Mode 20/21/30/31/25/35
- Disk and Parallel Transfer
- DD/HD/ED Floppy Formats

Game Doctor SF III
- Mode 20/21/30/31
- Disk Transfer Only
- HD Floppy Format

The desired transfer device can be selected from the "Configure Tools" window,
which is accessible from the Tools menu. The transfer port and the option to 
enable/disable the transfer of BackupRAM are also selectable from this window.

Transfer to Disk

For maximum compatibility, filenames are limited to eight characters in length
and should not include a file extension. The file extension will be automatically 
determined when the ROM is written to disk (file extensions may differ if the ROM 
has to be split). If the filename does not include a path then the file will be 
sent to the default transfer path. Some Transfer Devices need filenames to conform 
to a specific format, see below for details.

Game Doctor Files

To be recognised by the transfer device, filenames should start with letters 'SF'
followed by the size of the ROM in megabits. The rest of the filename is not
specified except when the file is split. When the file is split the filename will
be automatically extended to eight characters where the eighth character will
become the split file identifier starting with the letter 'A'.

Hint:
The registry item 'TransferPath' holds the default transfer path 
(registry default = 'A:\').


5.3 State Manager

The State Manager is used to save and restore Break-Point Save (BPS) Files, the
proprietary state file format. BPS files contain all the vital information needed 
to restore a program to the exact position when saved. The BPS Format was designed 
to be portable between emulators and as such does not contain any information that 
is specific to a particular emulator. Gamepaks that contain special chips may not 
be restored correctly. See bpsfmt.txt for further details on the format of the 
Break-Point Save File.

The following options are available:

- Display Thumbnail Preview       

Bitmap block will be loaded when enabled. If no bitmap block exists then the preview 
will be blank. Each time a state is selected from the directory the preview will be 
updated to reflect the new selection.

- Enable Screen Capture Transfer   

Bitmap block will be saved when enabled.

- Enable SRAM Transfer           

SRAM block will be loaded/saved when enabled. Loading a state that contains SRAM 
with SRAM Transfer enabled will overwrite the current SRAM file. Uncheck this
option if you do not want SRAM to be replaced. SRAM transfer may be required for
particular games and certain co-processors may override this setting.

Note:
State files should be named as per the ROM file and carry an extension of 'Sxx', 
where xx is a number, 00 through 99. State files created by other emulators are 
not recognised. File conversion tools may or may not be available. Programs that 
create Break-Point Save files should contain relevant product, date and version 
information in the version block.


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

6. Software Requirements

6.1 Broadcast Satellaview

In order for many of the Broadcast Satellaview (BS) games to function correctly, 
the BS-X BIOS has to be loaded into memory as well as the BS game. On detection 
of a BS game the BS-X BIOS will be loaded from the startup directory. The file 
containing the BS-X BIOS should be named appriopriately, 'BS-X.SFC'. 

The BS-X BIOS has to be run once before loading any BS Games to create 'BS-X.SRM'
which is also required to run BS Games.

While limited support for the BS-X cartridge has been added, the base registers
are currently not emulated. Not all BS games are playable.


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

7. Special Chips

While an effort has been made to add support for special chips, not all chips 
are fully supported.


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

8. Bug Tracking

When submitting bug reports be certain to include a copy of the ROM information
from the trace file. To help replicate software related bugs please submit a
Break-Point Save file with your report. Make sure to enable SRAM transfer for 
bug reports, by default SRAM transfer is disabled.

All bug reports can be emailed to jnrsleuth at gmail dot com


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

9. Special Thanks

In no particular order I would like to thank the following people for their help 
and contributions to the scene.

Y0shi
Gary Henderson and Jerremy Koot
zsknight, _Demo_ and pagefault
Matthew Kendora and Brad Jorsch
Cowering and Nach
Andreas Naive
John Weidman
Neviksti


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

10. Copyrights

"Microsoft Windows" is a trademark of Microsoft Corporation.
"Super Nintendo Entertainment System", "Super NES", and "Super Famicom" are 
trademarks of Nintendo Co.,Ltd.
"Super Wildcard" is a trademark of Front Fareast Industrial Corporation.
"Game Doctor" is a trademark of Bung Enterprises.
