The above video goes away if you are a member and logged in, so log in now!
A little help concerning .SFO files
A little help concerning .SFO files –
As my final year has started at university, and since I have an abundance of free time before all hell breaks loose in terms of workload, I figured it'd be fun to mess about in the PS3 homebrew scene. I'm currently working on something in Java, namely a PS3 Game editor/manager (another, I know, I started this a while back though, and I'm not quitting now).
The GUI and such were the easy part of the application. I currently have my functions setup so only valid 'root' directories will be read from in/external hard drives, and that a directory has games in it to read. The next natural step would be to print out the details of each game, using the .SFO file. This is the part I don't quite understand. How do I go about reading this file? What process of making it readable do I have to go through/create in order to make it an aesthetically appealing representation, instead of the gibberish you get when opening the file now?
If anybody can give me an example of how to 'convert' this file into a readable format (like an array, linked list, etc.) I would appreciate it greatly. I prefer to get my example in code (whatever syntax is fine, obviously), but if that's impossible I would be just as appreciative with a clear explanation in plain text. I have already looked at this page with a rough explanation: http://www.pdc.me.uk/pbpdocs/#3.2, but that didn't quite make it all too clear on what to do in my code itself. Unfortunately.
Kind regards & thanks in advance,
How about this?
[ame="http://www.youtube.com/watch?v=AVqjlJO1uAA"]YouTube - PS3 SFO Editor Linux Edition v1.0.0[/ame]
Edit: Sorry that didn't answer your question directly but maybe if you could see the source code of this program it would show you how it's taking apart the sfo file and then you could include it in your software
I have already looked into that program, and as far as I can tell the source code is unavailable (closed source). Hence my wish to get an explanation on how to read the file, or perhaps a code example in whatever syntax.
Originally Posted by unidentified
If you interested I can provide you with a DLL that parses the file for you. You enter the filename and it returns an arraylist with the label and key.
If you're just looking for an explanation -- http://www.pdc.me.uk/pbpdocs/
I was in your shoes a week ago learning how to read the file.
More specifically, you'll want to look at this page.
Originally Posted by namdlo
But if all you want to do is read the game name and version and whatnot, it's not very hard to understand. Take a few .SFO files and open them with your favorite hex editor. You'll understand the structure in no time.
The DLL would be great! But my aim is to develop the entire application in Java, so it can run on any platform that has the JRE installed. Unfortunately the link you posted is something I have already mentioned in my first post, and I'm just really not familiar with what is being described there. I'm just your run-of-the-mill desktop developer that deals with boring office applications. I'm looking for some examples in terms of code. Not the entire class, just some example functions so I can piece all of it together. Or like mentioned before, an explanation in plain text on what needs to happen to make it readable. The DLL would be a great start though!
Originally Posted by namdlo
I appreciate the help, but please take the time to read what I've typed down in my original post. That exact link is in there as well, as well as my plea for someone to explain it in greater detail (codewise). If you have the ability to explain it to me in greater detail, than you have both my ears and eyes at your disposal at any given time!
Originally Posted by Access_Denied
[QUOTE=Aniblaze;529554]The DLL would be great! But my aim is to develop the entire application in Java, so it can run on any platform that has the JRE installed. Unfortunately the link you posted is something I have already mentioned in my first post, and I'm just really not familiar with what is being described there. I'm just your run-of-the-mill desktop developer that deals with boring office applications. I'm looking for some examples in terms of code. Not the entire class, just some example functions so I can piece all of it together. Or like mentioned before, an explanation in plain text on what needs to happen to make it readable. The DLL would be a great start though!
I'll work on packaging it up for you.
If you want to do it yourself the first thing you're going to have to work on is reading in the file and working with UTF32 data.
EDITED IN TOTAL, PREVIOUS POST WAS REDUNDANT CONSIDERING THE PROGRESS MADE!
Originally Posted by Aniblaze
Well with just your tip of what file type the file was, I was able to produce the following from the Folklore .SFO. I think I'm on the right track, but I am wondering if the jibberish you see at the beginning of my print is something to worry about. I can see the headers and the following data perfectly, and it seems like I've done the right thing. But the jibberish at the beginning of the stream is still worrying me. I have provided screenshots so you can see what is being printed out. Any final tips? If you want to see the function, feel free to ask.
Big major thanks for the help so far!
Last edited by Aniblaze; 09-23-2010 at 09:16 PM.
Reason: Figured some stuff out, the initial post seemed redundant