• [^] # Re: tu oublies que ça se compile

    Posté par (site web personnel, Mastodon) . En réponse au journal Microsoft libère le code de leur Basic pour le microprocesseur 6502. Évalué à 10.

    Je lis l'annonce de Microsoft qui dit:

    Over the years, dedicated preservationists have reconstructed build environments and verified that the historical source can still produce byte-exact ROMs. Notably, Michael Steil documented and rebuilt the original BASIC process for multiple targets. He has ported the code to assemblers like cc65, making it possible to build and run on modern systems.

    This open-source release builds on that work, now with a clear, modern license

    Je lis la page de Michael Steil qui est liée:

    If you disassemble a single binary, you can never tell why something was done in a certain way. If you have eight different versions, you can tell a lot. This episode of "Computer Archeology" is about reverse engineering eight different versions of Microsoft BASIC 6502 (Commodore, AppleSoft etc.), reconstructing the family tree, and understanding when bugs were fixed and when new bugs, features and easter eggs were introduced.

    Ma conclusion est qu'il s'agit oe reverse engineering. Microsoft aurait remis le source dans un format permettant de le compiler sur les logiciels d'époque, mais il n'y a aucune mention nulle part de:

    • comment ces fichiers ont été restaurés à partir de sauvegardes de 1978 (je ne pense pas que Bill Gates a dit "ah oui bien sûr je les ai toujours migré d'une machine à l'autre à chaque fois que j'ai fait un upgrade, tenez voici les fichiers". Éventuellement on peut imaginer qu'ils avaient une version sur papier et que le travail de Michael Steil a permis de vérifier que le code générait bien des binaires identiques?
    • Même l'illustration du blog de Microsoft est une photo de la version du basic pour intel 8080 qui est exposée dans un musée.
    • quels outils il faut utiliser pour les compiler? Le readm dit "Assembly Format: Compatible with period assemblers for 6502 development"

    Il y a quelques autres bizarreries comme le fichier .gitignore antidaté à il y a 48 ans (bien avant l'invention de git, si vous n'avez pas suivi). Pour moi cela rend ces infos peu exploitabnes si on veut étudier ce source comme un artefact historique. Peut-être qu'il est authentique, que Microsoft est effectivement très bon pour garder des backups de son code source pendant 50 ans sur des supports facilement accessibles, et qu'ils ont juste eu à récupérer le fichier sur leur serveur de sources actuel oùeil était disponible. Mais ça manque de preuves pour en établir l'authenticité, ce qui serait intéressant si on veut s'en servir pour étudier comment les développeurs géraient la compilation conditionelle en 1978 pour cibler plusieurs machines avec le même source.

    Si on veut simplement étudier le fonctionnement du BASIC ou le porter sur une nouvelle machine, par contre, l'officialisation de la license par Microsoft est une très bonne nouvelle!