Hi there,
It has come to my attention that PCSX2 finally supports some PSX games. I'd like to request a feature which no emulator so far supports. Some PSX development games utilise a method called "pcopen" and "pcclose" etc. These methods are part of the SN Systems SDK. The methods in question allow reading files from a computer via the PSX's serial port (SIO1). I have a development version of Tomb Raider 4 which uses this and I cannot boot the game since it wants to read files from a computer. Is there any way PCSX2 could somehow mount a folder to the SIO1 interface to read files from that way? It would allow me to decompile code from the original Tomb Raider 4 for PlayStation.
Cheers.
PSX mode is still a side project at this point, so it's not really our focus. If your PS1 has a parallel port like mine, than you're going to have much better luck with a modchip and the physical hardware. Good luck :)
My spider senses think @ramapcsx2 and @gigaherz to be the two most qualified person that may have something to add to this if in the mood.
I declare myself "way out of touch". I may have touched sio2 in the past, but that was only a side-effect of touching something else. And it was far too many years ago to still have any useful knowledge left in my brain. ;P
Ask again when my hardware endeavors with actual PSX's touch on SIO ;)
At some point, I will look for a way to get leftover debug messages from games out of real hardware.
It's likely going to be over the SIO port, so I'll learn how this is implemented in the original design.
Anyway, why not use original hardware, as @MrCK1 suggested? It's probably far quicker and will be authentic :)
Using actual hardware is possible to get the game to launch. I need to perform dynamic analysis which isn't possible on real hardware I believe.
Have you looked at http://problemkaputt.de/psx.htm ?
I have thanks, no$psx is great, the emulator is able to print debug messages from PSX games to the console window. I've used this emulator to crack variants of "dongle" protections used on some pre-release games.
Unfortunately, no$psx doesn't implement all functionality for SIO1. When I launch Tomb Raider 4, the console log window shows "pcopen" "pcclose" (printed by the game) followed by failed to open file. I have used no$psx's debugger and all I get is -1 (invalid file handle) when PCOpen or PCClose are invoked. It's clear no$psx doesn't support reading files over SIO1, the developer confirmed it after I sent an email asking about it and didn't seem to have any interest in implementing the feature.
Cheers.
By the way .. not sure, if relevant
https://github.com/torvalds/linux/commit/8be193c7b1f44d3f4dcb27107df0831709c2deb1
https://github.com/AZO234/Linux_PSXPad
The ps1's SPI protocol is pretty well-known. I have written in the past my own "firmware" for using an usb development board to talk to a ps1/ps2 gamepad (same SPI protocol, xcept the ps2 gamepads can enable analog mode), and expose a HID gamepad on the USB end. And this was just a few years ago. In the late 90s / early 2000s there was already PSXpad drivers for win9x that could talk to a ps1 gamepad through the parallel port (or a serial port with the help of a shift register and logic converter chip).
Most helpful comment
I declare myself "way out of touch". I may have touched sio2 in the past, but that was only a side-effect of touching something else. And it was far too many years ago to still have any useful knowledge left in my brain. ;P