-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Doesn't create a config yml for ps2 title #341
Comments
Hey! Thanks for your bug report. Sadly I agree the script should probably give an error message for not supported formats tho. |
There was talk of reading some data from the ELF header to distinguish different elf types.. i think that checking the arch is 5900 seems good enough?
Specifically looking at the >>> with open("SCUS_974.72", "rb") as f:
... data = f.read()
>>> int.from_bytes(data[0x24:0x28], byteorder="little") & 0x00920000 == 0x00920000
True |
Believe the accurate flags will be 0x2092xxxx EABI seems to sometimes vary between binaries, but very commonly is in 64 bit mode (0x4000). I confirmed with Kingdom Hearts, Kingdom Hearts Re:Chain of Memories, and Sly Cooper, all of which have the flag 0x20924001. |
My thoughts for just looking for 0x0092 was that it should be enough without having to worry about any edge cases. As it stands create_config doesn't support ps2, so the 5900 arch would be sufficient. Ps2 and onwards are going to see more games written in c++ than plain c, so I'm not sure how many more platforms can be added without major work |
I'm not aware of any other device ever using r5900 besides ps2, so that's probably completely accurate enough as is, though I think that 0x20000000 would always be present for ps2, since EE utilizes a custom variation of mips 3, leading the check to be for 0x2092 rather than 0x0092. |
C:\Users\mynam\mygame>py -3.10 -m splat create_config SLPM_661.32
C:\Users\mynam\mygame>
nothing
The text was updated successfully, but these errors were encountered: