TLG-Port: The Last Guardian Runs Native on Windows Without an Emulator

By Indie Kings | October 23, 2026

Updated October 23, 2026: TLG-Port, an unofficial PC port of The Last Guardian, runs the PS4 game's own compiled code on a Windows machine without emulating a CPU. The repository opened on 20 October and had shipped two releases and collected 47 stars by the 22nd. The trick is architectural: the PS4 and a PC share the x86-64 instruction set, so the game's own binary executes directly and only the console's system libraries have to be replaced.

GitHub repository card for SulphurS16/TLG-Port

Image: GitHub repository card for SulphurS16/TLG-Port, the unofficial Last Guardian PC port.

What runs, and what gets replaced

The README puts its disclaimer and its method in the opening paragraph, which is the right order. The port is not rebuilt from the game's source code. It runs the game's own PS4 program, from your copy of the game's files, on a compatibility layer written for this game. The x86-64 code executes directly on your processor with no CPU emulation, the PS4 system libraries it calls are reimplemented for Windows, which the project calls high-level emulation, and its graphics commands and shaders are translated to Vulkan. The project contains no game data, no game code and no keys, and decrypts nothing.

That combination is neither a source port nor a classic emulator, and the distinction is worth holding on to. A source port rewrites the game and ships the rewritten code. An emulator reproduces the console's hardware, firmware and all, so it can run any game. TLG-Port does neither. It loads eboot.bin and the libraries in the game's sce_module folder, then links them to its own implementation of the PS4's system libraries: memory, threads, files, saves, sound through the game's NGS2 mixer with ATRAC9 and HE-VAG audio, movies, video output and controllers. The game believes it is talking to a PS4. It is talking to Rust code written for this one title.

While loading, the port adjusts a few kinds of instructions, and the README is specific about which: thread-local storage goes through Windows, and AMD's SSE4a instructions are emulated on processors that lack them. The graphics path is where the PS4 emulator heritage shows. The game drives the PS4's graphics chip directly, without a graphics API like DirectX, so the port executes the game's graphics command stream with Vulkan and translates its shaders to SPIR-V as the game uses them, the same work a PS4 emulator does for graphics. A few patches to the game's code, applied as it loads and only to the exact 01.03 program, add features such as the raw mouse camera and the resolution setting.

The narrowness is the point. This is not a PS4 emulator that happens to boot The Last Guardian; it is a single-game runtime that implements only what this game calls. That is why it fits in a 2.8 MB download instead of a multi-gigabyte emulator package, and why its compatibility list is one game long.

Frame rates and the hardware that produced them

The README states its test hardware and its numbers without rounding them into marketing. On a Ryzen 9 5900X with an RTX 4090, the game holds 30 fps everywhere, which is the game's own original limit, and with the 60 fps limit it holds 60 in nearly every area, dipping to about 51-57 at the ending's start and 42-45 in the final battle. The same test on a 6-core laptop CPU from 2019 produces about 25-30 fps. That gap points at the bottleneck: single-core processor speed, not graphics.

The requirements follow from that. Windows 10 or 11, 64-bit, a graphics card with a Vulkan 1.3 driver from NVIDIA, AMD or Intel, about 4 GB of video memory, and a recent processor with high single-core speed. The README asks for about 4 GB of VRAM, which is modest by 2026 standards, and does not ask for a specific GPU tier, because the GPU is not where the work queues up.

Uncapped mode exists but the project advises against it, and the reason is unusual enough to quote plainly: at 116-119, 156-179 and 237-359 fps the game runs slower than real time. The game's timers count time rather than frames, so its normal speed depends on the frame rate staying inside expected ranges. A clean 30 fps or 60 fps limit is the supported configuration, and the 60 fps limit is the one the port advertises as its headline, with the honest note that the game has not yet been played through at 60 fps.

The game files you must supply

You need your own copy of The Last Guardian for PS4, the US release CUSA03627, at version 01.00 with update 01.03, as decrypted folders. The game folder holds eboot.bin, sce_module, sce_sys and the trico_*.psarc archives. The update folder holds the same structure for 01.03, or the update is merged into the game folder instead. Either arrangement is accepted, and the two together need about 25 GB of disk space.

The repository ships none of that. The separation is deliberate and the licence repeats it: the GPL covers this project's code and grants nothing for the game, its data, its keys or any system software, all of which you supply yourself. The README also asks that game files, keys, decrypted files and download links never be shared in the repository or its Discord. If you do not already own the PS4 disc or a legitimate digital copy, this port has nothing for you, and that is the intended design rather than an oversight.

Install, update and uninstall

Installation is a zip extraction. Download TLG-Port-<version>.zip from Releases, right-click it, choose Extract All, and pick a folder such as C:\Games\TLG-Port. Start tlg-launcher.exe. Windows will likely show "Windows protected your PC" because the launcher is not code-signed; the README's instruction is More info, then Run anyway. On the Game files screen, choose the game folder and the update folder, leaving the update field empty if the update is merged into the game folder, then click Play.

Updating keeps everything that matters. Unzip the new release over the old one, or into a new folder, and start its launcher: the game folders, settings, key bindings and saves live in %APPDATA%\TLG, which every version uses, and the shader caches in %LOCALAPPDATA%\TLG carry over too. A portable install unzipped beside the old one takes over the old install's settings, key bindings and saves at first start, leaving the old folder untouched. If your game folders sit inside the old release's folder, keep that folder or use Move here on the Game files screen to bring them into the new one.

Uninstalling is deleting the folder, with one caveat the README spells out: if you used Move here to put the game folders inside the port's folder, move them out first, or they are deleted along with it. Settings, saves, logs and caches live outside the install directory, so they survive unless you remove them yourself.

Controls and the launcher

Controllers work like a PS4 pad: Xbox and other XInput controllers, DUALSHOCK 4 and DualSense, over USB or Bluetooth. The keyboard and mouse defaults are in the README, and every binding can be changed in the launcher. The mouse camera uses raw input, which is the correct choice for a camera, and the game's menus have no mouse pointer, so menu navigation stays on keys or a pad.

ActionDefault keys
MoveW A S D
WalkLeft Shift
CameraMouse, or I J K L
Jump (Triangle)Space
Pick up, grab, hold on (Circle)E or left click
Tackle, throw (Square)F or right click
Crouch, confirm (Cross)C or Enter
R1 / L1Q or mouse button 5 / R or mouse button 4
R2 / L2X / Z
R3 / L3V or middle click / B
D-padArrow keys
Pause menu, back in menusEscape
Options / touchpadTab / T
Free the mouseF1
FullscreenF11 or Alt+Enter

The launcher is also where display mode, resolution from 1280x720 to 3840x2160, frame-rate limit, graphics card, volume and language are set, and those apply the next time the game starts. Windowed, borderless and fullscreen are all available, and the game runs in English, Spanish, French or Portuguese, the languages of its US release.

Saves, paths and the backup ring

Settings and saves live in %APPDATA%\TLG, and before each new save the previous one is copied into a save-backups folder there, which keeps the newest 20 files. Logs and caches live in %LOCALAPPDATA%\TLG. An empty file named portable.txt next to tlg.exe keeps everything in a user folder beside it instead, which is the portable-install switch.

The 20-deep backup ring is a small feature with real value in a port that lists occasional crashes among its known limits. If the game closes just after an area begins loading, the recovery path is to start it again and choose Continue, which resumes from the last checkpoint. A rolling save history means the failure costs you progress since the last checkpoint, not the last 20 checkpoints, and it is the sort of thing more ports should copy.

Two releases in one day

The repository's release list as of 23 October holds two entries, both published on 22 October, both non-prerelease, each a single zip of about 2.8 MB.

ReleasePublished (UTC)AssetSize
v0.6.122 October 2026, 21:44TLG-Port-0.6.1.zip2,892,100 bytes
v0.6.022 October 2026, 16:57TLG-Port-0.6.0.zip2,877,465 bytes

Both release bodies carry the same short description: the port contains no game data, game code or keys, and you need your own copy at version 01.00 with update 01.03. The README's licence note says releases up to 0.5.1 were MIT licensed, which means the project had a release history before these two entries, even though the current GitHub release list only shows the 0.6 series. The move to GPL-3.0-or-later happened somewhere between 0.5.1 and 0.6.0, and the README presents it as settled rather than as news.

Known limits, stated by the project

The known-limits list is the most useful section for anyone deciding whether to try this, and it is unusually candid:

  • At 60 fps the game's timers and effects keep their normal speed, but the game has not been played through at 60 fps yet.
  • Uncapped is not recommended, because of the slow-motion frame ranges listed above.
  • There is no mouse pointer in the game's menus.
  • The title screen's music plays quieter than it should.
  • Testing covered NVIDIA graphics, a laptop and a desktop; AMD and Intel graphics have not been tested yet.
  • Now and then the game closes with an error just after an area starts loading, seen with the 60 fps limit and with none. Starting again and choosing Continue resumes from the last checkpoint.

That last item is the one to internalize before a long session. It is not a corrupted save or a lost install, just a restart and a Continue away, but it is why the save-backup ring and the 30 or 60 fps limits are the recommended configuration rather than suggestions.

Builds, licence and third-party code

Building from source takes two scripts. tools\bootstrap.ps1 runs once and downloads the pinned Rust and llvm-mingw toolchains into local\tools, checking their SHA-256 hashes. tools\package.ps1 then builds dist\TLG-Port-<version>.zip. That is a short chain for a project that links against a proprietary binary, and the hash checks give a builder something concrete to verify.

The licence is GPL-3.0-or-later, copyright SulphurS16 and contributors. It covers this project's code only and grants nothing for The Last Guardian or any other game data, keys or system software. Third-party components keep their own licences, all compatible with GPL version 3, listed in THIRD_PARTY.md and THIRD_PARTY_NOTICES.txt. The repository is Rust, was created on 20 October 2026, was last pushed on 22 October, and carries 47 stars, 1 fork, 2 open issues and no description or homepage field.

Warnings, terms and what the licence does not grant

Two risks deserve plain language. First, the executable: the launcher is unsigned, so SmartScreen flags it on first run. That is structural for a free project without a code-signing certificate, not a defect you can patch away, and the right response is to judge the download by its repository and release page rather than by the warning dialog alone. The build scripts pin and hash their toolchains, but the release zip is still a binary from a three-day-old project, so run it the way you would run any unsigned game tool.

Second, the terms. The project is not affiliated with, endorsed by or sponsored by Sony Interactive Entertainment, genDESIGN or any other rights holder, and The Last Guardian is a trademark of Sony. It requires a copy of the game you already own, and it decrypts nothing itself. That does not make console dumping or running a compatibility layer an approved activity under Sony's platform terms: those terms are set by Sony, a PlayStation Network account used alongside private dumps can face consequences, and nothing in this README changes that. The project automates nothing about your account or your console, and no part of this article should be read as Sony approving the method. If the terms matter to you, they are worth reading before you dump anything.

FAQ

What is TLG-Port?
An unofficial Windows port of The Last Guardian for PS4, targeting the US release CUSA03627 at version 01.00 with update 01.03. It runs the game's own x86-64 code on Windows through a compatibility layer that replaces the PS4 system libraries and translates graphics commands to Vulkan. It ships no game data and no keys.

Do I need a PS4 emulator or firmware to run it?
No. There is no firmware image and no CPU emulation. The port implements only the system libraries this game calls and runs the game's binary directly, because the PS4's processor is x86-64 like a PC's.

How well does it run?
On a Ryzen 9 5900X with an RTX 4090, 30 fps everywhere, and 60 fps in nearly every area with the 60 fps limit, with drops to about 51-57 at the ending's start and 42-45 in the final battle. On a 6-core laptop CPU from 2019, about 25-30 fps. Single-core speed is the bottleneck; the README asks for about 4 GB of VRAM and a Vulkan 1.3 driver.

Which game version do I need, and what files go where?
The US release CUSA03627, version 01.00 with update 01.03, as decrypted folders. The game folder holds eboot.bin, sce_module, sce_sys and the trico_*.psarc archives; the update folder holds the same for 01.03, or the update is merged into the game folder. About 25 GB of disk space covers both.

How are saves handled?
Settings and saves live in %APPDATA%\TLG, and the previous save is copied to a save-backups folder that keeps the newest 20 before each new save. Caches live in %LOCALAPPDATA%\TLG. An empty portable.txt next to tlg.exe keeps everything in a user folder beside the executable.

Does running it put my PlayStation account at risk?
The port has no online component described in its README and does not touch Sony's services itself, but the game files come from a dump of your own copy, and Sony's platform terms are Sony's to enforce. A PlayStation Network account associated with private dumps can face consequences regardless of what a port's README says, and nothing here implies Sony approval. Weigh that before you start.

Bottom Line

TLG-Port is a narrow, well-documented single-game runtime, and its design choices are worth studying even if you never install it. No CPU emulation, because the architecture line does not require it. No game data, which keeps the repository small and the legal surface to code only. A build chain of two scripts with pinned, hashed toolchains. And a save system with a 20-deep backup ring, which is more care than most ports of this size bother with.

The costs are equally clear. It is CPU-bound, so a 2019 six-core laptop lands at 25-30 fps, and the game has not been played through at 60 fps yet. AMD and Intel graphics are untested, the launcher is unsigned, and the uncapped mode can make the game run slower at specific frame rates. Three days of history and two releases mean this is early software, not a finished remaster.

If you own The Last Guardian on PS4 and have a desktop CPU with strong single-core performance, this is a specific, honest option with a small download and a good save story. If you do not own the game, there is nothing here for you by design, and the project is explicit that it will stay that way.

Sources

  • SulphurS16/TLG-Port README, accessed 23 October 2026
  • GitHub repository metadata and release list for SulphurS16/TLG-Port, accessed 23 October 2026

Related: Bloodborne PC: One Port, Two Forks, Two Ideas of a PC Version | AnyPS5 Converts PS5 Games to Native PC Instead of Emulating Them | Dragon Age Origins Recomp: v0.10.0-dev.4 Recompiles Four Missed Jump Tables

Share