43f919c04b
vm::spu max address was overflowing resulting in issues, so cast to u64 where needed. Fixes #6145. Use vm::get_addr instead of manually substructing vm::base(0) from pointer in texture cache code. Prefer std::atomic_thread_fence over _mm_?fence(), adjust usage to be more correct. Used sequantially consistent ordering in semaphore_release for TSX path as well. Improved memory ordering for sys_rsx_context_iounmap/map. Fixed sync bugs in HLE gcm because of not using atomic instructions. Use release memory barrier in lwsync for PPU LLVM, according to this xbox360 programming guide lwsync is a hw release memory barrier. Also use release barrier where lwsync was originally used in liblv2 sys_lwmutex and cellSync. Use acquire barrier for isync instruction, see https://devblogs.microsoft.com/oldnewthing/20180814-00/?p=99485 |
||
---|---|---|
.github | ||
.travis | ||
3rdparty | ||
asmjit@fc251c914e | ||
asmjitsrc | ||
bin | ||
llvm@b860b5e8f4 | ||
llvm_build | ||
rpcs3 | ||
Utilities | ||
Vulkan | ||
.clang-format | ||
.editorconfig | ||
.gitignore | ||
.gitmodules | ||
.mention-bot | ||
.travis.yml | ||
appveyor.yml | ||
BUILDING.md | ||
CMakeLists.txt | ||
git-clang-format | ||
LICENSE | ||
pre-commit.readme | ||
README.md | ||
rpcs3_debug.props | ||
rpcs3_default.props | ||
rpcs3_llvm.props | ||
rpcs3_memleak.props | ||
rpcs3_release.props | ||
rpcs3.sln | ||
usertype.dat |
RPCS3
The world's first free and open-source PlayStation 3 emulator/debugger, written in C++ for Windows and Linux.
You can find some basic information on our website. Game info is being populated on the Wiki. For discussion about this emulator, PS3 emulation, and game compatibility reports, please visit our forums and our Discord server.
Support Lead Developers Nekotekina and kd-11 on Patreon
Contributing
If you want to help the project but do not code, the best way to help out is to test games and make bug reports. See:
If you want to contribute as a developer, please take a look at the following pages:
You should also contact any of the developers in the forums or in the Discord server to learn more about the current state of the emulator.
Building
See BUILDING.md for more information about how to setup an environment to build RPCS3.
Running
Check our friendly quickstart guide to make sure your computer meets the minimum system requirements to run RPCS3.
Don't forget to have your graphics driver up to date and to install the Visual C++ Redistributable Packages for Visual Studio 2017 if you are a Windows user.
License
Most files are licensed under the terms of GNU GPLv2 License; see LICENSE file for details. Some files may be licensed differently; check appropriate file headers for details.