Привет, Хабравчане! Недавно я погрузился в мир старых ноутбуков и старинного железа, в том числе с Windows 95 и Pentium 1. На фоне новых обзоров на устаревшие устройства у меня возникла идея: а что если использовать современные возможности C++ 23 для разработки под эти старые системы?
Вдохновившись работой Михала, который смог скомпоновать объектные файлы с помощью AOT-компилятора CoreRT и линкера Visual C++ 2.0, я решил попробовать создать приложение, совместимое с Windows 95. Для этого я использовал Visual Studio 2026, указав компиляцию только под 32-битные системы и отключив стандартные библиотеки.
Создавая простое приложение с MessageBox, я экспортировал необходимые функции из Win32 и реализовал минимальную версию динамической памяти. Это позволило писать код с использованием современных фич, таких как модули и лямбды, сохраняя совместимость со старыми системами.
Теперь я могу продолжать свои проекты, включая разработку движка Arcanum, и делиться опытом в ретро-программировании. Это хобби приносит радость и позволяет создавать новые моды и переводы для старых игр, сохраняя дух ретро.