Forgot your password?
typodupeerror
Classic Games (Games) PlayStation (Games) Software Entertainment Games Linux

Setting Up Ubuntu On a PS3 For Emulation 81

Posted by Soulskill
from the eight-bit-high-def dept.
Gizmodo is running a guide on how to install Ubuntu on a Playstation 3 and set it up to play vintage games through emulation. Quoting: "It still kind of surprises me (in a good way) that Sony was, from the start, very OK with PS3 owners tinkering with Linux on their PS3s. A modified release of Yellow Dog Linux was available from the very beginning, and some very handy hard drive partitioning and dual-boot utilities are baked right into the PS3's XMB; Ubuntu gets installed on an entirely separate partition of your PS3's hard disk, so your default system doesn't get touched and switching between Ubuntu and the XMB is a piece of cake. There is a flipside to this coin, however. Since the PS3's Cell Processor is PowerPC based, you won't be able to use any Linux software that's compiled for x86, which is, unfortunately, most of it. However, Ubuntu has always had a PPC distro, and most of the basic stuff will work just fine. You can even load up a PPC-compiled Super Nintendo Emulator, SNES9X, and play some classic games pretty easily on your Sixaxis controller paired via Bluetooth."
This discussion has been archived. No new comments can be posted.

Setting Up Ubuntu On a PS3 For Emulation

Comments Filter:
  • VM hacking? (Score:5, Interesting)

    by Anthony_Cargile (1336739) on Monday February 02, 2009 @01:49AM (#26690761) Homepage
    Would it be too slow to load a slim PPC kernel and replace init with an optimized PPC-compiled qemu instance (basically; it would require much more than this) and run a virtual x86 machine on that? It seems the downsize would be: two kernels and an image in non-volatile storage, (although they aren't that big, not much difference), RAM would be a premium, consider some paging (and a minimalistic hypervisor kernel running a slim custom client kernel, goodbye canonical support), and those Cell CPUs would fare just fine with it.

    It seems like a long shot, but it could work with at the very least "decent" results, after a fair amount of hacking and gnu optimization (store more crap on the registers than RAM). Compiz would kill on those graphics cards, and if paging is light you could have project 64 running in WINE for the best Nintendo 64 experience since... the Nintendo 64! Gee Willigers!

    That is, assuming qemu can do x86->PPC, else find an alternative (or write one, hey!)
    • Re:VM hacking? (Score:5, Informative)

      by fuzzyfuzzyfungus (1223518) on Monday February 02, 2009 @01:56AM (#26690813) Journal
      Unfortunately, the PS3's graphics card is specifically denied to linux by Sony's hypervisor. You just get a framebuffer. Linux only really runs on the PS3 in a rather limited sense.
      • Re: (Score:1, Troll)

        by shentino (1139071)

        Dunno, but this sounds like DRM to me.

      • Re: (Score:3, Informative)

        by Panaflex (13191)

        There's been a lot of work in this area, getting around the hypervisor has been done, and even a Xorg driver(PS3RSX Binary Driver) - but only for older firmwares than 2.10.

        So, if you want to run older firmware - you can run compiz. Of course - this probably prohibits newer games.

    • by Anonymous Coward on Monday February 02, 2009 @01:57AM (#26690817)
      Mod parent up, this is the most over-engineered solution to a hopeless problem I have ever read, and thus should boost karma.
    • Re:VM hacking? (Score:5, Informative)

      by Anonymous Coward on Monday February 02, 2009 @02:05AM (#26690851)

      I'll be to bed in a minute, SOMEBODY IS WRONG IN THE INTERNET!

      First and foremost, just about anything will compile for PPC unless it uses assembly. C is "portable" for a reason. This fact completely invalidates your entire post for most programs, even emulators.

      Further beating the dead horse, due to the hypervisor you can't access the 3D acceleration goodness of the PS3 while running anything but the "Playstation OS". This is to prevent such awesomeness as playing pirated games and romz on a device meant to play legally bought stuff, but doesn't matter with the good ol' games & systems we love and respect.

      Hand in your geek card.

      • "I'll be to bed in a minute, SOMEBODY IS WRONG IN THE INTERNET! [xkcd.com]"
        Obligatory xkcd quote. Made my day a bit brighter here in Sweden.
    • x86 on x86 emulation was pretty slow before we had svm/vmx, although with it it's basically native speed now (except for anything graphical). I think QEMU can emulate x86 on PPC, but expect it to be slow, as there'll be no hardware acceleration (svm/vmx), and you can't use kqemu either. Really, you should just avoid the hassle and play Game! [wittyrpg.com] instead.

    • by DrYak (748999) on Monday February 02, 2009 @03:36AM (#26691401) Homepage

      Would it be too slow to load a slim PPC kernel and replace init with an optimized PPC-compiled qemu instance {...} and run a virtual x86 machine on that? It seems the downsize would be: two kernels and an image in non-volatile storage {...} That is, assuming qemu can do x86->PPC, else find an alternative (or write one, hey!)

      All this is an absolute overkill.
      If there are a couple of binary-only Linux applications that you have to run on PS3 and they are only compiled for x86, there's QEMU which has a special mode for running Unix-on-Unix, where it emulates an x86 CPU only for the x86 application and passes through all system calls to the actual native OS.

      The DarWINE project is exactly doing that to run Windows applications on PPC Mac OS X boxes : the windows application and assorted Wine glue code goes inside QEMU, the call translated to Unix libraries go to the native system.

      If you need to run Windows application, probably DarWine isn't that far from being runnable on PPC Linux.

      And if you need to run old-school DOS games, DosBox has a built-in x86 emulator anyway.

      The "emulate a full x86 Linux running inside a PPC Linux" is just a complete waste of resources.

      And, as pointed by other /.ers, the PS3 hypervisor doesn't let Linux access the GPU anyway. So no Compiz, no hardware accelerated emulation of consoles with 3D chips (no N64, no PSX without PS3's own OS, no DreamCast, etc.)
      Still there's a good access to the Cell's stream processing units, so Linux on PS3 has a good value for doing scientific calculation, and there's an attempt to accelerate Mesa 3D with the SPUs, in order to have some hardware-accelerated OpenGL, even without the GPU.

    • by debatem1 (1087307)
      Why not just recompile your target application for ppc?
      • by tepples (727027)

        Why not just recompile your target application for ppc?

        Endianness, and CPU and PPU emulation cores written in assembly language. Or has the emulation community come up with ways to handle those automatically?

        • by debatem1 (1087307)
          A bundle of the emulators seem to work just fine on poorly supported architectures like the XBurst, so either they have or there's a bunch of very talented folks that like the Commodore 64 a touch too much.
    • by NekoXP (67564)

      I wish someone WOULD create something like that :)

      There's nothing stopping you having a kernel with QEMU in it's initrd, booting it up and picking up a virtual hard disk installed in your "Other OS" partition. This may have Windows or something else on it, requiring x86. QEMU will happily emulate most processors on top of whatever host processor (ARM->x86, ARM->PPC, PPC->x86, x86->PPC, add MIPS and whatever else into the mix)

      It depends what you mean by "too slow". The PPU on the PS3 is pretty da

  • erm (Score:3, Insightful)

    by larry bagina (561269) on Monday February 02, 2009 @01:53AM (#26690781) Journal
    All the software on my linux box (an ARM machine) was either compiled by me or came from the debian apt repositories (compiled for ARM). That's no different than if I was using x86. I fail to see what the issue is, unless you need to run closed source software or something tightly coupled to the x86 architecture, like WINE or virtual box.
  • don't do this (Score:5, Insightful)

    by Anonymous Coward on Monday February 02, 2009 @01:54AM (#26690787)

    linux on ps3 sucks balls:

    no access to gpu
    10 gigs of disk space
    ~256 megs of memory
    crappy ppc processor which meant for the stuff I wanted to do with it (read: boxee), I didn't have the libs.

    • Re: (Score:3, Informative)

      by Dr. Manhattan (29720)
      I'll give you "no access to gpu". The rest, no.

      If you want more than 10GB of space, you can do it two ways. First, you can set up the PS3 so that the "Game OS" gets 10GB and Linux gets the rest - or you can hook up a USB2 drive.

      You don't get access to the GPU, but you do get access to the GPU's memory, and they've come up with a way to use that VRAM as a fast swap device, bumping the effective memory close to 512MB. Still not spectacular, but certainly quite workable.

      And if you can't build stuff from

      • by tepples (727027)

        You don't get access to the GPU, but you do get access to the GPU's memory, and they've come up with a way to use that VRAM as a fast swap device

        How long until Sony releases a firmware update that disables that way?

        And if you can't build stuff from source, oh well. It's not that hard.

        Emulator source code is more likely than that of other kinds of applications to include .s files. A .s file contains assembly language source code, which is specific to an instruction set. How do I translate .s files for x86 into .s files for PowerPC?

  • by Anonymous Coward

    A roommate of mine that has unfortunately moved out has a PS3 and a big HDTV. We spent a lot of time playing PS3. Some of those new games look amazing in HD... really amazing.

    Despite this, we spent a lot more time playing roms under ubuntu. I've always used ZSNES on my computers, but unfortunately some of it is written in X86 compiler. SNES9X works great on PS3 ubuntu though, and finding emulators for other systems compiled for PPC really isn't hard at all.

    • by tepples (727027)
      Anonymous Coward wrote:

      Despite [the amazing look of PS3 games' graphics in high definition], we spent a lot more time playing roms under ubuntu.

      What copier did you use to dump the roms from your Super NES Game Paks?

  • by gnu-sucks (561404) on Monday February 02, 2009 @02:27AM (#26691007) Journal

    >Since the PS3's Cell Processor is PowerPC based, you won't be
    >able to use any Linux software that's compiled for x86, which is,
    >unfortunately, most of it.

    I have to say, to most linux users, the specific architecture and processor really aren't meaningful. The linux kernel, gnu userland, and associated popular applications have always been distributed in source code first, and binaries as they are made available. The entire concept of open-source depends on source distribtion.

    It is absolutely no problem if an app is distributed in source form or binary (compiled). True, a "standard" linux install base, while it may be defined, is rarely realized. So you could argue that distributing in source code creates problems because needed dependencies can't always be met. But then again, this doesn't help with binary distribution either. Ever try to install an RPM on a non-rpm-ish linux distro? It can be done, yes, but it involves a lot of details. Just as compiling does.

    Debian is awesome for distributing such a wide range of apps compiled for so many architectures. But it is truly sad to see someone write that it is "unfortunate" that most linux installs are x86 and his is ppc. The entire concept of linux is that linux is a kernel and a userland distributed in source. It doesn't matter what hardware you have (within reasonable limits... toasters, watches, etc).

    There's nothing "unfortunate" about an intel chip, a sparc processor, or a power pc, in terms of the ability of linux to run on it. It's a bigger deal if you're running generic pc hardware with some new video or wifi card. But even this sort of par for the course these days.

    • by emj (15659)

      There's nothing "unfortunate" about an intel chip, a sparc processor, or a power pc, in terms of the ability of linux to run on it. It's a bigger deal if you're running generic pc hardware with some new video or wifi card.

      +1 Very important issue. But IMO the only thing that's stopping desktop Linux on ARM, mips etc is probably Adobe Flash support..

      • by gnu-sucks (561404)

        Good point -- for closed-source applications, your system has to closely match whatever a particular piece of software was written to run under.

        They have some kind of solution for PPC linux, I can't remember what it is though. I think it's a third-party somewhat compatible plugin.

        But I think the real desktop linux barrier is the lack of a standard desktop environment. Last time I toyed with desktop linux, just about everything was half-way broken (compared with my mac, that is). Changing around screen resol

        • Re: (Score:1, Informative)

          by Anonymous Coward

          How long ago was that - Just checking behaviour in KDE 4.2 now... Providing your hardware is detected properly Switching graphics modes is a simple point and click affair. dragging a file from web browser to an open folder pops up a dialogue box asking if want to copy move or create a link... Can't comment about xmms but I can certainly drag MP3s from Amarok and photos from digikam into kmail. Cut copy and paste of images could be a lot bet but for text I prefer it to everything else out there. Unix makes i

          • Mod parent up...

            The issue at this point isn't so much about having a coherent desktop - KDE provides that. (I can't personally vouch for Gnome...) The issue is that this "coherent desktop" is less a feature of "Linux" per se and more a feature of KDE (or Gnome). This desktop can run applications that aren't part of the environment - but if you want the integration you have to stick to stuff that really is part of that environment.

  • I've been thinking, wouldn't this make a shit hot box to do h.264 encoding on? Isn't that one of the things that the cell is optimized for? SMP across 9 cell cores doing h.264 encoding and I know when encoding a dvd that handbrake uses virtually no memory on my dual core amd64 box. Just an honest question.

  • putting a rocket engine on your honda civic? Yes, you can do it, but why would you want to?
  • I wish that he would have mentioned some way to run MAME, that's better than SNES games anyway.

    Also, here is a way to run a fast Mplayer on PS3 Linux [linux.yes.nu]. This custom version of Mplayer uses the SPUs. I have an 80 GB PS3 and I'm eager to try some of this stuff out.

  • Well yes you can "hobby" linux on your PS3... sony even provides some help... but if you think you're going to get anything cool out of it, think again, it's just going to be a hobby...

    1. No HD... wow SD is so "cool"
    2. No GPU... wow my PS3 has such cool 3d graphics... or not!!

    So basically you get a low end computer with the inconvenience of PPC (so you can't use the majority of binaries) it's non-usefulness as a slick media player (no HD etc) or a "Game machine" (no x86 or GPU) basically means it's a big fa

  • Call me when Linux runs as like a 'game' on the PS3 and I don't have to reboot everything and sacrifice access to my friends list, etc.

    As it stands, it's just too much work to reboot into Ubuntu mode on the PS3 to have it be worth my while. (Yes, I tried it for a while.)

    Maybe if all my other systems were broken and I couldn't afford to buy a new one... But then, I'd be a sad techie if that were ever the case.

    And let's face it, this is only for techies.

You know that feeling when you're leaning back on a stool and it starts to tip over? Well, that's how I feel all the time. -- Steven Wright

Working...