25.05.2020, Пн, 09:30, Мск , cnews, Владимир Бахур
«IBM-совместимый» ПК Compaq Portable-->
Microsoft представила в открытый доступ исходные коды интерпретатора языка программирования GW-BASIC, созданного 37 лет назад и поставлявшегося с ОС MS-DOS. В свое время на этом языке писали программы для игр и сопровождения бизнеса.
37 лет спустя
Компания Microsoft выложила в репозитории GitHub исходные тексты интерпретатора языка программирования GW-BASIC 1.0, созданного на ассемблере системы команд 16-битных процессоров Intel 8088. Исходники датируются 10 февраля 1983 г., то есть, были написаны более 37 лет назад.
Изначально интерпретатором языка GW-BASIC комплектовались поставки операционных систем MS-DOS для семейства так называемых «IBM-совместимых ПК», вплоть до выпуска MS-DOS версии 5.0 в июне 1991 г., где GW-BASIC был заменен на более прогрессивный по тем временам QBasic.
Код интерпретатора GW-BASIC представлен по лицензии MIT (лицензия открытого ПО Массачусетского технологического института, совместима с GPL/DFSG и одобрена OSI – прим. CNews), что подразумевает возможность свободного безвозмездного изменения, распространения и использования кода в своих программах. Тем не менее, в репозитории код представлен «только для чтения», и запросы на его изменение в основном репозитории приниматься не будут, поскольку код «представлен для исторической справки», отмечено в примечании Microsoft.
В марте 2014 г. CNews сообщил о том, что Microsoft передала исходные коды операционной системы MS-DOS 1.1 (1982 г.) и MS-DOS 2.0 (1983 г.), написанных на ассемблере для процессоров Intel 8086, Калифорнийскому музею компьютерной истории. Исходники можно было безвозмездно загрузить с сайта музея.
В июне 2018 г. CNews сообщил о том, что Microsoft приобрела GitHub, крупнейший в мире онлайн-сервис для хранения и распространения исходного кода ИТ-проектов, за $7,5 млрд. Услугами репозитория пользуются более 28 млн разработчиков ПО, которые хранят в нем более 80 млн исходных кодов своих программ.
В сентябре 2018 г. исходники MS-DOS 1.1 и 2.0 появились в репозитории GitHub.
Язык программирования GW-BASIC
Язык программирования GW-BASIC является одним из вариантов языка BASIC (Beginner’s All-purpose Symbolic Instruction Code), разработанным компанией Microsoft на базе языка IBM BASICA (разработан в Microsoft в 1991 г., использовался в ранних ПК IBM для загрузки IBM PC DOS из запаянных в материнскую плату чипов ПЗУ).
На языке GW-BASIC писали несложные игры, деловые приложения и подобные программы. Благодаря поставке в составе MS-DOS, GW-BASIC также был одним из наиболее простых и недороги способов приобщиться к основам программирования.
Первые версии ОС Microsoft MS-DOS-->
Несмотря на полную функциональную идентичность с BASICA, интерпретатор языка GW-BASIC обладал полной автономностью и не требовал для загрузки специальных ПЗУ, поскольку поставлялся в составе ОС MS-DOS. Microsoft также продавала отдельно совместимый с GW-BASIC компилятор BASCOM, для создания более быстрых программ.
Язык GW-BASIC обладал интегрированной средой разработки на основе командной строки по образу Dartmouth BASIC, позволяя редактировать любую строку на экране перемещением курсора. Все строки программы нумеровались, а ненумерованные строки являлись командами прямого режима для немедленного исполнения.
GW-BASIC поддерживал ряд устройств ввода, таких как джойстик и световое перо, воспроизводил простую музыку с помощью оператора PLAY со строки нот, а также умел считывать и записывать файлы и COM-порты.
Ключевые возможности GW-BASIC были портированы из MBASIC 5.x, но впоследствии были дополнены рядом функций, поддерживаемых аппаратной платформой IBM PC, таких как числа двойной точности с математическими и тригонометрическими функциями, а также команды звука, графики и памяти.
Самая первая версия GW-BASIC, представленная нынче в репозитории GitHub, поставлялась с ОС DOS 1.13 в составе «IBM-совместимых» ПК Compaq Portable с 1983 г. Более поздняя версия GW-BASIC 3.20, представленная в 1986 г., получила поддержку графики EGA.
До поддержки изображения с качеством VGA в GW-BASIC дело так и не дошло в связи с тем, что с выпуском MS-DOS 5.0 место GW-BASIC занял QBasic, который представлял собой часть интерпретатора отдельного компилятора QuickBASIC.
По поводу этимологии названия GW-BASIC существует несколько легенд. Так, одна из них утверждает, что в названии языка увековечены инициалы Грега Уиттена (Greg Whitten), одного из первых сотрудников Microsoft, работавшего над стандартизацией компиляторов семейства BASIC.
Среди других версий – инициалы ведущих разработчиков, Гейтса и Уиттена (Gates-Whitten), прозвище Gee-Whiz, или «Графика и Windows» (Graphics and Windows) – за поддержку графических команд, джойстика, мыши и светового пера, и даже «Гейтс, Уильям» (Gates, William), в честь занимавшего в то время пост президента Microsoft Билла Гейтса.
Комментариев нет:
Отправить комментарий