Skip to content
PORTSNATIVE.
HomeCatalog
Web GamesEmulatorsToolsNews
PORTSNATIVE.

A catalog for discovering ports and related projects. We link to official sources and do not host original game files.

ExploreCatalogMy list
InformationAbout usSuggest a portSupportDonationsLegal notice
© 2026 PortsNative
Back to catalog
Shadow of the Colossus (PS2 decomp)
PORTSNATIVE

Shadow of the Colossus (PS2 decomp)

NATIVE PORTACTION / ADVENTUREWINDOWSALPHA

Shadow of the Colossus (PS2 decomp)

Shadow of the Colossus

OriginPlayStation 2

TechnologyDecompilation and reconstruction in C/C++

Available forWindows

View official project

About the project

Shadow of the Colossus es un videojuego de acción-aventura desarrollado y publicado por Sony Computer Entertainment (SCEI) para PlayStation 2. El juego fue publicado en Norteamérica y Japón en octubre de 2005, y posteriormente en Europa en febrero de 2006. Fue creado por el Estudio Internacional de Producción 1 de SCEI, el mismo grupo de desarrollo responsable del éxito de culto Ico.

7 versions of Shadow of the Colossus

You're viewing: Shadow of the Colossus (PS2 decomp)

Shadow of the Colossus (PS2 decomp)github.com/TheRealestNwah/sotc-decomp
Windows
Current
Shadow of the Colossus (celosia)github.com/HenryKun55/celosia
macOS
›
Shadow of the Colossus (PC, frame generation)github.com/nakaionyt/ShadowOfTheColossus-PC-FrameGen
Windows
›
Shadow of the Colossus (PC)github.com/AjncSystem/ShadowOfTheColossus-PC
Windows
›
Shadow of the Colossus (PS3) PCgithub.com/sp00nznet/shadowofthecolossus
Windows
›
Shadow of the Colossus (ShadowOfTheColossus-PC)github.com/Oussama268/ShadowOfTheColossus-PC
Windows
›
Shadow of the Colossus Decompilationgithub.com/Fantaskink/SOTC
Windows
Linux
macOS
›

Official project information

Author's original READMEOpen on GitHub ↗

Shadow of the Colossus Decompilation

A work-in-progress matching decompilation of Shadow of the Colossus (PlayStation 2, NTSC-U, SCUS-97472), with the long-term goal of a Native port to PC.

The aim is C source that compiles back to a byte-identical copy of the Original game files. Once every function in the Game code is a Matched function, the code can be ported to run natively on PC.

Status

  • The Loader SCUS_974.72 (1,038 functions) splits with splat and rebuilds byte-for-byte from assembly (ninja check passes).
  • Almost all Game code is in the three Game modules (KERNEL.XFF, MANAGER.XFF, GAMECORE.XFF; custom xff2 format, see docs/xff2.md). All three rebuild byte-for-byte, including headers and tables. The original table-layout and loader metadata still come from the Original files.
  • Compiler identified: Sony ee-gcc 2.96, -O2 -G0 (see docs/findings.md).
  • Matched functions are in src/xff/ and are spliced into the Game modules; the full build still matches. The Native port hasn't started.
<!-- progress:start -->
StageDoneTotalProgress
Rebuild byte-for-byte from assembly44 files100%
Loader SCUS_974.72 Game code as matching C111124 functions90%
KERNEL.XFF Game code as matching C8081,069 functions76%
MANAGER.XFF Game code as matching C2,0322,865 functions71%
GAMECORE.XFF Game code as matching C3,1173,917 functions80%
All three Game modules' Game code as matching C5,9577,851 functions76%
Native PC portnot started-0%

Generated by tools/progress.py from the C in src/xff/ and src/loader/. Done counts Matched functions. Totals count each Game module's functions: those in its symbol table, plus the static functions the Original references that have only Placeholder names. SDK routines listed in config/sdk_routines.txt are identified rather than decompiled, so they're left out, and so are the Loader's SDK routines (config/loader_functions.csv). Refreshed periodically on main, so it can lag behind the latest merges.

SDK routines identified by signature and left out of the totals: KERNEL 39, MANAGER 2, GAMECORE 0.

Overall, a playable build needs all three bars full.

Matching decompilation  [███████████████░░░░░] 76%   (Game modules)
Loader as matching C    [██████████████████░░] 90%
Native PC port          [░░░░░░░░░░░░░░░░░░░░]  0%
<!-- progress:end -->

You need your own copy of the game

This repo contains no original game binaries or assets. Dump your own disc and copy the Loader SCUS_974.72 into iso/. Never commit anything from the disc.

Setup (Windows)

  1. Install Python 3.11+.
  2. Install the PS2DEV EE toolchain (ps2dev-windows-latest.tar.gz from the ps2dev/ps2dev releases) and put its ee\bin folder on PATH. It also needs a 32-bit libzstd.dll (from the zstd releases, win32 zip) copied into ee\bin.
  3. Then:
python -m venv .venv
.venv\Scripts\pip install -r requirements.txt
.venv\Scripts\python tools/check_baserom.py
.venv\Scripts\python configure.py
.venv\Scripts\ninja check

Roadmap

See roadmap.md for completed milestones, remaining matching work, the future Native port and community proposals. Planned work before 1.0 is tracked there; feature requests and discovered bugs still use GitHub issues.

Layout

PathPurpose
SCUS_974.72.yamlsplat config for the Loader
configure.pyGenerates build.ninja
config/Expected Original Loader path and hash
docs/Findings about the binaries and toolchain
src/Matched functions for the Game modules
include/Assembler macros and headers
tools/Helper scripts (ELF flattener, match checker)
tests/Tests for the helper scripts

AI disclosure

This project is developed with Claude Code, Anthropic's AI coding assistant, and OpenAI Codex. These assistants contribute code, tests and documentation. The maintainer (@TheRealestNwah) decided what it should do, tested it, and made the release decisions. Commits written with Claude carry a Co-Authored-By: Claude trailer. This disclosure also covers Codex contributions.

Support

Everything on my GitHub is free of charge and open source. If you find it useful and want to leave a tip or buy me a coffee, you can do that at ko-fi.com/morrowheat23. It's appreciated, never expected.

License

The code and tools in this repo are dedicated to the public domain under CC0 1.0. This covers only the repo's own contents, never the game or anything derived from your disc.

Read official guide
CALIFICACIÓN
—
Loading votes…
Advertisement

PROJECT FILE

Project type
NATIVE PORT
Genre
Action / Adventure
Status
alpha
Original platform
PlayStation 2
Technology
Decompilation and reconstruction in C/C++
Version
—
Updated
—

Target platforms 1

Windows
View on GitHub
Advertisement