Exophase said:
You know, I was just thinking about this. OpenGL ES 2 requires that you're able to upload binary shaders, correct? So you can circumvent OpenGL ES 2 and GLSL entirely without having to modify it or create drivers. If he has reverse engineered USSE and would have released the information by now then someone could have already written an assembler, and for a lot of shaders writing them in assembly isn't really that much harder than writing them in something like GLSL. It's just much less portable, of course. But this could give access to whatever features the USSEs have that are not exposed to GLSL and are not easily/often generated via optimization. And you'd be able to avoid invisible pitfalls that come from using operations that the ISA isn't good at. Not to mention avoid compiler deficiencies.
i think that's a viable idea. i'm not sure the IMG binary shader format is just plain unencrypted binary blobs, but i also doubt there would be
that much encryption present there. so, yes, given knowledge of the ISA, with a bit more effort an assembler could be viable.
Really I don't understand why PowerVR doesn't make the USSE ISA open, with a freely available assembler. Maybe they will eventually.. but right now they're just shooting themselves in the feet, because they're almost definitely capping performance on something this way. It looks like the industry has convinced themselves that assembly language never helps for anything, even something as tight and specialized as shader code. And without an opportunity to it's going to be hard for anyone to prove them wrong. It really irritates me not knowing what my shaders will look like on the pipeline it's being executed on, especially when it could probably take minutes to write a better one in USSE ASM.
while i wouldn't venture into IMG's motives here, i'm afraid in their case things may not be as simple even if they wanted to open it, as they're just the raw IP holder, not the product vendor. what if apple, for instance, would prefer those closed - would IMG go against their major clients (and shareholders)? ..i still want to murder somebody each time i remember how they treated VGP vertex shaders on the MBX.
If maciek did succeed then maybe one of us could too? I'm sure he has more specialized knowledge than most of us but at least this isn't so 3D-centric as to make me utterly useless on it >_<
not at all : ) to the best of my knowledge, and compiler tech aside, it's generic GPU stuff in there - various buffers traversing various routes, command lists and syncrinization mechanisms.
darkblu, you interested any? maciek WAS asked politely made it extremely clear that he's not giving anything to anyone. I don't hold this against him (also I feel bad for being such a douchebag in his thread back then ;p) but I don't know if it's really worth it to try much harder. Especially when he seems pretty gone now.
heh, if somebody should feel bad that's me, as i originally jumped onboard and then did next to nothing. but i'm generally optimistic on this one, as i believe maciek will likely resume his work once he gets his pandora. basically, last time we talked he was at a stage where he needed the drivers running, as opposed to just doing static analysis.
but yes, i'm interested and never ceased to be. i, too, though, may need my pandora to be able to be really useful here.
ps: i think it's time you cleaned up your pmessage box ; )