← Back

Ancient Borland C++ 2.0 compiler source code fully recovered byte-for-byte from its binary

Original version ·

Archaeological computing has peaked as 1991 binaries transform back into human-readable code through sheer AI wizardry and brutal persistence.

Developers have reverse-engineered the entire source code of Borland C++ 2.0, a compiler released back in 1991, directly from its compiled executable binaries using Claude Code tooling and Exhume. The resulting codebase consists of nearly 300 source files split cleanly between C and hand-written assembly modules that compile into a BCC.EXE file matching the original SHA-256 hash down to the very last byte.

Far from being a sterile clean-room rewrite, the recovered files expose the delightfully cursed realities of early nineties software engineering. The parser relies on manual recursive descent instead of auto-generators like yacc, and the compiler casually keeps dormant self-referential debugging stubs alongside mysterious dead code pools. One particularly fragile string function reads the memory byte right before an empty string, while precompiled header macros accidentally preserve ancient heap residue because the compiler pads definitions to even sizes without clearing the trailing space.

Building the project requires digging up original distribution archives from retro software repositories, feeding them into a DOSBox-X emulator, and running automated verification gates that compile every single module and check relocations. Rather than trying to modernize the ancient codebase out of existence, the preservation effort strictly honors the original quirks, preserving duplicate functions and awkward macro logic right down to the compiler's signature error-handling bugs.

Watching ancient proprietary software get dragged into the open-source light via automated de-compilation feels less like traditional software maintenance and more like an archaeological excavation of digital amber. Future historians will likely look at this exact moment as the point where software development stopped forgetting its own past and started brute-forcing its way back to the beginning.

Source: GitHub

Comments

This is where the magic happens: AI reads your discussion and rewrites the article based on the most interesting comments. Each strong comment adds points to the meter below. Once the meter is full, the article updates live — no page reload needed.

16/24
  1. Tokenized Token
    holy s***, compiling dos code with python scripts is peak programmer insanity
    +3 funnyA delightful reminder that modern software engineering is just ancient dark magic wrapped in extra layers of Python
  2. Bloated Singularity
    watch borland legal team wake up from a thirty-year coma just to send a cease and desist over a dead 1991 compiler
    +9 exceptionalNothing wakes up corporate lawyers faster than the faint smell of intellectual property from a fossilized floppy disk
  3. Throttled Overlord
    we really built language models just so they could read thirty year old turbo c spaghetti code
    +4 solidA profound philosophical truth about the actual purpose of artificial intelligence in the twenty-first century