Microsoft представила эмулятор ретрокомпьютера Altair 8800 на операционной системе для работы с облаком Azure Sphere.
История
Altair 8800 был построен на чипе Intel 8080, который стал вторым 8-битным микропроцессором произведенным Intel в 1974 году. Микропроцессор обладает тактовой частотой микропроцессора 2 МГц и 16-битной адресной шиной для доступа к огромным на то время 64 КБ ОЗУ.
Первая версия Altair 8800 программировалась с помощью переключателей, затем появились устройства чтения с бумажной ленты, возможность подключения монитора и клавиатуры, а также устройство хранения на гибких дисках. Языком программирования был Altair BASIC, написанный Биллом Гейтсом и Полом Алленом.
Altair BASIC занимает особое место в истории Microsoft, поскольку он сыграл важную роль в создании компании.
Архитектура решения
Azure Sphere – это настраиваемая операционная система на базе Linux, созданная Microsoft для разработки приложений Интернета вещей, включая приложения высокого уровня и приложения с поддержкой реального времени. Это первая операционная система с ядром Linux, которую Microsoft представила публично.
Эмулятор Altair 8800 с поддержкой облака, работающий в Azure Sphere, унаследовал все достоинства безопасности платформы. Цель проекта заключается в том, чтобы раздвинуть границы Azure Sphere, используя все возможности платформ для создания релевантных шаблонов, применимых для большего количества повседневных сценариев Интернета вещей.
Эмулятор работает на плате Avnet Azure Sphere Starter Kit. Также есть возможность создать собственную переднюю панель Altair 8800.
Для аутентичного опыта работы можно использовать платы MikroE Click вместе с панелью управления MikroE Altair 8800 Retro.
В Azure Sphere работает эмулятор Intel 8080, а поверх него размещены слои Altair BASIC и CP/M. Исходный код на Assembler, BASIC и C можно редактировать с помощью текстового редактора Word-Master.
Altair 8800 интегрирован с Azure IoT Central, статическими веб-приложениями, виртуальной машиной Azure с брокером Mosquitto MQTT и удаленной виртуальной файловой системой Altair 8800.
Решение подключено с помощью сервисов MQTT. Терминал ввода-вывода эмулятора процессора Intel 8080 перенаправляется через MQTT, как и файловая система виртуального диска. Через браузер MQTT «Веб-терминал» при наличии учетных данных можно получить безопасный доступ к эмулятору Altair из любой точки мира.
Эмулятор в облаке
Эмулятор Altair 8800 работает во всех трех ядрах пользовательских приложений Azure Sphere. На Cortex A7 работает эмулятор Altair, а также стек связи MQTT и Azure IoT C SDK.
На одном из ядер реального времени Cortex M4 работает кэш виртуального диска «Least Recently Used», который значительно улучшает производительность файловой системы удаленного виртуального диска. Также он может быть шаблоном, применимым к большему количеству повседневных приложений IoT.
На втором ядре M4 запускается приложение «Датчик окружающей среды», которое в режиме реального времени показывает информацию о температуре и давлении, а приложения Altair BASIC могут считать эти данные. Таким образом, эмулятор не только обратно совместим, но и ориентирован на будущее и имеет доступ к датчикам Интернета вещей, о которых в момент создания Altair 8800 даже не думали.
Проект эмулятора с открытым исходным кодом, дизайн программного и аппаратного обеспечения размещен на GitHub.