• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Introducing RPCS3 for arm64

Wolzard

Member
1080.png


RPCS3, the popular PlayStation 3 emulator, now officially supports the ARM64 architecture, enabling native operation on Linux, macOS, and Windows ARM64 devices. This announcement highlights extensive development efforts, groundbreaking solutions for architectural challenges, and diverse platform showcases.

Key Highlights


  1. Background and Development History
    • ARM64 support began in 2021, following the release of Apple's M1 chips.
    • Initial builds were functional but performed poorly due to limited compatibility with PS3 architecture.
    • Collaboration among developers, including Nekotekina and kd-11, enabled significant progress, with notable strides in graphics and JIT LLVM recompilers.
  2. Overcoming Technical Challenges
    • ARM64 posed unique hurdles, such as differences in stack behavior and 16K memory page size (vs. PS3's 4K).
    • Customized LLVM transformers and architectural tweaks allowed smoother emulation and improved performance.
    • By mid-2024, many commercial PS3 games ran well on ARM64 platforms, marking a significant milestone.
  3. Platform Showcases
    • Apple M1 (macOS and Asahi Linux): Delivered strong performance, particularly under macOS, leveraging optimized graphics layers like MoltenVK.
    • Raspberry Pi 5: Despite hardware limitations, it managed to run several games at PSP-level resolutions (e.g., 272p) for playable performance.
    • Windows ARM64: Experimental support achieved using msys2 and clang, with limitations due to testing hardware scarcity.
  4. Available Downloads and Future Plans
    • Linux ARM64 and macOS ARM64 binaries are now available alongside x64 versions.
    • Windows ARM64 binaries are not yet distributed, requiring local compilation by users.



 

Wolzard

Member
Forgot about performance... PS3 native emulation on a Raspberry is one of the most WTF things related to 'offical' emulation Ive seen :-D

And btw, how's a mac mini m4 pro for emulation?

Xbox 360 emulation is unavailable, while Xbox original emulation has limited performance.
Excellent performance for retro systems like NES, SNES, and Sega Genesis, even with enhanced shaders.
PSP and 3DS runs with 8x resolution upscaled.
GameCube and PS2 titles perform well, with minor adjustments needed for demanding games.
Mixed results for Wii U emulation; some games face slowdowns or emulation issues.
PS3 emulation is limited, with many titles running below optimal frame rates (When this video was made, it was still the old version that ran on Rosetta2).
Switch emulation through Ryujinx shows potential but is hindered by shader compilation stutters.



I wonder how it runs on my 2020 M1 MacBook Pro

The video demonstrating the Apple Silicon version is running on a basic M1.



RPCS3 x64 build running under Apple’s Rosetta2 x64 -> arm64 translation layer on the left;
RPCS3 arm64 build running natively on Apple Silicon on the right, showing a huge performance improvement!
 

StereoVsn

Gold Member
1080.png


RPCS3, the popular PlayStation 3 emulator, now officially supports the ARM64 architecture, enabling native operation on Linux, macOS, and Windows ARM64 devices. This announcement highlights extensive development efforts, groundbreaking solutions for architectural challenges, and diverse platform showcases.

Key Highlights


  1. Background and Development History
    • ARM64 support began in 2021, following the release of Apple's M1 chips.
    • Initial builds were functional but performed poorly due to limited compatibility with PS3 architecture.
    • Collaboration among developers, including Nekotekina and kd-11, enabled significant progress, with notable strides in graphics and JIT LLVM recompilers.
  2. Overcoming Technical Challenges
    • ARM64 posed unique hurdles, such as differences in stack behavior and 16K memory page size (vs. PS3's 4K).
    • Customized LLVM transformers and architectural tweaks allowed smoother emulation and improved performance.
    • By mid-2024, many commercial PS3 games ran well on ARM64 platforms, marking a significant milestone.
  3. Platform Showcases
    • Apple M1 (macOS and Asahi Linux): Delivered strong performance, particularly under macOS, leveraging optimized graphics layers like MoltenVK.
    • Raspberry Pi 5: Despite hardware limitations, it managed to run several games at PSP-level resolutions (e.g., 272p) for playable performance.
    • Windows ARM64: Experimental support achieved using msys2 and clang, with limitations due to testing hardware scarcity.
  4. Available Downloads and Future Plans
    • Linux ARM64 and macOS ARM64 binaries are now available alongside x64 versions.
    • Windows ARM64 binaries are not yet distributed, requiring local compilation by users.




This is awesome. Going to mess with this during next weekend on my MBPro!
 
Exact same position I’m in. They are one of the best values out there. Utterly fantastic units.
If I had a need for a desktop then it would be a no brainer but my general computing is done on a M2 MacBook Air and I can easily just connect a single USB C cable to my OLED monitor.

Or if I didn't "need" to have a gaming PC then it would also be a no brainer.
 

The Fartist

Gold Member
Demon's Souls on M1 MacBook Air, for those wondering:



Edit: the video is from 2 months ago so performance might have improved by now
 
Last edited:

Dacvak

No one shall be brought before our LORD David Bowie without the true and secret knowledge of the Photoshop. For in that time, so shall He appear.
I bet my M2 Max MBP will crush this emulator. That’s pretty exciting, since my cereal friend Nate still has my damn PS3.
 

RCX

Member
If its compiled for arm and running on a rpi5 no less, does this mean that an android/ios version becomes a possibility down the line?
 
Last edited:

Wolzard

Member
I don't even know whats the use case for Windows ARM64. Kudos to the devs for adding support anyways.

Microsoft has tried to take a step forward in this area recently, with PCs using the Snapdragon Elite CPU and making a new version of the x64 compatibility software for ARM.
I think it failed a little, because Microsoft has the ambition, but it no longer knows how to make a product.


If its compiled for arm and running on a rpi5 no less, does this mean that an android/ios version becomes a possibility down the line?

iOS I find a little difficult, considering that it would need to be approved by Apple to appear in the Apple Store. At the very least, it would cost the developers something.

On Android, developers have already shown a lack of interest, because the system suffers a lot from property theft, see DamonPS2 which cloned PCSX2 without giving any credit or support.



Another point I heard was that the community around Android was very toxic, probably because there are many users, mainly casual, who bother the developers more intensely.

However, as the code is open source, there are already people compiling it for Android. The hardest part was ARM architecture support. Perhaps in the future, some Android developer will be interested in keeping the code for this version in the official repository.

 

RCX

Member
Microsoft has tried to take a step forward in this area recently, with PCs using the Snapdragon Elite CPU and making a new version of the x64 compatibility software for ARM.
I think it failed a little, because Microsoft has the ambition, but it no longer knows how to make a product.




iOS I find a little difficult, considering that it would need to be approved by Apple to appear in the Apple Store. At the very least, it would cost the developers something.

On Android, developers have already shown a lack of interest, because the system suffers a lot from property theft, see DamonPS2 which cloned PCSX2 without giving any credit or support.



Another point I heard was that the community around Android was very toxic, probably because there are many users, mainly casual, who bother the developers more intensely.

However, as the code is open source, there are already people compiling it for Android. The hardest part was ARM architecture support. Perhaps in the future, some Android developer will be interested in keeping the code for this version in the official repository.


Yep I've definitely seen how the android "community" is a regular nightmare for a lot of devs. I think the main guy behind duckstation has had a lot of trouble with people on that platform. Very entitled is the general consensus.

Shame as it's very versatile and accessible as an OS
 
Top Bottom