Play your PS1 games on modern TVs using a PS2 with Component cable or HDMI adapter!
- Automatic disc region control (PAL/NTSC)
- Automatic GSM configuration for correct display of PS1 games
- Automatic disc start-up function
- Perfect for playing PS1 games with an HDMI/component cable
There are two ways to build this project: natively on Windows, or with Docker on any platform (Windows, macOS, Linux).
Recommended if you don't want to install the PS2 toolchain manually.
1. Install Docker, if you don't have it already:
- Windows / macOS: Docker Desktop.
- Linux (Ubuntu / Linux Mint):
sudo apt update && sudo apt install docker.io sudo systemctl enable --now docker
- Linux (Fedora):
sudo dnf install docker sudo systemctl enable --now docker - Linux (Arch):
sudo pacman -S docker sudo systemctl enable --now docker
2. Navigate to the folder where you want the compiled files to end up:
cd /path/to/your/folder # macOS / Linux / Git Bash on Windowscd C:\path\to\your\folder # Windows PowerShell3. Pull the PS2DEV image:
docker pull ps2dev/ps2dev:v1.0On Linux, prepend
sudoto everydockercommand, unless your user is already in thedockergroup.
4. Start the container, mounting the current folder as /output:
docker run -it --rm -e HOST_UID=$(id -u) -e HOST_GID=$(id -g) -v "$PWD":/output:z --name ps2dev_container ps2dev/ps2dev:v1.0 shdocker run -it --rm -v ${PWD}:/output:z --name ps2dev_container ps2dev/ps2dev:v1.0 sh # Windows PowerShellThe
:zsuffix is required on Linux distributions using SELinux (e.g. Fedora). It's harmless everywhere else.
5. Inside the container, install dependencies, clone, and build:
apk add build-base cmake git texinfo flex bison gettext gmp-dev mpfr-dev mpc1-dev zlib-dev nano
git clone https://github.com/PhilRoll/ps1-hdmi-component-fix-ps2.git
cd ps1-hdmi-component-fix-ps2
make6. Copy the build output to the mounted folder:
cp -r build /output/Linux only — fix file ownership so they belong to your user instead of root:
chown -R $HOST_UID:$HOST_GID /output/build7. Exit the container (it's removed automatically thanks to --rm):
exitYou'll now find build/PS1_HDMI_FIX.ELF and build/uncompressed_PS1_HDMI_FIX.ELF in the folder you started from.
Optional: remove the Docker image afterwards
docker rmi ps2dev/ps2dev:v1.0
docker ps -a --filter "name=ps2dev"
docker images --filter "reference=ps2dev*"(on Linux, prepend sudo as usual)
- Download the pre-built homebrew PlayStation 2 MinGW toolchain and extract the
.7zfile toC:/. - Go to
MinGW/msys/1.0and openmsys.bat. cdinto this repository's folder.- Run:
make
You'll now find build/PS1_HDMI_FIX.ELF and build/uncompressed_PS1_HDMI_FIX.ELF in the repository folder.
Once you have PS1_HDMI_FIX.ELF (from either build method above):
- On PCSX2: use "Run ELF".
- On real hardware: run it with wLaunchElf. You must set the YPbPr output setting, or the game will crash or display incorrectly.
Thanks to: