tonyhax - ein Speicherstand Softmod für die Memory Card der PS1 by socram8888
Warum das ganze? Der Entwickler hatte eine original verpackte PSone und wollte deshalb keinen Modchip einbauen. Bei einer PSone ist der Einbau eines Modchip sowieso nicht leicht und die PSone checkt beim boot den Region String. Somit benötigt man einen Full Size Arduino Atmega328 Chip welches ebenfalls mehr Kabel braucht für die Installation.
Außerdem wird bei bereits bestehenden Lösungen wie Action Replay oder dem Swap Disc Trick keine CD-DA Games oder Multi Disc Games unterstützt.
Installation:
Ihr braucht Zugriff auf die PS1 Memory Card zb über eine MemoryCard Pro oder eine PS2 mit FCMB und uLaunch - andere Adapter wie Memcarduino gehen auch.
- Ihr müsst einen PC basierten Memory Manager nutzen zb: MemcardRex 1.8 oder 1.9, http://onorisoft.free.fr/retro.htm?psx/psx.htm oder ein DexDrive
- Alles was Ihr dann nunrnoch tun müsste ist die heruntergeladenen Savegames auf die Memory Card kopieren. Das jeweilige Spiel muss mit der GameID übereinstimmen und SPL File muss ebenfalls mit drauf. Ihr braucht also beides auf der PS1 Memory Card
Wer den Hack haben möchte aber keine Möglichkeit hat diesen auf die PS1 Memory Card zu bringen - ich habe Ihn bei mir installiert und Ihr könnt mir gerne Eure PS1 Memory Card zusenden und ich installiere den Hack der für Euer Original Spiel ist!!
Es werden folgende Spiele aktuell unterstützt:
Game | Region | Code | MCS file | Raw file |
tonyhax SPL required | - | - | tonyhax.mcs | BESLEM-99999TONYHAX |
Brunswick Circuit Pro Bowling | NTSC-U | SLUS-00571 | brunswick1-us.mcs | BASLUS-00571 |
Brunswick Circuit Pro Bowling | PAL-E | SLES-01376 | brunswick1-eu.mcs | BESLES-01376 |
Brunswick Circuit Pro Bowling 2 | NTSC-U | SLUS-00856 | brunswick2-us.mcs | BASLUS-00856 |
Brunswick Circuit Pro Bowling 2 | PAL-E | SLES-02618 | brunswick2-eu.mcs | BESLES-02618 |
Castrol Honda Superbike Racing | NTSC-U | SLUS-00882 | castrolsb-us.mcs | BASLUS-00882CHSv1 |
Castrol Honda Superbike Racing | PAL-E | SLES-01182 | castrolsb-eu.mcs | BESLES_01182CHSv1 |
Castrol Honda VTR | PAL-E | SLES-02942 | castrolvtr-eu.mcs | BESLES-02942CHSVTRv1 |
Cool Boarders 4 | NTSC-U | SCUS-94559 | coolbrd4-us.mcs | BASCUS-9455916 |
Cool Boarders 4 | PAL-E | SCES-02283 | coolbrd4-eu.mcs | BESCES-0228316 |
Crash Bandicoot 2: Cortex Strikes Back | NTSC-U | SCUS-94154 | crash2-us.mcs | BASCUS-9415400047975 |
Crash Bandicoot 2: Cortex Strikes Back | PAL-E | SCES-00967 | crash2-eu.mcs | BESCES-0096700765150 |
Crash Bandicoot 3: Warped | NTSC-U | SCUS-94244 | crash3-us.mcs | BASCUS-9424400000000 |
Crash Bandicoot 3: Warped | PAL-E | SCES-01420 | crash3-eu.mcs | BESCES-0142000000000 |
Sports Superbike | PAL-E | SLES-03057 | superbike1-eu.mcs | BESLES-03057SSBv1 |
Sports Superbike 2 | PAL-E | SLES-03827 | superbike2-eu.mcs | BESLES-03827SSII |
Tony Hawk’s Pro Skater 2 | NTSC-U | SLUS-01066 | thps2-us.mcs | BASLUS-01066TNHXG01 |
Tony Hawk’s Pro Skater 2 | PAL-E | SLES-02908 | thps2-eu.mcs | BESLES-02908TNHXG01 |
Tony Hawk’s Pro Skater 2 | PAL-DE | SLES-02910 | thps2-de.mcs | BESLES-02910TNHXG01 |
Tony Hawk’s Pro Skater 2 | PAL-FR | SLES-02909 | thps2-fr.mcs | BESLES-02909TNHXG01 |
Tony Hawk’s Pro Skater 3 | NTSC-U | SLUS-01419 | thps3-us.mcs | BASLUS-01419TNHXG01 |
Tony Hawk’s Pro Skater 3 | PAL-E | SLES-03645 | thps3-eu.mcs | BESLES-03645TNHXG0 |
Tony Hawk’s Pro Skater 3 | PAL-DE | SLES-03647 | thps3-de.mcs | BESLES-03647TNHXG01 |
Tony Hawk’s Pro Skater 3 | PAL-FR | SLES-03646 | thps3-fr.mcs | BESLES-03646TNHXG01 |
Tony Hawk’s Pro Skater 4 | NTSC-U | SLUS-01485 | thps4-us.mcs | BASLUS-01485TNHXG01 |
Tony Hawk’s Pro Skater 4 | PAL-E | SLES-03954 | thps4-eu.mcs | BESLES-03954TNHXG01 |
Tony Hawk’s Pro Skater 4 | PAL-DE | SLES-03955 | thps4-de.mcs | BESLES-03955TNHXG01 |
Tony Hawk’s Pro Skater 4 | PAL-FR | SLES-03956 | thps4-fr.mcs | BESLES-03956TNHXG01 |
XS Moto | NTSC-U | SLUS-01506 | xsmoto-us.mcs | BASLUS-01506XSMOTOv1 |
XS Moto | PAL-E | SLES-04095 | xsmoto-eu.mcs | BESLES-04095XSMOTO |
Source:
https://orca.pet/tonyhax/ // https://github.com/socram8888/tonyhax
Release/Download:
https://github.com/socram8888/tonyhax/releases
v1.2.1
- Support games lacking a SYSTEM.CNF file. Fixes Gunners Heaven (NTSC-J) (SCPS-10006) not booting.
- Support games with a SYSTEM.CNF lacking certain configuration entries. Fixes Tekken 3 (NTSC-U) (SLUS-00402) not booting.
- Clear some registers for bugged games. Fixes Pepsiman (NTSC-J) (SLPS-01762) not booting.
v1.2
- Add new games as entry points
- Added support for European NetYaroze consoles.
v1.1.2
- Fixed Brunswick Pro Circuit 2 (NTSC-U) (SLUS-00571) entry point, which was causing the SPL to fail loading.
- Loading steps in the entry points are now color coded for easier debugging:
- Purple (Brunswick only) indicates the memory cards are being reinitialized.
- Blue indicates the SPL is being read from the memory card into memory.
- Green indicates that the SPL is about to launch. This shouldn flash very very briefly.
- Red indicates the SPL couldn't be found or loaded.
- Added an integrity. Shall the SPL load in a corrupted state into the
main memory (for instance, if the memory card is damaged, the file is corrupted, or some other process caused the load process to fail), it'll now report so during the boot on the screen. - The SPL will now report your system BIOS. If you are experiencing any issue, please remember to tell me the BIOS version.
Essentially this version has just been released to fix the Brunswick 2 bug, which was causing me a serious headache as the payload was booting just fine on the emulator, but failing on real hardware during the phase in which the SPL was loading into main memory, with all the previous steps (card initialization, file open...) executing just fine.
The FileRead call was executing instantaneously, as if it wasn't reading anything, despite me explicitelly checking the return value. Instead of getting to the red screen of dead, it was just turning black, something I don't have implemented anywhere on the code.
After adding all those logging features, it turned out that the issue was simply that the save file had a wrong address, and it was causing the stack pointer to never get reinitialized. FileRead apparently has enough nested functions to cause the call stack to grow larger than what the fast RAM - where Brunswick helds the stack - could hold and it just crashed into a black screen.
Just like v1.1.1, this is just a bugfix release - if previous versions were working fine for you and you don't mind missing the cool seizure-inducing loading screens, just skip it.
v1.1.1
- The SPL file has been renamed from "TONYHAX-SPL" to "BESLEM99999-TONYHAX" so it follows the standard naming conventions.
- Added MCS save files for easier usage on visual, desktop memory card editors.
The reason behind this small release is that an user on Reddit was having issues importing the SPL file on Dexdrive because of the non-standard name. Thus this release changes the name to stick to the standard format every other PS1 game used for game saves.
This release otherwise doesn't change anything in the code. If v1.1 works well for you, there's no need to update - this version adds no new games nor improves compatibility.
v1.1
- New supported games as entry points.
- Restore kernel RAM contents. Fixes booting of Mad Panic Coaster (NTSC-JP) (SLPS-00880) and Formula 1 Championship Edition (NTSC-US) (SLUS-00546)
- First stage will now display a red screen if it can't find the SPL, instead of crashing.
v1.0 - First release:
- Everything should be working. Tested on a SCPH-102 PAL console.