# RPCSX
*An experimental emulator for PS4 (PlayStation 4) for Linux written in C++*
[](../../../actions/workflows/rpcsx.yml)
[](../../../actions/workflows/format.yml)
[](https://discord.gg/t6dzA4wUdG)
> **Warning**
> It's NOT possible to run any games yet, and there is no ETA for when this will change.
> Do not ask for link to games or system files. Piracy is not permitted on the GitHub nor in the Discord.
## Contributing
If you want to contribute as a developer, please contact us in the [Discord](https://discord.gg/t6dzA4wUdG).
## Building
First Install The dependencies for Debian-like distributions.
``sudo apt install build-essential cmake libunwind-dev libglfw3-dev libvulkan-dev vulkan-validationlayers-dev spirv-tools glslang-tools libspirv-cross-c-shared-dev libxbyak-dev``
## Cloning the Repo
``git clone https://github.com/RPCSX/rpcsx && cd rpcsx``
## Command for building the emulator.
`mkdir -p build && cd build && cmake .. && cmake --build .`
## How to create virtual hdd
> The PS4 has case-insensitive filesystem. To create the virtual hdd do the following:
`truncate -s 512M ps4-hdd.exfat`
`mkfs.exfat -n PS4-HDD ./ps4-hdd.exfat`
`mkdir ps4-fs`
``sudo mount -t exfat -o uid=`id -u`,gid=`id -g` ./ps4-hdd.exfat ./ps4-fs``
## How to Run samples and games ( one day )
See usage message of `rpcsx-os` (`-h` argument), or join the [Discord](https://discord.gg/t6dzA4wUdG) for help.
You can run emulator with Samples using this command:
`rm -f /dev/shm/rpcsx-* && ./rpcsx-os --mount "/system" "/system" --mount "" /app0 /app0/some-test-sample.elf [...]`
## Creating a log
You can use this flag if you get sigfault for debugging.
`--trace`
You can redirect all log messages to a file by appending following to command:
`&>log.txt`
## License
RPCSX is licensed under GPLv2 license except directories containing their own LICENSE file, or files containing their own license.
Thus, orbis-kernel is licensed under the MIT license.