PS4/Next-Gen Xbox "emulation"

Discussion in 'macOS' started by cody92, May 13, 2013.

  1. cody92 macrumors newbie

    Joined:
    May 3, 2013
    #1
    Saw the Xbox 360 thread and wanted to see what people thought about this.

    The next-gen game systems are supposed to be using x86_64 chips. This is the same architecture as current Macs(Intel Core whatever) and it will be sticking around for a while. Now I'm not saying "emulation" on a laptop or desktop will come right away for these systems, but the fact that they are the same architecture should simplify things.

    Actually, instead of emulation, we could call it "virtualization" since it won't be emulated. The machine code won't require much translation since it's the same architecture. I would imagine the hard part will probably be managing system calls for the next-gen OS.

    The final idea... next-gen OS probably won't be able to be booted from virtualization software due to security, but if somebody reversed engineered it or found documentation or whatever and was able to implement the system calls and base OS, you would have a fully capable "emulator" that would not be dragged down by the fact that the machine language is completely different.

    Anybody catching what I'm saying? I had a hard time explaining it. :)
     
  2. old-wiz macrumors G3

    Joined:
    Mar 26, 2008
    Location:
    West Suburban Boston Ma
    #2
    There is a lot more to the differences between a Mac and a PS4/xbox than the cpu that sits inside it.

    The game boxes have very powerful GPUs, way more powerful than the normal GPUs used in the Macs.

    Emulating the calls would be a huge job, and not something anyone is going to do on their own. Virtualization/emulation is not trivial. Besides a number of the calls are undocumented.

    The gaming experience is about speed, and emulation/virtualization is not known for being hugely fast.

    And if you tried to market an xbox emulator Microsoft would have ten attorneys pounding on your door so fast it would put the CIA to shame.
     
  3. w0lf macrumors 65816

    w0lf

    Joined:
    Feb 16, 2013
    Location:
    USA
    #3
    I think this is probably one of the biggest issues with PlayStation/Xbox emulator. The companies behind those products would just destroy you if you tried to release something that actually worked.
     
  4. old-wiz macrumors G3

    Joined:
    Mar 26, 2008
    Location:
    West Suburban Boston Ma
    #4
    excellent point.

    Many moons ago, when I was working in low level OS internals, I had to deal with the issue of emulation/virtualization. There are so many things you have to deal with - you have to make sure that not only are you using the same registers but that the tiniest details of whatever is returned from the OS is exactly the same. Code has the annoying property of checking things that don't really matter and crashing if they don't get what they expect.

    Even for code that is written for a specific OS can fail when the next version of the OS is released.

    In order to try to run xbox stuff on another platform you would need access to the source code. I don't see microsoft letting anyone get their hands on it anymore than Apple would let you get your hands on the proprietary part of the OSx internal code.

    trying to do it with just the run time code would be a completely impractical task.

    OSx used to have a function called Rosetta, which allowed PPC code to run under Intel. Besides the obvious hardware differences, there were some calls in PPC that had no counterpart in OSx, so they had to add code to OSx to allow the PPC emulation to work at all. If you wanted to emulate xbox on osx (or linux for that matter) you would have a huge issue to deal with.

    And of course if you got it working Microsoft would have their legal swat teams pounding on your doors and would probably hold your dog, you wife, and your children hostage as well.
     
  5. cody92 thread starter macrumors newbie

    Joined:
    May 3, 2013
    #5
    1. CPU's aren't so different. Mac hardware is closer to the ps4 than ps3 is to ps4.

    2. There are very capable graphics cards you can order in your Mac that rival the ps4 GPU. H3ll, the ps4 won't be more than $500, can't be better than an enthusiast GPU. NOT only that, but moore's law is what makes emulation possible in the first place. You don't think in 3 years they won't have a GPU that is 8 times as good for not a bad price?

    3. Writing an emulator is a huge job anyway. This would not be an emulator. It doesn't emulate anything. It will virtualize, which is about as fast as native. Are any system calls ever documented openly? Still emulators make their way.

    4. Virtualization is known for being VERY fast actually(emulation is what is slow). It's running natively with the built in hardware features on all modern processors.

    5. Have you seen the stuff that's been JUST released by microsoft and hacked? How about running desktop apps on a WinRT(ARM processor) tablet? Lots of other things have also been done. Besides, I doubt any emulator developer got approval first :)
     
  6. gumblecosby macrumors 6502

    Joined:
    Jun 22, 2010
    #6
    Here's an (angry)piece on why having similar architecture is not as easy as you may think:
    http://www.ngemu.com/forums/showthread.php?t=132032

    Despite the resemblance to x86/64 there's a lot of non standard undocumented stuff that goes into consoles (Bios,OS etc) that needs to be reverse engineered and worked into an emulator or virtualization software. All aspects need to be recreated in code that were originally hardware based which normally means you need a considerably more powerful computer than the one you are emulating. Although the PS4 is x86 based, it has a unique CPU-RAM setup running at Gddr5 speed that is not found on consumer PC's. The GPU would be completely undocumented also when going off past form with console development. Not an easy task :)
     
  7. cody92, May 14, 2013
    Last edited: May 14, 2013

    cody92 thread starter macrumors newbie

    Joined:
    May 3, 2013
    #7
    I understand its not an easy task. Writing an emulator is not an easy task either. That link is irrelevant to this discussion. It discusses consoles who's ISA's don't match a Mac or PC.

    The small chip difference are minor things. Nothing that can't be quickly and efficiently worked around. BIOS for example only boots the OS. After that, the OS does most the work. All the BIOS settings could be emulated without many performance hits.

    What I'm saying is, a ps4 emulator is likely to come before a ps3 emulator, if at all. It would take more horsepower to emulate another ISA than the same ISA which would be that of the ps4(and of a Mac/PC).
     

Share This Page