# Radiant Silvergun EXTRA v1.0.0

Planned and developed by Alex "trap15" Marshall in 2018 and 2023-2024.

email: <trap15@raidenii.net> | web: <http://daifukkat.su/> | twitter: @trap0xf

Official website: <http://daifukkat.su/hacks/rsg_ex/>

Source code: <http://bitbucket.org/trap15/rsg_ex/>


# About

This patch back-ports scoring modes and game systems from other versions of the
game into the Saturn and ST-V versions of the game. Namely, this
adds "Ikaruga Mode" from the Xbox 360 version, as well as the 2-button
"overseas" mode exclusive to the ST-V version. In addition to these ported
modes, there's a new Special scoring mode which combines the original scoring
system and the Ikaruga scoring systems in a different manner.

## Saturn version

The Saturn version always has Option+ (mostly filled with assistance options)
unlocked, and adds two new options to control the new features. The settings
are saved along with the other settings, so you can set and forget.

## ST-V version

The ST-V version already has the overseas mode, so this patch only adds the
two new scoring modes. However, this patch allows picking the overseas mode
per-game, rather than based on the BIOS region. This also removes the less good
overseas changes, such as the removal of named boss intros.

Hold A when starting the game to use overseas mode. To choose the scoring mode,
when starting the game, either hold Left/B to use Ikaruga mode,
or Right/C to use Special mode.


# Patch files

In addition to the below patching process information, you can build
patched files directly by compiling the patch from the included source code.

## Saturn version

Due to the lack of a real system for distributing CD image patches that
only change files on the ISO9660 filesystem, I've had to include some tools
to do it for us. You can just drag your CUE onto `apply_saturn.bat`,
and it should apply the patch cleanly and create new files in this directory.

The patcher will create new versions of the cue and bin in the same directory
as the input. If your disc image has multiple bins it will only copy and rename
the first track's bin, as it is the only one that changes.

There is also `apply_saturn.sh` for Unix users, but you'll need to rebuild
the tools, so look at their source for how to build them. Other than xdelta,
which uses autoconf, they are very easy tools to build, with no dependencies.

## ST-V version

The ST-V cartridge has an empty EPROM socket that is used for late-made changes
to the game's program data. We can use this to make an easily installed EPROM
that contains the patch. Place your original ROM set in a folder, ensuring that
the filenames match below, and drag the folder onto `apply_stv.bat` to create
a ROM image named `RSG_EX_STV.bin` that can be burned to a 27C040.

Once your ROM is burned, open up the cart, and place your ROM
in the empty socket, close it back up, and you're good to go.

There is also `apply_stv.sh` for Unix users, but you'll need to rebuild
the tools, so look at their source for how to build them. Other than xdelta,
which uses autoconf, they are very easy tools to build, with no dependencies.

For users of certain multi-game kits, this will also produce a file named
`file.13` which can be added to the Radiant Silvergun set to enable this
patch.

The ROMs in your folder must be named the following:

 - mpr20958.7
 - mpr20959.2
 - mpr20960.3
 - mpr20961.4
 - mpr20962.5


# Build requirements

I have included all of the build tools other than Make, pre-built for Windows.
The pre-existing tools used are:

 - Alfred Arnold's AS ( http://john.ccac.rwth-aachen.de:8000/as/ )
 - CUE's cd-replace (modified to also extract files)

There's a `cuetool` included as well which does the cue adjustments after
applying the patches, as well as gets the path for the first track's bin.

Additionally, there's a `romtool` which performs various ST-V ROM tasks like
merging the program ROM and creating a patch EPROM from a main program ROM.


# History, etc.

* v1.0.0 - 20240620 - Public release
    - First public release
    - (ST-V) Add multi-game support

* v0.3.1 - 20240620 - Not distributed
    - (ST-V) Fix hang on hardware when displaying mode

* v0.3.0 - 20240620 - Private distribution
    - Fixed memory errors in cd-replace
    - (ST-V) Add a display to show which mode is being held
    - (ST-V) Allow P2 to operate the mode selection

* v0.2.1 - 20230624 - Private distribution
    - Finished documentation
    - Cleaned up source code/build system for release

* v0.2.0 - 20230621 - Private distribution
    - Finished ST-V version
    - ST-V version available as patch EPROM

* v0.1.2 - 20230619 - Private distribution
    - Fix another crashing issue in cuetool for extracting bin name
    - Fix issue with shell script patcher not working with spaces in path

* v0.1.1 - 20230619 - Private distribution
    - Corrected number of shot C bombs-on-screen in 2-button mode to 8
    - Fix issue with patcher not working with spaces in path
    - Fix crashing issue in cuetool for extracting bin name

* v0.1.0 - 20230619 - Private distribution
    - Fixed some bugs
    - Finished build tools to be completely self-reliant
    - Finished release patcher flow

* v0.0.1 - 20230614 - Private distribution
    - Saturn only
    - Completely rewritten using tooling with no "magic" data
    - Supports all 3 scoring modes and both 3-button and 2-button shot modes

* v0.0.0 - 20181223 - Not distributed
    - ST-V patch ROM only
    - ROM hand-crafted, rather than using reproducable tooling
    - Crashes in Stage 5 if Stage 2 was selected
    - Special scoring only, no mode selection
