Unlike the early days of the PS2 where everything had to be painstakingly pieced together from the manuals and example code, lately there are some new tools to help you program PS2. Most of these are freely available for registered developers from the PS2 support websites and nearly all come with source.
The GCC inline assembler patch adds a number of new features to the inline assembler:
Introduces a new j register type for 128-bit vector registers, allowing the compiler to know that these values are to be assigned to VU0 Macro Mode registers
Allows register naming, so more descriptive symbols can be used.
Allows access to fields in VU0 broadcast instructions allowing you to, say, template a function across broadcast fields (x, xy, xyz, xyzw)
No more volatile inline assembly, the compiler is free to reorder instructions as the context is properly described.
No more explicit loading and moving registers to and from VU registers, the compiler is free to keep values in VU registers as long as possible.
No need to use explicit registers, unless you want to. The compiler can assign free registers
I've tried using some of this based on the examples, but with no success, so I'm assuming that these changes are not in our toolchain, but in one that's only available to registered developers. Has SCEI released this patch to the public? It would seem like a violation of the GPL if they haven't...
The "j" register type, along with better native support for the 128-bit data types, would be very nice.
SCPH-50001/N
HD SCPH-20401 U
Eyetoy SLEH-00031
Network Adaptor SCPH-10281
Logitech Z680 via FIber w00t!
Sony Wega TV + USB Keyboard http://staff.philau.edu/barberej/
Just to be clear, I don't want this to turn into a SCEI-bashing flamewar...
I'm just curious: if they're distributing a patch to product(s) licensed under the GPL (e.g., gcc, binutils), are they required to redistribute the source to anyone, even if the tools are only available to licensed developers? Since their changes are not being distributed to the public at large, are there requirements in the GPL that require them to distribute the source to the public at large? I don't know the answer to this, and reading the GPL doesn't shed any light on it.
Correspondingly, are there any restrictions on licensed developers who have received this patch? In other words, even if you've signed Sony's NDA, do you still have the right to distribute the patches that SCEI made to GPL'd code?
Of course, I could be jumping to conclusions here -- maybe the source is somewhere, and I just haven't been able to find it ;-)
mharris: Talk to some of the GCC hackers in #ps2dev, chances are (well I guarantee :) that they have the patches and are willng to share with you.
And no, SCEA is not in GPL violation, since they only distribute the binaries to licensed developers. Ignore anyone who suggests otherwise - that one seems to make the top ten of the misunderstood GPL list :). I don't know about the NDA bit, I remember Sparky asking for permission to distribute the patches out of courtesy to SCEE and they told him yes. But that was awhile ago, and I'm a bit fuzzy on the details. Better ask him :).
Actually, any registred developper is allowed to distribute the binutils/gcc patches. mrbrown is right: the GPL is allowing SONY to distribute his crafted binaries to some people only, and not giving out the patches to anyone directly. But, indirectly, as long as only the patches are given out, the NDA doesn't apply, because THAT would be a GPL violation (that is, unallowing people to redistribute the patches freely)
So any people who gets the patches (that is, any developper) is perfectly and utterly allowed to distribute them. And sony is perfectly "allowed" to frankly dislike this developper afterward. So, it is maybe a bit difficult to convince a registered developper to give out the patches.
So I don't know. Maybe some of you may want to try to convince registered developpers to ask the patches out and redistribute them to us. *shrug*
pixel: A mischievous magical spirit associated with screen displays. The computer industry has frequently borrowed from mythology. Witness the sprites in computer graphics, the demons in artificial intelligence and the trolls in the marketing department.
There are #ps2dev'rs that already have the SCEA GCC patches. Just ask them for them. Since they haven't posted in the affirmative, I'll tell you who it is: blackdroid and MrHTFord.
pixel: A mischievous magical spirit associated with screen displays. The computer industry has frequently borrowed from mythology. Witness the sprites in computer graphics, the demons in artificial intelligence and the trolls in the marketing department.
i was not taught the finer points of the GPL license in college... i have read about two paragraphs and do not wish to read anymore :)
the post was mostly meant to be a joke, as i don't think u will be able to reach anyone directly calling that number.
sorry sony ;-)
SCPH-50001/N
HD SCPH-20401 U
Eyetoy SLEH-00031
Network Adaptor SCPH-10281
Logitech Z680 via FIber w00t!
Sony Wega TV + USB Keyboard http://staff.philau.edu/barberej/