Win16 personality
Содержание
Win16 Personality: слой совместимости с Windows 3.x
Win16 Personality — это проект по созданию свободной открытой реализации 16-битной операционной среды Microsoft Windows 3.x. Его цель — обеспечить совместимость с Windows 3.0, Windows 3.1 и Windows 3.11 для запуска классических Win16-приложений.
Цели проекта
- Обеспечить бинарную совместимость для ряда приложений, собранных для Windows 3.1/3.11.
- Реализовать заново ключевые системные компоненты:
KERNEL.EXE,USER.EXE,GDI.EXE. - Служить исследовательской и образовательной платформой для изучения архитектуры классической Windows 3.x.
- Интегрировать среду Win16 как одну из «персоналий» в микроядерной ОС osFree, а также обеспечить возможность её работы на чистом DOS.
Текущее состояние
Проект находится на ранней стадии разработки (альфа-версия). Текущая работа сосредоточена на ядре 16-битных модулей KERNEL и USER. GDI ещё не реализован. Первая практическая веха — корректный запуск простых системных утилит, таких как WinVer, Clock и т. п.
Компоненты и приложения
Клоны приложений Windows 3.x
Также ведётся разработка клонов классических приложений Windows 3.x:
| Название | Описание | Статус |
|---|---|---|
| CALC (чистый API) | Стандартный калькулятор для базовой арифметики. | |
| CALENDAR | Настольный календарь для просмотра дат и встреч. | |
| CARDFILE | Электронная картотека для организации информации. | |
| CHARMAP (чистый API) | Утилита для просмотра и вставки специальных символов. | |
| Clipboard Viewer (чистый API) | Просмотрщик текущего содержимого буфера обмена. | Готово |
| Clock (чистый API) | Аналоговые или цифровые часы, отображающие текущее время. | Готово |
| Control Panel (чистый API) | Панель управления для настройки системных параметров и оборудования. | |
| Colors | Настройка цветов | |
| Fonts | Установка или удаление шрифтов | |
| Ports | Настройка последовательных и параллельных портов | |
| Mouse | Настройки мыши | |
| Desktop | Настройки рабочего стола | |
| Keyboard | Настройки клавиатуры | |
| Printers | Настройки принтеров | |
| International | Региональные настройки | |
| Date/Time | Дата и время | |
| Network | Конфигурация сети | |
| DRWATSON | Диагностический инструмент для сбора системной информации и ошибок. | |
| EXPAND | Утилита для распаковки файлов с дистрибутивных дисков. | Готово |
| FASTOPEN | Утилита для ускорения доступа к файлам путём кэширования каталогов. | Готово |
| MPLAYER | Media Player для воспроизведения мультимедийных файлов. | |
| MSD | Инструмент Microsoft Diagnostics для детального анализа оборудования. | |
| Notepad (чистый API) | Простой текстовый редактор для файлов в формате plain text. | Готово |
| PACKAGER | Object Packager для встраивания и связывания документов (OLE). | |
| PBRUSH (ATL) | Графический редактор Paintbrush для создания растровых изображений. | |
| PIF Editor (чистый API) | Редактор для создания файлов информации о программе (PIF) для DOS. | |
| PRINTMAN | Print Manager для заданий печати и очередей принтеров. | |
| Program Manager (чистый API) | Основная оболочка для организации приложений и документов в группы. | |
| REGEDIT | Registration Info Editor для базы данных регистрации Windows. | |
| Reversi (чистый API) | Классическая игра «Отелло» (исключена в Windows 3.1). | Готово |
| SETUP | Программа установки Windows для изменения конфигурации системы. | |
| SOL (чистый API) | Классическая карточная игра «Косынка». | |
| Sound Recorder | Записывающее устройство для воспроизведения и редактирования звуковых файлов (.WAV). | |
| System Configuration Editor (чистый API) | Редактор для изменения системных файлов (AUTOEXEC.BAT, CONFIG.SYS). | Готово |
| Task Manager (чистый API) | Менеджер для переключения между запущенными приложениями и задачами. | Готово |
| WINFILE (чистый API) | File Manager для управления файлами, каталогами и дисками. | |
| WINHELP (чистый API) | Механизм Windows Help для отображения файлов справки приложений. | |
| Minesweeper (чистый API) | Классическая игра-головоломка «Сапёр». | Готово |
| WINSHELD | Windows (Win) Shield — аналог PM Shield для Windows. Это одновременно исполняемый файл и библиотека динамической компоновки (WINSHELD.EXE и WINSMSG.DLL соответственно). Win Shield выполняет дополнительную функцию, поддерживая информацию о состоянии окон Workplace Shell для своей сессии DOS.
|
|
| Windows Version (чистый API) | Диалоговое окно, отображающее версию Windows и информацию об авторских правах. | Готово |
| WRITE | Текстовый процессор Write для создания форматированных документов. |
Основной исходный код проекта доступен в репозитории: https://github.com/osfree-project/WIN16 (osfree-project/WIN16).
Ключевые системные модули и API
В рамках повторной реализации ключевых системных модулей и интерфейсов Windows 3.x охвачены:
- BIOS API
- DOS API
- XMS API
- Task List API
- DOSX (DPMI) API
- LOGO API
- API средств захвата экрана
- API переключателя задач
- Драйвер SYSTEM
- Драйвер KEYBOARD
- Драйвер MOUSE
- Драйвер DISPLAY
- Модуль KERNEL
- Модуль GDI
- Модуль USER
- Модуль SHELL
- Модуль LZEXPAND
Связанные страницы
- Основная страница osFree
- Статья в Википедии об этом семействе ОС
| OSFree | |
|---|---|
| osFree | Архитектура • План работ • Компоненты • Используемые проекты • Экраны • FreePM • L4 • Скриншоты |
| Загрузчик | [ Последовательность загрузки: поток выполнения • изменение карты памяти ] • Загрузочный сектор • L4Ka::Kickstart |
| Personalities | Win16 personality • MVM/DOS/Win16 personality |
| Разработка | Получение исходных кодов • Сборка • Отладка • Отправка отчетов |
| API | TPCrt • FamilyAPI • Win16API • VIO API • MVM API |
| Сообщество | IRC |
| OS/2 | Presentation Manager • IFS • Петиции к IBM |