Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xan1242/crashbashex
Crash Bash Extractor
https://github.com/xan1242/crashbashex
crash-bandicoot crash-bash extractor game game-mod game-tool midi ps1 psx reverse-engineering sony-playstation sony-ps1 sony-psx
Last synced: 4 days ago
JSON representation
Crash Bash Extractor
- Host: GitHub
- URL: https://github.com/xan1242/crashbashex
- Owner: xan1242
- License: mit
- Created: 2022-08-07T19:32:59.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2022-08-07T22:02:34.000Z (over 2 years ago)
- Last Synced: 2023-03-06T10:21:34.403Z (over 1 year ago)
- Topics: crash-bandicoot, crash-bash, extractor, game, game-mod, game-tool, midi, ps1, psx, reverse-engineering, sony-playstation, sony-ps1, sony-psx
- Language: C++
- Homepage:
- Size: 482 KB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Crash Bash Extractor
This is a quickly-written utility to extract the data file from Crash Bash.
Currently it only supports unpacking.
## Usage
```batch
CrashBashEx InExeName InDataName OutFolder TableStart TableEnd
```For example, for the July 26 demo (found on US Demo Disc 38), the table is located at the file offset 0x335A0 and ends at 0x343F0. This can be discovered through tools like IDA or Ghidra.
More specifically - the first file load will attempt to load the last file in the table, which is the code overlay with most of the game code. To find the loading function, look for a string like "load file start" and cross-reference its earliest call (should be close to main() ).
Its first argument leads to the last entry in the table. That should lead you to the actual table. Simply visually inspect where it starts and ends, it should be surrounded by zeroes.
The following command will result in extracted files:
```batch
CrashBashEx CRASHBSH.EXE CRASHBSH.DAT output 0x335A0 0x343F0
```## Extra
I've also included a ripped song that was unused in Crash Bash (from the early July 26th demo).
You can play it either with a SF2+MIDI player (XMPlay, foobar2000, Falcosoft MIDI Player), or with Winamp (through MS Synth DLS) or through the PSF. PSF was created with the Davironica generic driver, so no looping on the PSF for now.
To hear it ingame in the Warp Room, apply the following code (prefereably AFTER entering the game, not in the Demo Disc menu):
```
BETA MUSIC IN WARP ROOM
80042FD8 1084
80042FDC 5F90
80042FDE 0002
```