Claude (Opus 4.6) figured out how to patch my childhood game to play it on modern Windows
TL;DR Highlight
Claude figured out how to patch WING32.dll to run a 1996 16-bit game (Tonka Construction) on modern Windows — no DOSBox needed. A real-world reverse engineering case.
Who Should Read
Developers dealing with legacy software compatibility, or anyone who needs to run old Windows apps on modern systems. Also interesting for devs curious about AI-assisted binary patching and DLL translation work.
Core Mechanics
- Tonka Construction (1996) is a 16-bit application that can't run on 64-bit Windows (XP onward) since there's no layer for executing 16-bit code natively.
- The traditional approach required installing DOSBox with driver configurations — a tedious setup process that didn't provide a great gaming experience.
- Claude Opus 4.5's solution was to patch WING32.dll directly, creating a shim that translates the DLL's API calls to modern Windows APIs. Same principle as DXVK translating DirectX calls to Vulkan.
- The result was open-sourced as 'TonkaReconstruction' on GitHub, enabling the game to run on modern Windows without any emulator.
- This case demonstrates Claude's ability to go beyond simple code writing — analyzing binary-level compatibility issues and independently designing a creative DLL shimming solution.
Evidence
- A real user successfully ran the 1996 game Tonka Construction on modern Windows and published the result on GitHub (github.com/Quackster/TonkaReconstruction) for anyone to use.
- Rather than suggesting a workaround like 'just use DOSBox,' Claude independently designed a DLL translation layer inspired by the DXVK approach — a fundamental solution that caught community attention.
- Compared to the DOSBox-based approach, this patch method provides a much better experience since the game runs directly without any separate emulator installation.
How to Apply
- If you have old 16-bit or 32-bit legacy apps that won't run on modern Windows, show Claude the DLL dependency list and error messages, then ask 'Can you create an API translation layer like DXVK?'
- When starting DLL shimming work on legacy software, have Claude analyze the original DLL's exported function list and generate wrapper code mapping each function to modern WinAPI equivalents.
- Check out the TonkaReconstruction GitHub repo (github.com/Quackster/TonkaReconstruction) to study the WING32.dll patch structure — it can serve as a starting point for similar legacy game/app patching work.
Terminology
Related Papers
Using Claude Code: The unreasonable effectiveness of HTML
Claude Code 팀이 Markdown 대신 HTML을 LLM 출력 포맷으로 선호하기 시작한 이유와 그 실용적 장점을 정리한 글로, AI와 함께 문서/스펙/대시보드를 만드는 워크플로우에 직접적인 영향을 준다.
When to Vote, When to Rewrite: Disagreement-Guided Strategy Routing for Test-Time Scaling
Disagreement-guided routing boosts LLM accuracy on math and code by 3-7% with adaptive problem solving.
Less Is More: Engineering Challenges of On-Device Small Language Model Integration in a Mobile Application
Five failure modes and eight practical solutions emerged after five days of running on-device SLMs (Gemma 4 E2B, Qwen3 0.6B) with Wordle.
Dynamic Context Evolution for Scalable Synthetic Data Generation
A framework that completely eliminates duplication and repetition in large-scale synthetic data generation with LLMs using three mechanisms (VTS + Semantic Memory + Adaptive Prompt).
90%+ fewer tokens per session by reading a pre-compiled wiki instead of exploring files cold. Built from Karpathy's workflow.
This is a workflow sharing post about how pre-organizing a codebase in Wiki format can reduce token usage per Claude session by more than 90% instead of directly exploring the codebase every time.