Goodbye World – PS3

“Hello world” programs are so cliche. So here is my first simple piece of homebrew made using PSL1GHT (everything else I’ve released for PS3 was made with the leaked SDK). You control a space ship using the left analog stick well the world relentlessly follows you and pleads for you to stay. There is no real objective, scoring or anything like that. It’s a non game.

I’ve just realized that it doesn’t seem to be working at lower resolutions. It works fine in HD with an HDMI cable but when using component cables it just goes to a black screen. The same thing happens with the RSX test sample (which is what I used as the basis of this) so the problem isn’t something I introduced. I’m guessing there is probably some flaw with the videoGetResolution function but that’s just a blind assumption. I haven’t done any real testing yet or made any attempt to correct the problem. It would be helpful if there was documentation to consult…

The source code is available for anybody that wants it.

Download the PKG
Download the source code and other data


16 Responses to Goodbye World – PS3

  1. kapaw says:


    I was actually thinking about trying to make a clone of the game Thrust for the PS3:

    I did some basic testing using the cairo library for PS3, but your implementation looks so much nicer.
    Thank you for sharing! 🙂

  2. emersons35 says:

    wow.. you have had it for like a week, and already are making 10x better stuff.. :/
    But i cant wait to see the games you come up with.

  3. emersons35 says:

    this scales the screen to 847 by 511 so i fits all screens, hdmi or composite.

    void screen_scale() {// code used from hermes Tiny3d to rescale screen
    if(res.width < 1280) {
    realityViewportTranslate(context, 38.0 , 16.0, 0.0, 0.0);
    realityViewportScale(context, (float) (res.width – 72) / 848.0,(res.height == 480) ? (512.0) / 576.0 : 548.0 / 512.0, Z_SCALE, 1.0);
    } else if(res.width == 1280) {
    realityViewportTranslate(context, 54.0, 24.0, 0.0, 0.0);
    realityViewportScale(context, 848.0 / 611.0 , 674.0 / 512.0, Z_SCALE, 1.0);
    realityViewportTranslate(context, 63.0, 40.0, 0.0, 0.0);
    realityViewportScale(context, 848.0 / 400.0 , 952.0 / 512.0, Z_SCALE, 1.0);

  4. slicer4ever says:

    for the lower resolution black screen problem, here’s how to fix it:

  5. Snake Plissken says:

    hopeing to port GZDOOM or ZDOOM to the ps3, GZDOOM with its openGL support would open a whole new world up to homebrew game construction on the ps3. at the same time… i like your work… so if theres anything i can do for ya.. let me know… im realy great with makeing models of all formatt

  6. Jiraiya says:

    I cant get this to compile.
    I get errors about files not being in the right path, or I get errors about no rule to make target
    `asteroid.bin.h’, needed by `main.o’. Stop.
    make: *** [build] Error 2

    I can happily compile the included samples though!
    Did you use the old version of PSL1GHT ?

    • ThatOtherDev says:

      I couldn’t get PSL1GHT to compile properly so I used Goblom’s pre compiled copy of PSL1GHT which seems to have been last updated on February 27th. But the sample I used as the basis for this was from the latest version (the samples where not included with the pre compiled PSL1GHT so I got them from the PSL1GHT git).

      Did you try make clean before making it again?

      • Emerson says:

        That’s what I had to do

        • Jiraiya says:

          Make (without doing make clean first) gives me and error
          `/usr/local/ps3dev/MyProjects/GoodbyeWorld/source/main.c’, needed by `main.o’. Stop.

          So I make clean and get
          make[1]: *** No rule to make target `asteroid.bin.h’, needed by `main.o’. Stop.

          Also, the Makefile gives an error about, so I had to change that to ppu_rules to make it do anything.
          Seems lots of paths etc have changed.
          I can’t find the reference to ps3dev/MyProjects/ anywhere!
          I dont have a MyProjects directory, I put GoodbyeWorld in the samples folder in my home dir.

          • ThatOtherDev says:

            There is no reason for you to need a MyProjects folder. I had it in that folder but there shouldn’t be any reference to it. It shouldn’t matter where you put the GoodbyeWorld folder.

            Just to double check I did a search for “MyProject” in the files I uploaded and the only mention of it is in 3 of the files in the build folder. Those should have been deleted when you did make clean. If they aren’t getting deleted you should manually delete the whole build folder.

  7. jjolano says:

    looks great 😀

    although people with PSL1GHT V2 (like me) can’t compile this because a lot of things changed since the merge 😛

  8. Nasebluten says:

    I love it.
    Thank you.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: