Lotus 1-2-3 портирован для Linux
Исследователь безопасности Тэвис Орманди ради интереса портировал для работы в Linux табличный процессор Lotus 1-2-3, выпущенный в 1988 году, за три года до появления самого Linux.
Порт выполнен на основе переработки исполняемых файлов для UNIX, найденных в архиве с варезом на одной из BBS. Работа интересна тем, что портирование выполнено на уровне машинных кодов и динамического связывания без использования эмуляторов или виртуальных машин. В итоге получен исполняемый файл, способный запускаться в Linux без лишних прослоек. Инструментарий для адаптации имеющихся в открытом доступе исполняемых файлов Lotus 1-2-3 для запуска в Linux опубликован на GitHub.
При портировании выполнена адаптация к интерфейсу системных вызовов Linux, обеспечено перенаправление вызовов в glibc, произведена замена несовместимых функций и интегрирован альтернативный драйвер для вывода в терминал. В собственный экземпляр также добавлен обход проверки лицензии, но Тэвис владеет коробочной копией Lotus 1-2-3 для MS-DOS и имеет законное право на использование продукта.
https://www.youtube.com/watch?v=hMUhIg9B_So