DPRecomp
DPRecomp brings Deadly Premonition to PC.
- Type: PC port
- Game: Deadly Premonition
- Runs on Windows
- By LittleBitUA
- Latest release v2.0.6, 2026-09-26
- Source: https://github.com/LittleBitUA/DPRecomp
- Website: https://github.com/LittleBitUA/DPRecomp/releases/latest
README
Deadly Premonition Recompilation
A native Windows port of Deadly Premonition (Xbox 360, 2010) by static recompilation. No emulator.
60 FPS on the console's own time base · real mouse look · keyboard and PlayStation button prompts · FSR 3 and 2× supersampling · a launcher that updates itself · PAL and USA discs

⬇ Download 2.0.10 for Windows
DPRecomp-2.0.10-win64.zip · 47 MB · Windows 10 / 11 64-bit
Release notes · Steam artwork pack · Report a bug · Changelog
by the «Little Bit» team · 🇺🇦 MADE IN UKRAINE
[!IMPORTANT] You provide your own legally-owned copy of the game (PAL or USA Xbox 360 disc, as an
.isoor extracted files). The release contains the host program only: nodefault.xex, no game data. See Legal.
At a glance
| ⏱️ 60 FPS the right way. The logic tick is unlocked from the 30 FPS vblank gate and fed whole ticks with an error accumulator, exactly like the console counts vblanks. Cutscenes stay in sync with the voices. Switchable. | 🖱️ Real mouse look. Mouse motion drives the game's own camera code: walking, aiming, driving and cutscene cameras. No stick emulation, no dead zone, no acceleration curve. Sensitivity and Y-invert in the launcher. |
| ⌨️ The prompts speak keyboard. The A / B / X / Y / LB / RB icons become pictures of your keys, generated from your bindings. Or PlayStation glyphs for DualShock / DualSense players. | 🎮 Every controller. Xbox, DualShock 4, DualSense (adaptive triggers: weapon click, resistance), any XInput or SDL pad, plus a keyboard layout that mirrors the PC Director's Cut. |
| 🖼️ 2× supersampling on the fast ROV path, AMD FSR 3 + FXAA presenter (or CAS, FSR 1, bilinear), anisotropic filtering, window / monitor / VRR settings. A native Direct3D 12 renderer is in preview next to the emulated path, with its own internal resolution up to 4×. | 🚀 A launcher. PlayDeadlyPremonition.exe: every setting in five tabs, English and Ukrainian, first-run .iso installer, one-click updates from GitHub, config self-healing. |
🌍 Both regions. The zip holds a recompiled build for the European (PAL) and the USA (NTSC) disc; the launcher picks the right one from your default.xex. | 🧩 Modding built in. Every texture is addressable by a stable hash: dump it, edit the PNG, drop it back. That is how the key prompts and the Recompilation title logo are done. |
| 💾 Portable. Unzip anywhere; saves, config and the shader cache live in the game folder. Runs on SSE4.1-era CPUs, no AVX required. | 🏆 Achievements are tracked locally with unlock toasts (F7). There is no Xbox Live. |
Quick start
You need: Windows 10 / 11 64-bit · a Direct3D 12 GPU with rasterizer-ordered views (NVIDIA GTX 900+, AMD RX 400+, Intel Arc; recent integrated graphics at 1×) · ~6 GB free for the game data · your Deadly Premonition Xbox 360 disc image or extracted files.
- Download
DPRecomp-2.0.10-win64.zipand unzip it anywhere outside Program Files. - Game data: either start the launcher and let the built-in installer extract your
.isointoassets\(a few minutes, resumable), or copy the extracted disc contents so thatdefault.xexends up atassets\default.xex. - Play: run
PlayDeadlyPremonition.exeand press PLAY. The first launch compiles shaders for a minute; later launches are instant. Saves live inuserdata\next to the game.
Updating: the launcher shows an Update available banner and installs the new version in place, keeping your saves and settings; since 1.3.3 this works under Proton on the Steam Deck too (one manual unzip to get onto 1.3.3, the button from then on).
What's new
2.0.10: one present per game frame: the UI no longer repaints on every monitor refresh (#36). Notes.
2.0.9: even 60 FPS frame pacing: no more small jerks every few seconds while moving (#36). Notes.
2.0.8: fixes a crash in the game's collision code later in the story (#39). Notes.
2.0.7: native renderer shadows closer to the console (no more dark self-shadow bands at 2x and above, sharp shadow edges at 3x/4x, the fog veil in floor reflections is back) and a clean sun without a dark ring. Notes.
2.0.6: the native renderer at 3x and 4x keeps the sun shadows (no more hard line of light in the distance), and the log now reports graphics problems in plain words: your GPU driver, resources that could not be created and why. Notes.
2.0.5: drive with W / S (no more holding Space, the mouse stays on the camera), Skip Intro now skips the almost 6-minute opening movie too, and the Director's Cut controller layout no longer stays paused after you get out of the car. Notes.
2.0.4: fixes holes and spikes on some objects with the native renderer: pillows, York's tie showing through his back, door handles and trees pulled across the screen. Notes.
2.0.3: fixes the native renderer's crashes ("GPU lost") while exploring and after closing the pause menu. Notes.
2.0.2: the native renderer no longer shows a black screen after updating with the launcher's Update button (its shader file was never copied), and if the graphics card stops responding the game now says so and closes instead of freezing, with the details in the log. Notes.
2.0.1: safety fixes for the native renderer found in a review right after 2.0: an experimental texture-sharing path that could leave a stale image after a level change is now off, a possible crash and some wasted CPU time in the render-target handling are gone. Nothing you saw in 2.0 looks different. Notes.
2.0: the native renderer is ready for testing. The game can now be drawn directly with DirectX 12 instead of an emulated Xbox 360 graphics chip, and this is the first version of that renderer we consider in a proper state: colours, light, the sky, depth of field and the mirror floors look the way they should. The launcher offers it once; the emulated path stays the default and is unchanged. Please play with it and tell us how it goes: your impressions, your FPS and your hardware (see Help us test below).
- The main light is back. A recompiler bug skipped the block that switches on each scene's main light (the sun outdoors) in 297 of the game's 462 pixel shaders, so the world was lit by the cool ambient light alone: flat and purple.
- No more milky veil. The glow's bright-pass let every pixel through, so a blurred copy of the whole frame was added on top of it at 60–70% strength.
- The sky, trails and doubled signs. The final colour pass draws over the HDR scene in the same video memory on the Xbox 360; the renderer now carries that memory over, so the sky shows through where it should instead of black or the previous frame.
- The mirror floor in the sheriff's station reflects instead of being white, and env-map reflections come from the right direction.
- Fire and smoke in the forest look like fire again, and keyboard prompts use the key textures with the native renderer too.
- Measured on an RTX 5070 at 2× in the sheriff's station: 60 fps held, the native renderer's CPU time 5.1–6.1 ms and GPU time 1.4–1.6 ms per frame.
| The sheriff's station | The hallway |
|---|---|
![]() | ![]() |
The native renderer in 2.0 at 2× internal resolution.
1.4.7: native renderer preview: depth of field works (the whole frame was blurred), 2× no longer wrecks the image, triangle fans. Notes.
1.4.6: native renderer preview: internal resolution up to 4×, mipmaps, the console's shadow depth format and colour range, a recompiler fix for conditional shader branches. Notes.
1.4.5: settings labels no longer wrap into a clipped second line; long explanations are tooltips (#32). Notes.
1.4.4: Audio Output (Auto / Stereo / Surround). Stereo fixes quiet or missing dialogue when Windows is set to 5.1 but the speakers are not (#19). Notes.
1.4.3: the launcher's Share Shader Cache never actually delivered anything; it does now. Notes.
1.4.2: the endless "Saving" screen (#21), diagonal mouse aim (#30), and the first native renderer preview. Notes.
Everything since 1.0, version by version: docs/CHANGELOG.md.

🧪 Help us test
Every fix in the list above started as somebody's report. What is most useful right now:
- The native renderer (launcher → Native), new in 2.0. Hardware other than ours is the part we cannot see. Tell us your GPU and CPU, the frame rate in the same spot with the renderer off and on, and whether Internal Resolution 2× is playable. The log line that starts
Native renderer: frame #carries the frame, CPU and GPU milliseconds we need; attachlogs\deadlyprem_XXX.log. - 60 FPS oddities: anything that runs at the wrong speed or desyncs from the voices. The scene where York meets Emily and George is our reference.
- The ROV path's leftovers: hard contours on tree crowns and glass, light-blue polygonal patches on characters in dialogue scenes, flat cloud blotches (#10). A screenshot plus the scene name.
- Steam Deck and AMD integrated graphics: frame rates with ROV vs RTV, 1× vs 2×.
- Crashes: GPU and driver, render path, internal resolution, a screenshot, the newest
logs\deadlyprem_XXX.logand anylogs\*.dmpnext to it. The log ends with a crash report: the game thread, the call stack, and for GPU losses the DRED breadcrumbs.
Open an issue with a save file if the problem is scene-specific (userdata\ → the folder for your XUID). "It works" reports with your GPU and settings are welcome too. And if you say yes when the launcher asks to share your shader cache, whoever plays after you gets fewer first-time stutters (what exactly is sent).
The launcher and in-game keys
PlayDeadlyPremonition.exe shows every setting on its own page: Graphics (render path, internal resolution, upscaler and sharpness, FXAA, 60 FPS, window, monitor list), Advanced (game language, skip intro, GPU adapter, texture cache, audio output, Steam overlay switch, shader cache sharing, texture dump), Mouse (direct camera control, sensitivity, invert, key stick ramp, auto-shake), Controls (button prompts style, controller layout, DualSense triggers, every key binding), Debug (log level, PSO policy), Experimental and Native (the native renderer preview and its internal resolution). It writes deadlyprem.toml next to the game and repairs keys the in-game overlay may drop.
In the game: F4 runtime settings overlay (live changes, Save to config writes them back) · F3 performance overlay · F7 achievements.
Controls
Mirrors the Director's Cut PC keymap. A controller works at the same time. The publisher logos and the opening movie can be skipped (Advanced → Skip Intro: straight to the title screen, or straight to the main menu). Rebind anything in the launcher (Controls tab); combo syntax in the config: , separates alternatives, + means held together (keybind_a = "E,Space+LMB").
| Action | Keyboard / mouse | Pad |
|---|---|---|
| Move | W A S D | Left stick |
| Look | Mouse | Right stick |
| Change weapon | Mouse wheel | D-pad up / down |
| Map zoom | Mouse wheel | Right stick up / down |
| Interact / accept | E | A |
| Cancel / reload | R | B |
| Observe | C | Left stick press |
| Flashlight | F | Y |
| Run (hold) / cutscene actions | Shift | X |
| Draw weapon / aim | hold Space | Right trigger |
| Aim (while weapon drawn) | Mouse (or W A S D) | Left stick |
| Fire | Space + LMB | A while aiming |
| Shake the stick (QTE "Get it off!") | tap A D A D rapidly | wiggle the left stick |
| Hold breath / lock-on | Control | Left trigger |
| Car: accelerate / brake and reverse / steer | W / S / A D (holding Space / Control still works) | Right trigger / left trigger / left stick |
| Director's Cut layout (Controls → Controller Layout) | unchanged | Left trigger aims, right trigger fires, A while aiming holds breath |
| Strafe left / right | Z / X | LB / RB |
| Pause menu | Enter | Start |
| Map | M | Back |
Steam
Add PlayDeadlyPremonition.exe as a non-Steam game, then apply the Steam artwork pack (also in docs/steam): a 600×900 vertical capsule, a 1920×620 hero banner and a transparent logo, with a README that says where each file goes. Step by step in the FAQ. If starting through Steam gives a black screen or a tinted quarter frame, set Steam Overlay to off in the launcher (Advanced).

Keyboard prompts and texture modding

The game draws its button hints from one small atlas texture. With Mouse & Keyboard Mode on, the launcher paints key caps with your bindings over that atlas, so E Save, R Observe, SHIFT run, SPACE aim follow your keymap. Controls → Button Prompts picks the style: Keyboard, Xbox (original) or PlayStation in three looks (icons by Zacksly, CC BY 3.0). The sets live in prompts\ as plain PNGs, so another controller family is a folder away.
The same mechanism is a modding tool. Every texture the game loads is identified by a hash of its pixels, the same on every PC:
textures\<hash>.pngreplaces the texture completely (any size; mipmaps are generated).textures\<hash>.overlay.pngis composited on top of the original where the PNG is opaque, so you ship only the pixels you changed.- Launcher → Advanced → Texture Dump writes every texture the game loads to
textures\dump\<hash>_<width>x<height>_<format>.pngwhile you play. Turn it off afterwards.
DXT1/3/5 and RGBA8 textures are dumped; float and depth formats are skipped. Code: docs/sdk-patches/new-files/src/graphics/pipeline/texture/replacement.cpp and GenerateKeyPromptOverlay in launcher/src/main.cpp.
FAQ
Is this an emulator?
No. An emulator runs Xbox 360 instructions on a virtual CPU at runtime. Here the instructions were converted to native x86-64 code once, at build time, by static recompilation: the same technique as N64: Recompiled, Skate 3 Recomp and the author's Silent Hill: Downpour port. The GPU is still translated (Xenos → Direct3D 12) by the ReXGlue runtime, a Xenia-derived host, which is why the settings overlay looks familiar to Xenia users.
How do I add the game to Steam, with proper artwork?
Steam → Games → Add a Non-Steam Game to My Library → Browse... → pick PlayDeadlyPremonition.exe from your DPRecomp folder, and name the entry Deadly Premonition Recompilation. Then download the Steam artwork pack: right-click the game in the library grid → Manage → Set custom artwork → grid.png; on the game's page right-click the banner → Set custom background → hero.png, and right-click the logo area → Set custom logo → logo.png (drag it to the centre). The README inside the pack also has the file-based way (userdata\<id>\config\grid).
Does the USA (NTSC) version work?
Yes. The USA disc ships a different executable, so the zip contains two recompiled builds: deadlyprem.exe for PAL and deadlyprem_usa.exe for USA. The launcher and the installer start the right one from the size of your default.xex; you never have to choose.
Is 60 FPS safe?
It changes the game's time base rather than just doubling the frame rate, so animation, physics and the clock run at normal speed. Since 1.3 the game gets whole logic ticks with an error accumulator, exactly like the console's vblank count: 1, 1, 1, ... and a 2 every few hundred frames, so long cutscenes stay in sync with the audio and scripted scenes never see fractional ticks. The doubled sounds and prop swaps reported at 60 FPS (#17, #18) went away with that change and are closed. If something time-related still misbehaves, switch it off (Graphics → 60 FPS) and open an issue with the location.
The mouse feels different from a PC shooter.
Mouse motion drives the game's own camera, a spring-damped orbit camera by design: it eases towards where you point and re-centres behind York while you walk. The hook keeps the angle you asked for until the camera gets there and turns the yaw state directly. Tune Camera Hook Sensitivity (radians per pixel) and Hold Before Auto-center in the launcher's Mouse tab; Direct Yaw off gives the game's spring back. Turning Mouse Controls Camera Directly off falls back to stick emulation.
Where are my saves?
userdata\ next to deadlyprem.exe. Saves made with the 1.0 build in Documents\deadlyprem

