Go to file
Plínio Larrubia ded6bfbdb3
ci: enable cmake cache on all platforms (SDL/Qt)
- uses actions/cache@v4 and hendrikmuhs/ccache-action@v1.2.14
- Keeps the cache from CMake Cache configuration (Windows, Linux, macOS)
- Keeps the cache from CMake build objects (only Linux works)

ci: remove duplicated cache (Windows/Mac)
- Remove "qt" cache from macos.yml

ci: remove duplicated cache from macos-qt.yml
- Rename step on macos.yml

ci: revert cp -R and copy -R commands to mv and move respectively (Windows/macOS)
- Will decrease cache file size and speed up a little the build steps

ci: update cache name with OS-qt/sdl as a prefix
- This will invalidate all the other existing caches

ci: use the append-timestamp as false for linux/-qt
- Existing ccache caches will invalidate, but will produce once

ci: add hashes to the ccache keys
- Will invalidate caches once again, but I swear this is the last time
2024-08-29 14:28:26 -03:00
.ci video_core: prefer discrete gpu if available (#116) 2024-04-30 00:19:12 +03:00
.github ci: enable cmake cache on all platforms (SDL/Qt) 2024-08-29 14:28:26 -03:00
.reuse Adding icons to categories (#479) 2024-08-19 18:42:23 +03:00
LICENSES reuse: fix license for externals (#358) 2024-08-02 15:57:16 +03:00
cmake cmake: prefer system renderdoc library (#452) 2024-08-16 19:49:32 +03:00
documents Lot of small fixes 2024-08-22 18:01:30 +02:00
externals Lot of small fixes 2024-08-22 18:01:30 +02:00
scripts fix typo in LOG_INFO (#559) 2024-08-26 15:22:11 +03:00
src libraries: kernel: fix `scePthreadMutexattrSettype` error value return 2024-08-27 22:25:46 +02:00
.gitignore print git info in windows title 2024-08-01 00:56:10 +03:00
.gitmodules Lot of small fixes 2024-08-22 18:01:30 +02:00
CMakeLists.txt [Libs] Error Codes (#612) 2024-08-27 15:53:38 +03:00
CMakeSettings.json Separation between release mode and RelWithDebInfo (#186) 2024-06-10 22:59:28 +03:00
CONTRIBUTING.md Fix typo in CONTRIBUTING.md comment 2024-08-23 18:29:00 -07:00
LICENSE Initial commit 2022-10-24 12:48:38 +03:00
README.md docs: Removed misinformation 2024-08-25 14:37:17 +02:00

README.md



shadPS4

General information

shadPS4 is an early PlayStation 4 emulator for Windows, Linux and macOS written in C++.

If you encounter problems or have doubts, do not hesitate to look at the Quickstart.

To verify that a game works, you can look at shadPS4 Game Compatibility.

To discuss shadPS4 development, suggest ideas or to ask for help, join our Discord server.

To get the latest news, go to our X (Twitter) or our website.

Status

[!IMPORTANT] shadPS4 is early in developement, don't expect a flawless experience.

Currently, the emulator successfully runs small games like Sonic Mania, Undertale and it can even somewhat run Bloodborne.

Why

This project began as a fun project. Given our limited free time, it may take some time before shadPS4 can run more complex games, but we're committed to making small, regular updates.

Building

Windows

Check the build instructions for Windows.

Linux

Check the build instructions for Linux.

Building status

Windows
Windows Build status
Windows SDL Build Windows-sdl
Windows Qt Build Windows-qt
Linux
Linux Build status
Linux SDL Build Linux-sdl
Linux Qt Build Linux-qt
macOS
macOS Build status
macOS SDL Build macOS-sdl
macOS Qt Build macOS-qt

Debugging and reporting issues

For more information on how to test, debug and report issues with the emulator or games, read the Debugging documentation.

Keyboard mapping

[!NOTE] Xbox and DualShock controllers work out of the box.

Controller button Keyboard equivelant
LEFT AXIS UP W
LEFT AXIS DOWN S
LEFT AXIS LEFT A
LEFT AXIS RIGHT D
RIGHT AXIS UP I
RIGHT AXIS DOWN K
RIGHT AXIS LEFT J
RIGHT AXIS RIGHT L
TRIANGLE Numpad 8
CIRCLE Numpad 6
CROSS Numpad 2
SQUARE Numpad 4
PAD UP UP
PAD DOWN DOWN
PAD LEFT LEFT
PAD RIGHT RIGHT
OPTIONS RETURN
TOUCH PAD SPACE
L1 Q
R1 U
L2 E
R2 O
L3 X
R3 M

Main team

Logo is done by Xphalnos

Contributing

If you want to contribute, please look the CONTRIBUTING.md file.

Open a PR and we'll check it :)

Contributors

Sister Projects

  • Panda3DS: A multiplatform 3DS emulator from our co-author wheremyfoodat.
  • hydra: A multisystem, multiplatform emulator (chip-8, GB, NES, N64) from Paris.

License