Playstation 2 firmware development?
Hail again! Happy
I have to admit that I'm not too au-fait with PS2s at the technical level at the moment, but the process of taking a copy of my PS2 console's firmware for lawful use in PCSX2 last night got the developers gears turning in my mind...And it occurred to me that it might be possible for PS2 consoles to be used in alternative ways through the development of alternative, open source firmware. Cool
(Aye, by "Firmware" I am indeed referring to Playstation 2 B10Ses...But "Firmware" not only sounds better, but should hopefully also prevent people from finding this thread via Google and asking how to illegally download certain data, too. Smile)

Naturally, the first example that came to my mind was the idea of making a PS2 run on a Linux kernal, but other potentially interesting applications could be the running of various versions of MS Windows, other unusual operating systems, assorted web servers, and other similar applications besides. Smile

Anyhow...I understand from speaking to one of the forum Admins that something like this has been suggested before, although it didn't really come to fruition unfortunateley. However I'm thinking that I might have a go at poking around with the firmware in my PS2 at some point, after testing it in PCSX2 and verifying it as working and reliable.
As it is, I know one or two people who have "dead" PS2s sitting around (With failed DVD-ROM drives, for the most part) and I'm thinking that it'd be interesting to have a go at turning them into something other than what they were originally designed for! Cool

So what I'm asking here is if there are any PS2 firmware development circles knocking around out there, and if there are any open-source projects of that vein that I could turn to for reference?
As an initial idea, I'm thinking that for a first project I could take a small RISC version of Linux and try to manually port it over to the PS2's instruction set, working on the theory that a PS2 CPU should have all the functions of a RISC processor available on it. Smile

Incidentally: I know that the PS2 firmware is protected by copyright (Which is why it's illegal to use any FW other than thy own) but what of the PS2's instruction set? Is that available in the public domain, or have Sony made that closed information, too? Ninja

Farewell for now, and cheers for any advice or pointers offered! Happy
+++ DieselDragon +++

Sponsored links

The CPU of the PS2 is an R5900, which is a custom version of the R5000 MIPS cpu. It's just like the R5000 except with some extra instructions (the MMI instructions, which are like SSEs on intel) and a custom instruction/data cache arrangement. HOWEVER! The FPU unit of the R5900 (the COP1 co-processor in MIPS speak) is custom and not much like the FPU found on R5000 stock units (stock FPUs are IEEE compliant, while the R5900's is not). The R5900 also has a COP2 which ties into the VU0 unit.

I'm pretty sure you can find documentation for the entire R5900 instruction set at

Furthermore, knowing the instruction set is really the easiest part of doing operating system development. The hard part is knowing the physical memory mappings provided by the system, and furthermore how to utilize the PS2's kernel to do things like access its hardware (most of that is done through the IOP unit, which is in fact an old-school PSX built into the PS2, and used as a USB/CDVD/Sound controller, heh).

For operating system concerns PCSX2 will be mostly useless. An operating system like Linux must be able to remap memory and utilize TLB-style memory protection. PCSX2 supports neither, since games don't need these features, and emulating them is pretty challenging and slow.
Jake Stine (Air) - Programmer - PCSX2 Dev Team

Users browsing this thread: 1 Guest(s)