Borland C++ 2.0 : le code source refait à partir de BCC.EXE, octet par octet
Borland n'a jamais publié le code source de Borland C++ 2.0. Le projet borland-reborn l'a reconstruit depuis le binaire de 1991, avec un BCC.EXE identique à l'octet près.

Le code source de Borland C++ 2.0, sorti en 1991, n'a jamais été publié. Il existe pourtant maintenant, reconstruit à partir de l'exécutable du compilateur lui-même. Compilé avec la chaîne d'outils d'origine de Borland, il produit un BCC.EXE dont l'empreinte SHA-256 est celle du vrai.
Le projet s'appelle borland-reborn. Il contient 298 fichiers sources répartis en 15 répertoires : 265 en C (issus de Borland C++ 2.0 et de Turbo C 2.01) et 33 modules d'assembleur TASM écrits à la main. La séparation d'origine entre C compilé et assembleur manuel a été conservée. Le préprocesseur autonome CPP.EXE se reconstruit lui aussi octet par octet.
Comment le code source de Borland C++ 2.0 a-t-il été retrouvé ?
Il a d'abord fallu deviner la bonne version du compilateur et toutes ses options, car une fonction ne correspond que si tout est juste. L'auteur a ainsi découvert que 29 modules de la bibliothèque avaient été compilés avec Turbo C 2.01. Les fonctions ont ensuite été ajustées une à une jusqu'à ce que chaque octet coïncide.
Ce n'est qu'après que le code a été rendu lisible : environ 3 100 noms, 300 champs d'enregistrements, 40 structures et quelque 10 000 lignes de commentaires. Chaque modification ultérieure, même un simple renommage, doit repasser le même test octet par octet.
Qu'a-t-on découvert dans le compilateur ?
L'analyseur syntaxique est écrit à la main, en descente récursive, avec un analyseur d'expressions par priorité d'opérateurs et sans yacc. Les notes relèvent aussi des bogues probables : strrchr lit un octet avant une chaîne vide, et l'espace libéré dans le fichier d'en-têtes précompilés n'est jamais réutilisé.
Les programmes de Borland ne sont pas inclus : pour recompiler, il faut se procurer soi-même les distributions d'origine. Les scripts et la documentation sont sous licence MIT. Le code reconstruit provient de logiciels Borland protégés par le droit d'auteur et il est publié à des fins d'étude et de conservation, sans revendication de droits.
Le travail repose sur Exhume, une boîte à outils pour Claude Code issue de la décompilation d'Ultima Underworld II.
Des apps à découvrir
Touche les bonnes cases, additionne, atteins l'objectif. Facile à apprendre, difficile à maîtriser. Gratuit, pour tous les âges.
Discutez avec un partenaire IA ; chaque phrase revient corrigée et expliquée dans votre langue. 9 langues, de A1 à C2.
Ouvrez des messages EDIFACT et X12, chaque segment expliqué, conversion JSON/XML, export PDF et Excel. Fonctionne en local, sans envoi.
Choisissez pour qui, l'occasion et la personnalité. Le moteur lit les descriptions de produits de boutiques locales et classe ce qui convient. Gratuit, sans inscription.
Plus d'actus de ce jour
Tout voir →
Half-Life 2: Episode Three : un moddeur fait tourner les armes

Seagate FireCuda Forge : un disque dur de 20 To sans son SSD

Danfoss AK-SM 800A : des contrôleurs de froid encore vulnérables

Home Assistant avec IA : des droits d'admin pour un LLM chez soi
Plus dans: Logiciels
Tout voir →
Mode navigation privée de Chrome : ce qu'il cache vraiment

Meta Takes : une appli de prédiction qui paie en « cred », pas en argent
Panne Microsoft : Outlook, Teams et Office HS pendant 11 heures
