Page 1 of 1

official ps2 sdk compatibility.

Posted: Sat Mar 12, 2005 3:31 am
by chamcham
New to ps2dev here.
Just a couple of questions:
- Is ps2dev development source code compatible with official ps2 sdk?
- If so, can't seem to find the libgraph functions (at least). If they aren't there, may there be an easy way to, well, "make" them?

Thanks in advance.

Posted: Sat Mar 12, 2005 6:34 pm
by Guest
Some problems with your request:

1. Anyone who "knows" what libgraph does, should be under NDA and therefore can't "make" them for homebrew. If they are not under NDA, then they have illegal possession of Sony Software, and should stay away from here.

2. Or, if one has been able to observe their API by reversing code that uses it, then they must write a clean room version. Thats your job, no one is going to do it for you on request. :) But maybe someone already under NDA might be able to comment on whether that is even possible to know outside of the Sony kit.

In general, questions involving Sony kit may tend to be frowned on here, because they are either definitely involving warez kits, or enter a gray area that generally isn't useful for a legal open sourced SDK anyhow.

Posted: Tue Mar 15, 2005 7:07 am
by chamcham
Hello.

1) Maybe I'm wrong (I'm am new to this), but shouldn't libgraph deal with graphics rendering??? Concerning the "illegal posession" of a devkit, is I think saying too much. Maybe that someone just has a friend who does have the kit, or works for a company that has the kit, or just himself works for a company that has the kit, and would like to be able to code ps2 programs at home with ps2dev while make them compatible with the official ps2. Either way, the fact of asking about source code compatibility means that someone may be concerned about doing things legally.

2) I'd gladly do the job of "making" the wrapper. I say wrapper (over existing ps2dev graphics classes) because I guess that's just what would be necessary, although I may be completely wrong, I'm new to this (I don't even know MIPS asm yet), so I do not actually know for sure what libgraph does, just guessing; all I know is it isn't here.

Some of the reasons to have ps2dev be source code compatible (at the api level) with the official kit may be (both reasons being related with "poor man's path" to ps2 development):
1) Being able to prototype an application for ps2 using homebrew, and later on to jump to "official", maybe after getting some deal with some company, or whatever.
2) Being able to actually learn ps2 development for someone who doesn't have the money/resources to buy the official kit, to maybe be able to have access to one of those nice jobs that say "PS2 Developer - 100K".

Some people may consider option two more interesting that the first one, and someone else may think the other way around, and for some none are acceptable for an opensource project, although I have to say that one of the primary reasons of the existence of GNU and all the opensource effort is the educational one.

By the way, one more question please: are the other components of homebrew source code compatible with official kit? I just noticed libgraph isn't there, but maybe the others aren't either.
I think it's a shame if they are not compatible because I'd guess that both should do pretty much the same (thinking about the coding part of ps2 development), but I may be wrong, I'm just guessing again.


Thanks in advance.

Posted: Tue Mar 15, 2005 8:00 am
by mharris
From the very few fragments of 'official' code that I've seen, I'd say that if there's any compatibility anywhere, it's more of a coincidence than anything else. Maybe the syscall names are the same, but any higher-level functionality either doesn't exist in ps2dev, or is implemented totally differently. Most of us do not have any access whatsoever to the official SDKs, so it's hard to even know what's available.

For example, looking through the classic document from SCEA research, Procedural Rendering on PlayStation 2, take a look at the "10 Things Nobody Told You" section, and the source code to send a GIF packet on pages 13 and 14... Reading between the lines, it seems like the SCE SDK uses C++ classes and syscalls; we in ps2dev-land tend to write directly to the DMA hardware.

I agree compatibility would be a nice thing, but it would be pretty much impossible to achieve.

Posted: Tue Mar 15, 2005 8:05 am
by djhuevo
hi

lalib-0.1s2 at http://ps2dev.ofcode.com/ is basically libgraph and libdma reversed (and libVu0 from the SCE), is based on an old lib I think.

I don't see the problem in having pseudo compatibility with oficial libs, most the IOP drivers are basically the SCE ones reversed, and all the dev is based in reverse engineering, and linux kit docs

BTW, you can easily can adapt libps2dev http://playstation2-linux.com/projects/ps2neural to run in native mode, this lib is like the oficial API, but in a LGPL flavour

remeber: disassembling and learning is a good excercise (at least was for me)

Posted: Fri Mar 25, 2005 6:22 pm
by chamcham
That seems to be it!
Now, on to coding... ;-) Thanks a lot.