Microsoft otwiera źródła GW-​BASIC-a

Microsoft kontynuując otwieranie kodów źródłowych (po Dosie i WinFile) swoich nie tylko historycznych produktów udostępnił kod źródłowy interpretera GW-BASIC. Był to dialekt BASIC-a opracowany przez Microsoft na komputery IBM PC XT i rozpowszechniany w pakiecie z systemem MS-DOS. Kod źródłowy dostępny jest na GitHubie na licencji MIT.

Co prawda, GW-​BASIC inspirowany był Microsoft BASIC-em, ale bezpośrednio wywodził się wprost z jego IBM-owego portu z 1981 roku - IBM Advanced BASIC, dostarczanego wraz z komputerem IMB PC 5150. Nie mniej w kodzie można znaleźć odwołania do legendarnego Microsoftowego BASIC-a (komentarz z pliku GWMAIN.ASM):

--------- ---- -- ---- ----- --- ---- -----
COPYRIGHT 1975 BY BILL GATES AND PAUL ALLEN
--------- ---- -- ---- ----- --- ---- -----

ORIGINALLY WRITTEN ON THE PDP-10 FROM
FEBRUARY 9 TO  APRIL 9 1975

BILL GATES WROTE A LOT OF STUFF.
PAUL ALLEN WROTE A LOT OF OTHER STUFF AND FAST CODE.
MONTE DAVIDOFF WROTE THE MATH PACKAGE (F4I.MAC).

Wszystkie microsoftowe implementacje BASIC-a mają swoje początki w pierwszym produkcie firmy, czyli Altair BASIC - interpreterze BASIC-a dla komputerów Altair 8800, który został napisany przez Billa Gatesa i Paula Allena w 1975 roku.

Opublikowany kod pochodzi z wydania GW-BASIC z 10 lutego 1983 roku. W całości został napisany w asemblerze 8086.

These sources, as clearly stated in the repo’s readme, are the 8088 assembly language sources from 10th Feb 1983, and are being open-sourced for historical reference and educational purposes. This means we will not be accepting PRs that modify the source in any way.
Microsoft Open-Sources GW-BASIC: The Source

Źródła zawierają tylko pliki w assemblerze. Nie ma żadnych skryptów budujących, plików makefile i innych narzędzi wspomagających kompilację, czy wygenerowanie plików wykonywalnych. Nie są też dostępne gotowe, ani pre-kompilowane pliki binarne. Do zbudowania GW-BASIC ze źródeł może być potrzebna specjalna wersja Microsoft Macro Assemblera oraz system MS-DOS 2.0 lub nowszy (kompatybilny).

Próbę kompilacji GW-BASIC-a podjął się Gynvael na jednym ze swoich streamów.

Jako, ze udostępnione kody to kolejny informatyczny zabytek techniki, zachęcam do przejrzenia źródeł ;)

[dodano 2020-05-27 20:00]

Dodałem informację o próbie skompilowania GW-BASIC przez Gynvael-a na jednym z jego streamów - #107: GW-BASIC.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *