This is yet another fork of the Playstation Emulator, PCSX. While the work here is very much in progress, the goal is roughly the following:
- Bring the codebase to more up to date code standards.
- Get rid of the plugin system and create a single monolithic codebase that handles all aspects of the playstation emulation.
- Write everything on top of OpenGL3+/ImGui for portability and readability.
- Improve the debugging experience.
- Improve the rendering experience.
Please consult the documentation pages for more information.
Run
./dockermake.sh
. You need docker for this to work. You will also need a few libraries on your system for this to work. Check the Dockerfile for a list of library packages to install.GNU/Linux Dependencies
If you're only interested in compiling psx code, you can simply clone the pcsx-redux repo, then install
g++-mipsel-linux-gnu cpp-mipsel-linux-gnu binutils-mipsel-linux-gnu
then follow the instructions in/pcsx-redux/src/mips/psyq/README.md
to convert the PsyQ libraries. You might find them pre-compiled online.
- Debian derivatives ( for full emulator compilation ):
sudo apt-get install -y build-essential git make pkg-config clang g++ g++-mipsel-linux-gnu cpp-mipsel-linux-gnu binutils-mipsel-linux-gnu libcapstone-dev libfreetype-dev libavcodec-dev libavformat-dev libavutil-dev libcurl4-openssl-dev libglfw3-dev libswresample-dev libuv1-dev zlib1g-dev
- Arch derivatives :
The
pcsx-redux-git
package can be installed from the AUR using your AUR helper of choice (e.g., paru):paru -S pcsx-redux-gitAlternatively, the following steps describe how to install dependencies and compile manually:
sudo pacman -S capstone clang git make pkg-config ffmpeg libuv zlib glfw-x11 curl xorg-server-xvfbThe mipsel environment can be installed from AUR : cross-mipsel-linux-gnu-binutils and cross-mipsel-linux-gnu-gcc using your AURhelper of choice:
trizen -S cross-mipsel-linux-gnu-binutils cross-mipsel-linux-gnu-gccYou can then just enter the 'pcsx-redux' directory and compile without using docker with
make
.Building OpenBIOS on Linux can be done with
./dockermake.sh -C src/mips/openbios
, or using theg++-mipsel-linux-gnu
package withmake -C src/mips/openbios
. If you have a different mips compiler, you'll need to override some variables, such asPREFIX=mipsel-none-elf FORMAT=elf32-littlemips
.