LiEnby / chovy-sign

"Sign" PSP ISO's to run on Unmodified PSVita Firmware.
Other
65 stars 7 forks source link

PS1 translation crashes because of compression ? #19

Open TheShadowRunner opened 1 year ago

TheShadowRunner commented 1 year ago

I'm trying to use chovy-sign to convert a PS1 translation: Front Mission 2. The creation process goes fine except I wasn't able to input a JPN title (please see pic).

After transferring to Vita, game shows up and loads ok but it crashes around the end of the intro FMV. Consistently, at always the same time. There is an error "Memory card can't be accessed" and back to live area. This build also crashes similarly at first FMV when launched via Adrenaline.

If I convert the iso myself to PBP it works perfect in Adrenaline (but of course doesn't show up as bubble). I notice chovy-sign seems to use max compression because the generated iso is 150 megs while my PBP is 200 (uncompressed game is 400). I suspect compression could be the issue. Is there any way to disable compression to test ? Thanks again for your help.

unicode

LiEnby commented 1 year ago

when you use chovy-sign to create a PBP file, the PBP output is in the offical POPs format, it is identical to the format used by sony, on the PS Store,

however using a tool such as PSX2PSP or others, is actually a modified version of the POPs format- some changes include.. PGD header is missing as the iso header is just not encrypted, or signed, ISO is not compressed, PCM audio is used for CDDA instead of atrac3, EDC and ECC section of the iso image are intact, whereas sony wipes them, probably to improve compression ratio

anyway this modified version of the POPs format, requires modifications to the POPs emulator in order to work, which is usually part of whatever PSP Custom Firmware you are using.

this is why the game does not appear on the livearea, (SceShell has absolutely no idea what to make of it, and even if it did, pspemu on its original firmware, would have no idea how to run it)

--

anyway unfortunately with the official POPs format, there is no way to disable compression,

i actually looked for a way to do so quite alot, because it was really a pain to implement a compressor, as until chovy-sign2, there simply was no public code to compress the psx lzrc format.

the title, is well the ISO9660 Disc Label- im not sure why its broken there, im pretty sure ISO9660 doesn't even support unicode, maybe its Shift-JIS or something. just copy your own title in there ..

and the "Memory Card cannot be Accessed", that happens when the folder name the game is installed in- does not match the disc id in the pbp, and iso header. this shouldn't actually be able to happen at all w chovy-sign as it always uses the right folder name, so no idea about that one

also crashing could also be to do with the iso being in invalid format since its a translated one and i know the vita's iso parser is incredibly picky, or possibly some translation patch data was put in the ECC or EDC section, which in the official POPs format, is actually wiped (all set to 0x00) to improve the compression ratio .. probably -- error correction data is kinda pointless when your running your games off a memory card after all. - but im not really sure, PspEmu is really a pain in the ass to debug, but i tested my lzrc compression algorithm by emulating the actual psp decompress function so, im fairly confident in it, but i gues idk maybe could be that also

TheShadowRunner commented 1 year ago

I have a better understanding of how chovy works and the difference with PSX2PSP, thanks.

Regarding the title, yes I believe it's Shift-JIS. I tried changing my windows locale to JPN and set jpn for non-unicode apps. But this didn't make a difference in chovy-sign display of blocky characters. Anyway, I put フロントミッション2 in there and it partly worked (please see pic, left side is my psx2psp pbp, right side is chovy), but at least it's displayed correctly on the Live Area.

The "Memory Card cannot be Accessed" error I get occurs well after the game has launched ! (every time at the end of the first intro FMV). I think it's more as a generic error that something screwed up, in this case.

Regarding the compression, while there is no way to disable it, maybe there is a way to set its strength ? (in the sense of, for exemple, ciso allows 10 compression settings). I would like to try with lowest compression.. Would you be interested in that FM2e iso to test (what causes the FMV crash)? That iso runs on real hardware (burnt disc) without issues so I have confidence it it being well put together.

Image1

LiEnby commented 1 year ago

i dont have a compression strength and don't really know how to implement stuff, i basically just kept messing with the psp lzrc compressor .. trying stuff with it until the psx decompress function would give the correct result,

it is werid to get 'cannot access the memory card' after the game has already started, i have definitely never seen that before .. yeah sure send me the ISO so i can look at it um

TheShadowRunner commented 1 year ago

Arg so I guess currently any game can crash at any point if it's not compatible with the compression ? Here it is, thanks!

TheShadowRunner commented 10 months ago

Hi LiEnby, were you able to take a look at that translated iso ? ^