Dump data from a psx (Sony PlayStation) through the screen
See screen_data_reader for the reader.
-
NTSC PlayStation and ability to capture cleanish video from it. The video must have the correct aspect ratio and decent lighting. A phone camera with focus lock on a flatscreen TV or a capture card can work. A CRT probably won't work. Otherwise it can be tested with an emulator.
-
Method of booting psx homebrew i.e modchip, FreePSXBoot, tonyhax, swap trick, etc.
-
A copy of
psx_screen_dumperdepending on booting method. -
screen_data_reader. For small videos you may be able to use the web app linked on that page.
-
[Optional] For easily converting the raw dumped memory card save images psx_mc_cli
- Launch
psx_screen_dumperon your PlayStation. - Select Dump mc# saves where # refers to the card number that has your desired save (Press X)
- Scroll to your desired save if needed
- Hold up your camera and verify you have a good picture; correct aspect ratio, clear and visible text. On devices[phones] with autofocus you may need to lock the focus so that it doesn't go crazy when the data patterns changes.
- Start recording, try to keep the camera as steady as possible centered on the TV.
- Press X to start the data patterns, record until you return to the menu.
- Run
screen_data_readeron your video file. If all goes well it should create a raw memory card file such asBASLUS-01066TNHXG01and print the crc32. - If it didn't go well check the log to see if it printed any
append framemessages. Possibly adjust video camera settings and retry. - [Optional] Convert your save to
mcsor make amcdmemory card image withpsx_mc_cli
- Launch
psx_screen_dumperon your PlayStation. - Verify output from your capture card is legible
- Start recording from capture card.
- Select
Dump bios - Stop recording
- Run
screen_data_readeron your video file../screen_data_reader.py -i cap.avi. If it worked it should createPSX-BIOS.ROMand print the crc32. - If it didn't go well check the log to see if it printed any
append framemessages. Possibly adjust video capture settings and retry. - [Optional] Verify your bios crc32 with FreePSXBoot BIOS CRC32 table to confirm you got a good dump. If you have a custom or patched bios it probably won't match.
MIT, see LICENSE.
BIOS charset usage and crc32 adapted from tonyhax.
Feel free to ask in the PSXDEV discord
Install the MIPS toolchain
sudo apt-get install gcc-mipsel-linux-gnu g++-mipsel-linux-gnu binutils-mipsel-linux-gnu
Download the nugget submodule
cd thirdparty/nugget && git submodule init && git submodule update && cd ../../
Install the converted PsyQ 4.7 libs. Currently SHA1 36E7A1D606568363F1EBE67E1B499E61FA48DE00
wget http://psx.arthus.net/sdk/Psy-Q/psyq-4.7-converted-full.7z
7z x -o./thirdparty/nugget/psyq/ psyq-4.7-converted-full.7z
make builds a .ps-exe
make iso builds an iso
make nocash builds a .ps-exe with .exe extension instead for loading in no$psx
make actualclean cleans
Nicolas Noble for build environment. ABelliqueux for easy PSYQ setup tutorial. Many others in the PSXDEV discord.
- PAL support