Vandal Hearts — PC Port v2.1.0
A native PC port of Vandal Hearts — one executable for the USA (SLUS-00447), Asia
(SCPS-45183) and Japan (SLPM-86007) releases. You must supply your own
legally-owned disc image (.bin); the download does nothing without it.
A maintenance release: two small conveniences, and a large batch of robustness fixes from an
independent code review of the port. As always, normal mode is unaffected — still byte-for-byte
the retail game.
Added
-
A message box when no disc is found. Launching by double-click with no
game/folder set
up used to open a window and close it again with no explanation. It now shows a dialog
explaining what it looked for and where to put your disc.bin, on top of the existing console
message. -
Escape asks before quitting. Once a game is underway, pressing Escape now opens a
confirmation ("QUIT THE GAME?") with NO selected by default, so an accidental press can't
lose unsaved progress — the same confirm the overlay's RETURN TO TITLE uses. At the title screen
and during its logo/title-attract videos, Escape quits immediately because no run is active. The
window's close button also still quits immediately, as before.
Fixed
Eighteen issues found by an independent code review of the port. All but the first need a damaged
or deliberately modified disc image or add-on file to reach:
- A rare audio crackle/crash on scene change — a sound bank could be freed while a fading-out
sound effect was still playing from it. Voices using a bank are now stopped before it's freed. - Windows and Linux now compute identical geometry for large camera/object translations — a
32-bit-vs-64-bit arithmetic difference in the GTE math (invisible in ordinary play, where the
values involved stay small) meant the two platforms could diverge in principle. Both now use
the same wide arithmetic. - Corrupt or hand-modified game data can no longer crash the port — out-of-bounds reads and
unbounded parsing were closed across TIM/VRAM image loading, VAB/SEQ sound-bank loading, HD
video (a mid-file resolution/format change), an oversized HD image, and hand-edited subtitle
cue files. All require a damaged or deliberately modified disc image or add-on file — an
unmodified disc was never affected. - A genuine crash now fails loudly instead of being silently "repaired." A safety net meant
for one specific startup case had grown to catch stray memory writes anywhere, turning some
real bugs into silent corruption instead of a clean crash. It's now scoped back to its
original job.
Changed
- Headless launches now explain themselves in the log (advanced) — if the game can't open a
window, the log names the reason instead of just noting that it's running without one. - An optional exact-integer camera-math path (advanced, off by default) —
VH_GTE_EXACT
switches the GTE's rotation-matrix math to a bit-for-bit transcription of the original PlayStation
integer routine, for comparing against the port's default floating-point path. See
OPTIONS.md.
Developer
- Comment hygiene enforced tree-wide (
make check-comments); the data-segment generator now
refuses a wrong-region or truncated game executable instead of silently mis-building; ten new
regression harnesses underplatform/pc/tools/regress/; release-script hardening (a bad
version tag is refused before anything is deleted, the shared-region identity check is now
enforced, per-game HD-pack packaging, a Windows-only publish no longer references a missing
file).
Compatibility
- Saves,
vandalhearts.iniand language packs all keep working untouched. - HD packs are unchanged since 2.0.0 — keep the one you already have, or download the same
packs again from this release.
Downloads
| Platform | File | How to run |
|---|---|---|
| Windows 10/11 | VandalHearts-v2.1.0-windows-x64.zip
| Unzip; put your disc in a game\ folder next to vandalhearts_pc.exe; run it.
|
| Linux (glibc ≥ 2.34) | VandalHearts-v2.1.0-linux-x86_64.AppImage + vandalhearts.ini
| Put both together; put your disc in a game/ folder beside the .AppImage; chmod +x and run. Needs FUSE2.
|
| Any | VandalHearts-v2.1.0-Manual.pdf
| The Player Manual: setup, controls, features, troubleshooting. |
| Optional | VandalHearts-v2.1.0-hdpack-SLUS-00447.zip
| HD backgrounds + movies. Unzip so hdpacks/ sits beside the executable. Loaded on US/Asia discs.
|
| Optional | VandalHearts-v2.1.0-hdpack-SLPM-86007.zip
| HD backgrounds + movies. Unzip so hdpacks/ sits beside the executable. Loaded on Japan.
|
Config: edit vandalhearts.ini next to the executable (window scale, audio, etc.).
Note on contents
A release binary embeds a portion of game-derived data (the executable's static
data segment, a small BIOS-derived font, reconstructed tables) so the port can
run — © Konami / © Sony, no ownership claimed. It is a fraction of the game; the
bulk loads from your own disc at runtime. See NOTICE/DISCLAIMER.
Verify downloads against SHA256SUMS.txt.
Optional HD packs
Higher-resolution backgrounds + re-encoded FMV movies, one pack per game
(SLUS-00447 for US/Asia, SLPM-86007 for Japan). Optional; the game runs
identically without one. Unzip so hdpacks/ sits next to the executable, then
enable HD PACK in the Select+Start options (see docs/hd-pack.md). Upgrading a
1.x install? Your old pack still works — or move the previous contents of
hdpacks/ into a new hdpacks/SLUS-00447/ folder to match the new layout.
This is upscaled derivative art (© Konami), provided for convenience and also
buildable from your own disc — see NOTICE / DISCLAIMER.

