Fog Creek Software
Discussion Board

playstation 2 programming

I would like to learn how to program the playstation 2. I have experience programming scientific visualizations using openGL and C++ on unix. I'm interested in trying to program a simple, but graphically cool puzzle game.

Is the linux kit a good place to start? Are there any books or good web resources regarding ps2 programming? thanks!

Monday, April 28, 2003

The Linux for ps2 is just that , Linux. It is not the game development environment, and as far as I know, if you write something under ps Linux, then you need Linux on the other user end. (with the keyboard kit, and a monitor (not a TV) etc).

It is not thus a game development platform, but just Linux.

I don’t know what Sony has, but CodeWarrier does make a ps2 development environment.

It was about $4000 last time I looked, but that was several years ago, and it might be cheaper now.

As for how you can burn the cd’s, I again don’t what is involved, since they have a very simple, but elegant copy protection that is a simple a “mask” goes over the burned CD. Regular CD burners cannot reproduce those “dead” patterns.

The sonly Linux link is:

Other then the above…don’t know much more…

Albert D. Kallal
Edmonton, Alberta, Canada

Albert D. Kallal
Monday, April 28, 2003

Try - there's loads of info, useful code and tools there.  Unfortunately you'll need to add a mod chip to your Playstation to be able to run any of your own code though.

Monday, April 28, 2003

I remember reading an article that was an intro to PS programming, and according to the author, one gaming house even used his articles to train it's staff.

The gist that I got is that regular programming has a number of items that are worked on. The process that works on them takes precidence over the item, where in video game programming, the reverse is true - you have a stream of data that's getting to the monitor one way or the other, whether or not that process has a chance to transform it or not.

Really bad explanation on my part, but look for an article that talks about that. Sorry if it waas already linked here, I didn't look.
Monday, April 28, 2003

There wouldn't be much point in sending data to the monitor without transforming it.

I suspect what you're talking about is the difference between the PS2 architecture and, say, a PC. Almost all 3D graphics rendering can be thought of as a "pipeline". You start off with data that represents a bunch of triangles that make up a 3D surface. The aim is to go from your original data to a bunch of (2D) triangles on the screen. Along the way, you cull out triangles that don't need to be drawn (e.g. if they're behind the camera), you calculate how lighting affects them, you add textures, you do various other complicated things like bumpmapping etc.

Now, as I understand it, the PS2 and PC architectures are rather different. With a PC, you upload your original 3D data to the graphics card, and then you tell the 3D API "This is the current graphics state, please render this data and put it on the screen". With a PS2, the pipelines for shunting data around are very big, but the internal caches are smaller. Thus, you may not be able to fit your entire 3D model into the cache before rendering it, and you'll have to split it up into smaller segments.

This leads you to a sort of "constant data streaming" approach, where your engine is constantly working out which bits of data need to be rendered, and shunting them around appropriately. Apparently, when developers first started on the PS2 they had real problems because they weren't used to this approach.

I'm paraphrasing all this from an article that appeared on a while ago.

The point of all this is to say that console programming is to a certain extent a black art, and considerably more complicated than knowing how to use OpenGL or D3D.

Adrian Gilby
Tuesday, April 29, 2003

Adrian... I said it was a piss poor explanation.

Toms hardware may have had the pointer, but I don't think the article was atually hosted on Tom's Hardware.
Tuesday, April 29, 2003

I understand that linux on PS2 is just linux. I think I will go that route, just because it seems easy. I don't understand where PS2 programmers come from. How do you get hired at a console game company without knowing how to program a console?

Tuesday, April 29, 2003

The article being referred to is, probably the one on Look in the technical black papers section.

As for where console coders come from, breaking into the games industry is a problem. Its the reason Linux for PS2 exists. There are also more than few underground coding scenes for the consoles.

Tuesday, April 29, 2003

The article was on Ars Technica, not Toms Hardware.

Adrian Gilby
Tuesday, April 29, 2003

"How do you get hired at a console game company without knowing how to program a console? "

Generally they're either hired straight from college & have shown a desire/aptitude to games programming on the PC on their own time, or they're experienced on the PC games side of things.

There are exceptions - the company I work for has a lot of ex-aeronautical/military contractors due to its history.

A PS2 Programmer
Tuesday, April 29, 2003

If you would like to write a simple puzzle game that you want to eventually sell, I would suggest go for the  PC instead of the PS2.  You can release the game as shareware, setup e-commerce and get a few sales.  None of that is possible with PS2 cos you need Sony's blessings to sell your game.

Friday, May 2, 2003

*  Recent Topics

*  Fog Creek Home