lab313ru / ghidra_psx_ldr

Sony Playstation PSX executables loader for GHIDRA
236 stars 31 forks source link

Cannot open projects #69

Open Kneesnap opened 1 year ago

Kneesnap commented 1 year ago

I have a project which contains between 50-100 executables. Most of the executables are different versions of a particular PSX game, the others are Windows builds, related tools, etc. Unfortunately, ghidra had a hard crash a little while ago. I thought everything was fine since most of the projects I had seemed perfectly fine. Unfortunately it took a while to realize that none of the PSX executables load anymore.

Here's what happens when I try to open it in Ghidra. Example

This is strange because I have the plugin installed and enabled just fine. In fact, if I add a new PSX executable to the project, it still works perfectly!

However, I notice that the new ones seem to have their processor listed as "MIPS" instead of "PSX". I'm not sure I understand why that is.

I am using Ghidra 10.1.1, with ghidra_10.1.1_PUBLIC_20220123_ghidra_psx_ldr.zip (outdated since that's what I started this project with). Unfortunately, I need to recover these projects since some of them are incredibly well documented in terms of structs, functions, etc. What are my options for recovering from this?

nicolasnoble commented 1 year ago

The PSX:LE:32:default processor language should be provided by the plugin, so it'd really mean it's not installed properly.

You could always kludge by changing the following file in your Ghidra installation: Ghidra/Processors/MIPS/data/languages/mips.ldefs. The MIPS:LE:32:default definition on top can either be copied or renamed to PSX:LE:32:default. I'd highly advise to backup your databases first however prior to opening it with this kludge.

You'll lose some of the specific opcodes from the GTE.

Kneesnap commented 1 year ago

Hmm, how would I fix the broken installation? I'd hope to fix it that way.

lab313ru commented 1 year ago

You can try to change your project language in properties.

Kneesnap commented 1 year ago

You can try to change your project language in properties.

I did try that, but it would error that it couldn't open the project (Presumably because of the LanguageNotFoundException)

nicolasnoble commented 1 year ago

You can try to change your project language in properties.

You can't, as ghidra will search for the PSX:LE:32:default one which doesn't exist, and throws an exception. It's a bit bad.

nicolasnoble commented 1 year ago

Hmm, how would I fix the broken installation? I'd hope to fix it that way.

Maybe try uninstalling / reinstalling the extension ?

lab313ru commented 1 year ago

You can send me one of your projects in a private way (newinferno@gmail.com), I'll try to do something.

Kneesnap commented 1 year ago

Great! I'll follow up on this in a day or two when I get a chance.

On Sun, May 21, 2023, 8:53 PM Vladimir Kononovich @.***> wrote:

You can send me one of your projects in a private way ( @.***), I'll try to do something.

— Reply to this email directly, view it on GitHub https://github.com/lab313ru/ghidra_psx_ldr/issues/69#issuecomment-1556481539, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABSCIYJVWFHIE2U3G46EKWDXHLPNHANCNFSM6AAAAAAYJFLKLM . You are receiving this because you authored the thread.Message ID: @.***>