Microsoft Word 1.1a из 1990 года портировали на Windows x64 без эмуляции

Разработчик Джастин Маршалл перенёс Word for Windows 1.1a на современные 64-битные системы Windows. Причём речь не об эмуляторе со старой Windows внутри и не о программе, заново написанной по образцу оригинала. Порт собирается из исходного кода Microsoft Word начала 1990-х годов и работает как нативное x64-приложение.
Исходный код Word for Windows 1.1a был опубликован Computer History Museum в 2014 году с разрешения Microsoft и доступен для некоммерческого использования. Маршалл сохранил оригинальный код на языке C и ресурсы программы, заменив компоненты, которые невозможно напрямую использовать в современной 64-битной среде.
Главная сложность заключалась в переходе от Win16 к современным механизмам Win32. Зависимые от 16-битной Windows части пришлось адаптировать под актуальные системные интерфейсы, а старые механизмы сегментированной памяти — заменить совместимыми с x64 решениями.
Для сборки проекта используется CMake. Старые модули на 16-битном ассемблере при этом не удалены: они остаются в дереве исходного кода как исторический материал и ориентир. Однако в готовую версию для архитектуры AMD64 эти модули не компилируются — необходимая логика перенесена в совместимый с x64 код.
По словам Маршалла, проект обходится без эмуляции, виртуальной машины и полной переимплементации Word. Оригинальные команды, диалоговые окна, курсоры, растровые изображения и другие ресурсы Word сохраняются или пересобираются современными инструментами. В результате запускается именно адаптированное оригинальное приложение, а не современный редактор с интерфейсом под старый Word.
Word for Windows впервые появился в 1989 году. Версия 1.1a вышла в 1990-м, уже в эпоху Windows 3.0. Именно Windows-версия Word помогла Microsoft серьёзно потеснить WordPerfect и со временем превратить Word в один из главных текстовых процессоров для ПК.
Контраст с современным Word особенно заметен сейчас, когда Microsoft активно развивает Copilot в приложениях Microsoft 365. Однако связывать проект Маршалла с протестом против ИИ оснований нет: сам разработчик подобных мотивов не заявляет. Для него это прежде всего технический и исследовательский проект по сохранению старого программного обеспечения.
Порт уже включает автоматические тесты набора текста, выделения, форматирования, диалоговых окон и сохранения документов. Готового установщика для обычного пользователя при этом нет: проект необходимо самостоятельно собрать из исходников. Для этого нужны 64-битная Windows, Visual Studio 2022, Windows 10 или Windows 11 SDK, CMake 3.25 или новее и PowerShell.
Проект показывает, насколько далеко можно продлить жизнь старого программного обеспечения. Код, создававшийся для 16-битной Windows более трёх десятилетий назад, удалось превратить в нативное 64-битное приложение, сохранив значительную часть оригинальной архитектуры и пользовательского интерфейса.
Источники: GitHub проекта, Computer History Museum.