Claude (Opus 4.5)가 어린 시절 게임을 현대 Windows에서 실행되도록 패치하는 방법을 찾아냈다
Claude (Opus 4.6) figured out how to patch my childhood game to play it on modern Windows
TL;DR Highlight
Claude가 WING32.dll을 패치하는 방법을 스스로 개발하여 1996년 출시된 16-bit 게임 Tonka Construction을 DOSBox 없이 현대 Windows에서 플레이 가능하게 만들었다.
Who Should Read
레거시 소프트웨어 호환성 문제를 다루는 개발자, 또는 오래된 Windows 애플리케이션을 현대 환경에서 실행해야 하는 사람. AI를 활용한 바이너리 패치나 DLL 번역 작업에 관심 있는 개발자.
Core Mechanics
- Tonka Construction(1996)은 16-bit 애플리케이션으로, Windows XP 이후의 64-bit 운영체제에서는 기본적으로 실행이 불가능하다. 64-bit Windows는 16-bit 코드를 직접 실행하는 레이어 자체가 없기 때문이다.
- 기존 방법은 DOSBox 같은 에뮬레이터를 설치하고 드라이버까지 따로 구성해야 했는데, 설정 과정이 번거롭고 게임 경험도 좋지 않았다.
- Claude Opus 4.5가 제안한 해결책은 WING32.dll을 직접 패치해서 해당 DLL이 하는 API 호출을 현대 Windows API로 번역(shim)하는 방식이다. GPU 호환성 레이어인 DXVK가 DirectX 호출을 Vulkan으로 번역하는 것과 같은 원리다.
- 결과물은 'TonkaReconstruction'이라는 이름으로 GitHub에 오픈소스로 공개되었으며, 별도의 에뮬레이터 없이 현대 Windows에서 게임을 실행할 수 있게 해준다.
- 이 사례는 Claude가 단순한 코드 작성을 넘어, 바이너리 레벨의 호환성 문제를 분석하고 창의적인 DLL shimming 해결책을 스스로 설계할 수 있음을 보여준다.
Evidence
- 실제 사용자가 1996년 게임 Tonka Construction을 현대 Windows에서 실행하는 데 성공했으며, 그 결과물을 GitHub(github.com/Quackster/TonkaReconstruction)에 공개해 누구나 사용할 수 있게 했다.
- Claude가 단순히 'DOSBox 써라'는 식의 우회책을 제안한 것이 아니라, DXVK 방식에서 아이디어를 얻은 DLL 번역 레이어라는 근본적인 해결책을 스스로 설계했다는 점이 커뮤니티에서 주목받았다.
- DOSBox 기반의 기존 방법과 비교했을 때, 이 패치 방식은 별도 에뮬레이터 설치 없이 게임을 직접 실행할 수 있어 사용 경험이 훨씬 낫다고 포스트 작성자가 밝혔다.
How to Apply
- 비슷하게 오래된 16-bit 또는 32-bit 레거시 앱이 현대 Windows에서 안 돌아간다면, Claude에게 해당 앱이 의존하는 DLL 목록과 오류 메시지를 보여주고 'DXVK처럼 API 번역 레이어를 만들 수 있냐'고 물어보자.
- 레거시 소프트웨어의 DLL shimming 작업을 시작할 때, Claude에게 원본 DLL의 exported function 목록을 분석시키고 각 함수를 현대 WinAPI로 매핑하는 래퍼 코드를 생성해달라고 요청해볼 수 있다.
- TonkaReconstruction GitHub 레포(github.com/Quackster/TonkaReconstruction)를 직접 참고해서 WING32.dll 패치 구조를 살펴보면, 비슷한 레거시 게임/앱 패치 작업의 출발점으로 삼을 수 있다.
Terminology
관련 논문
Claude Code에서 HTML을 출력 포맷으로 쓰는 이유: Markdown보다 나은 점들
Claude Code 팀이 Markdown 대신 HTML을 LLM 출력 포맷으로 선호하기 시작한 이유와 그 실용적 장점을 정리한 글로, AI와 함께 문서/스펙/대시보드를 만드는 워크플로우에 직접적인 영향을 준다.
언제 투표하고 언제 다시 쓸까: Disagreement 기반 Test-Time Scaling 전략 라우팅
모델 출력이 얼마나 일치하는지 보고 쉬운 문제엔 majority voting, 어려운 문제엔 문제 rewriting을 자동으로 선택해 정확도 3~7% 올리고 샘플링 비용도 줄이는 학습 불필요 프레임워크.
Less Is More: Android 앱에 On-Device Small Language Model 통합할 때 실제로 겪는 엔지니어링 문제들
Wordle 게임에 온디바이스 SLM(Gemma 4 E2B, Qwen3 0.6B)을 5일간 붙여보면서 발견한 5가지 실패 유형과 8가지 실용 해결책 정리
확장 가능한 Synthetic Data 생성을 위한 Dynamic Context Evolution
VTS + Semantic Memory + Adaptive Prompt 3가지 메커니즘으로 구성된 프레임워크는 LLM 대량 synthetic data 생성 시 배치 간 중복·반복 현상을 완전히 제거한다.
Karpathy 워크플로우에서 영감받아 사전 컴파일된 Wiki로 세션당 토큰 90%+ 절감
사전에 정리된 코드베이스 Wiki를 활용하면 Claude 세션당 토큰 사용량을 90% 이상 줄인다.
3개월치 AI 생성 코드를 전부 삭제했다. 그리고 배운 것들.
AI로 작성된 코드베이스를 70% 삭제 후 2주 만에 재작성하니 절반 크기로 줄어들면서 완전한 이해 가능성을 확보했다.