xboxscene.org forums

PlayStation3 Forums => PS3 Hacking Forums => General Technical Hacking Discussion => Topic started by: openxdkman on October 07, 2007, 03:24:00 AM

Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on October 07, 2007, 03:24:00 AM
IronPeter, on ps2dev site, made interesting progress related to RSX usage!
http://forums.ps2dev.org/viewtopic.php?p=59170#59170

The only thing hypervisor does with RSX under any "Other OS", is to "bitblt" frame buffer from cpu side ram towards gpu side ram. The place where GPU commands are put is called FIFO or push buffer.
This area has finally been located and can be altered!

RSX fun is about to start!
(From now, becareful with firmware updates)
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: bucko on October 07, 2007, 09:48:00 AM
Very nice biggrin.gif
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: deilzfcjk on October 07, 2007, 06:55:00 PM
QUOTE(bucko @ Oct 7 2007, 05:24 PM) View Post

Very nice biggrin.gif

What is RSX again? Is it for ram related stuff? N/m. It's their graphics subsystem. I read the ps2-dev article.
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: bucko on October 08, 2007, 07:32:00 AM
Yes but also XDR ram is unused by PS3Linux so hopefully this will allow access to XDR as well..

This post has been edited by bucko: Oct 8 2007, 02:32 PM
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on October 08, 2007, 12:00:00 PM
RSX is the name of the NVidia GPU chipset on PS3.
To be able to send command to it is extremely interesting...

EDIT:
It seems possible to do 3D with RSX thanks to a HUGE security hole.
For now, it seems hole exists in fw 1.80 and no longer exists in fw 1.93.

RE-EDIT:
Ignore previous edit. Actually hole still exists in 1.93. All is good so far...

NOTE:
Some think it's a hole, some others don't... (they think it will be used later by official incoming drivers). Personally, I doubt such driver comes...

This post has been edited by openxdkman: Oct 17 2007, 07:48 AM
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on October 17, 2007, 12:47:00 AM
Hypervisor is using RSX under "Other OS" mode, for bltbit (i.e rectangle pixel copy from cpu side ram towards gpu side ram). GPU has been initialized properly by Hypervisor for that purpose.
Being able to insert our own bitblt commands after the one issued by HV at each frame, means that we can expect 2D rectangle hardware accelerated copy (with stretching or not) into Linux software.

fast 2D emulators, Linux driver allowing fast window moving on desktop, etc...

for 3D, it's more complex because it's possible the GPU hasn't been prepared for that by HV...

Also another big gain is the ability to store data into the 252Mb of gpu side ram and reuse it for immediate bltbit drawing (fast, this time).

We really can't say now that PS3 homebrew has only 256Mb.
We now have 506 Mb (252Mb more likely reserved for 2D sprites storage).
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on October 25, 2007, 07:45:00 AM
Glaurung & Ironpeter explained the security hole in details on this page :
http://wiki.ps2dev.org/ps3:rsx

It appears that closing the hole would turn off the existing official graphic driver of Linux distro on PS3 (even if it doesn't use any RSX feature beside the global screen bitblt -i.e copy-).
So, there is a chance this hole never gets closed.
If this hole never allows piracy but allows homebrew with accelerated graphics, everyone should be a winner : homebrewers AND Sony.

About progress made by Glaurung & Ironpeter, they are fantastic.
Accelerated 3D is not far (accelerated 2D is, somehow, already acquired)...

This post has been edited by openxdkman: Oct 25 2007, 02:48 PM
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: Bucks19x on October 29, 2007, 10:24:00 AM
hey I was just reading that thread it looks like IronPeter has made a lot more progress. Will this lead to the loading of backups of any sort?
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on October 31, 2007, 02:23:00 AM
No.
This hack gives better/faster graphics and an additional 252Mb of RAM to free homebrew programs (linux based or "raw other os" based).

Won't help people interested in piracy or legal backups at all.

This post has been edited by openxdkman: Oct 31 2007, 09:26 AM
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: iam on November 02, 2007, 07:59:00 AM
QUOTE(openxdkman @ Oct 31 2007, 08:23 AM) View Post

No.
This hack gives better/faster graphics and an additional 252Mb of RAM to free homebrew programs (linux based or "raw other os" based).

Won't help people interested in piracy or legal backups at all.


That would make HD Streaming through mplayer Linux a reality !!!

Can't wait!
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on November 02, 2007, 09:17:00 AM
It's done guys... IronPeter found the way to run shaders!
(Textured triangle on screen under Linux! Under raw other os, soon, I hope)

RSX is officially owned! (member of nv40 family, xb1 was member of nv20)
(At least for firmware 1.93 or below, we don't know if Sony will like that...)

This post has been edited by openxdkman: Nov 2 2007, 04:20 PM
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: iam on November 02, 2007, 12:18:00 PM
QUOTE(openxdkman @ Nov 2 2007, 03:17 PM) View Post

(... we don't know if Sony will like that...)


Actually yes we do, they won't!  rolleyes.gif

I guess we only have to hope they will take some time before fixing it...

Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on November 09, 2007, 12:37:00 AM
'tgnard' and 'dom' reported that the current version of libps3rsx sample (rendering 3D triangles using RSX access trick under Linux) still runs fine with fw 2.0

all is good so far

This post has been edited by openxdkman: Nov 10 2007, 02:05 PM
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: jackapacka on November 12, 2007, 11:19:00 PM
i dont know if this question is appropriate but can this development lead to the creation of a new rsx driver for xorg? all this talk about 3d in linux is making me dream of compiz fusion...
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: iam on November 14, 2007, 04:32:00 PM
QUOTE(jackapacka @ Nov 13 2007, 06:19 AM) View Post

i dont know if this question is appropriate but can this development lead to the creation of a new rsx driver for xorg? all this talk about 3d in linux is making me dream of compiz fusion...


They did talk about a Xorg driver, you might want to check ps2dev for more details on that.
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: colt45joe on November 16, 2007, 05:46:00 PM
QUOTE(iam @ Nov 2 2007, 03:35 PM) *

That would make HD Streaming through mplayer Linux a reality !!!

Can't wait!


is this true? will we really be able to watch HD mkv files on linux?
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on November 23, 2007, 07:02:00 AM
Yes.

With what has been discovered, we have 70% of full RSX power.
(the missing 30% comes from the impossibility to access a few registers that activate massive caching and automatic compression in tiles).

Nothing prevents homebrewer to obtain 70% of top quality professional GameOS software on PS3, with full usage of second memory part (so total free ram is around 200+252Mb).

The probability of the hole closure in a future firwmare update is close to zero.

PS3 has become a very very interesting machine now (especially with price at $399) whatever is its planned usage.

This post has been edited by openxdkman: Nov 23 2007, 03:05 PM
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: ludacrisvp on November 23, 2007, 10:34:00 PM
How easy will this be to take advantage of?
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on November 24, 2007, 06:22:00 AM
Currently, russian developer IronPeter is acting as an incredible project leader. He's incredibly well experienced with Nv30/Nv40/G70 Nvidia chipset families (RSX belongs to one of them). And he got a damn strong motivation and all the knowledge to create a fully usable graphic library.

Install cygwin (if you don't have any Linux) and type in

svn checkout svn://svn.pspdev.org/ps3ware/trunk

That will download on your hard disk, in current directory, the lastest version of the source of the library libps3rsx. I still have hope that, later, specific Linux kernel installation can be avoided and ps3link will appear, compatible with that library, allowing easy compilation and transfert from PC. Probably in 2008.

So, you just need to wait until his library is finished. Easy enough?

EDIT: Glaurung is incredible too. He's working mainly on linking IronPeter's work with existing high level Linux modules (Xorg, etc...). He just managed to create an independant context. I.e two separate processus can maintain independant graphic environments without too much slowdown when switching (quite necessary for high level Linux modules).

This post has been edited by openxdkman: Nov 25 2007, 08:07 AM
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on December 08, 2007, 02:29:00 AM
Glaurung did it! He managed to reuse IronPeter's libps3rsx into a Xorg module compatible with currently available Linux distros! If you are a Linux user you can now join the fun on PS3!

EDIT: CAUTION! Will work ONLY for firmware <2.10 (i.e last one ok is 2.01)
Avoid 2.10!!!

This post has been edited by openxdkman: Dec 19 2007, 03:41 PM
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on December 23, 2007, 01:37:00 PM
It's done, many tutorials are now spreading allowing noobs to install 2D hardware accelerated Linux distros on PS3.
Debian, Gentoo, Ubuntu, Fedora 7... You have the choice.

Of course, you need firwmare < 2.10 in order to get fast graphics through the enhanced Xorg driver.

However, we know that maximum graphical power on PS3 will be achieved by a mix between RSX and SPU's.
It shouldn't be too hard to have the RSX part disabled automatically if fw>=2.10 and replaced with something similar but unfortunately less powerful...

So, you will probably see future releases of homebrew software having different performances depending on your firmware version (2.10+ or below).

If you want to be part of the hardware accelerated Linux bandwagon, it's not too late to offer your 2.10 PS3 for Xmas to a member of your family and purchase a new one with older firmware (you have 24 hours to clean it and wrap it...).


This post has been edited by openxdkman: Dec 23 2007, 09:39 PM
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: Infiniterb on December 24, 2007, 04:10:00 PM
Any links to these tutorials? I'm a noob to linux, but figure this would be a good time to play.
Title: Ps3 Hypervisor's Fifo/push Buffer Located And Altered!
Post by: openxdkman on December 25, 2007, 03:51:00 AM
For debian and ubuntu :
http://forums.ps2dev...opic.php?t=9479

One for fedora 7 (very easy to follow for noobs) has been announced.
Will appear soon.

EDIT: fc7 tutorials drafts online, follow same link above