← На главную

Разработчик перевёл Windows CE 2.11 на N64 и добавил поддержку мыши

15.05.2026 19:23 · hackernews

Разработчик реализовал хобби-проект, перенося Microsoft Windows CE 2.11 на реальный аппаратный носитель Nintendo 64. Никакой официальной версии от Microsoft для этой консоли не существует, поэтому все компоненты ниже стандартного ядра nk.lib созданы вручную. Кастомный HAL инициализирует систему, загружает десктоп GWES 2.11 и монтирует карту EverDrive-64 X7 под виртуальной путью \SDCard. Проект использует встроенное в консоль аудиооборудование N64 AI для звуков через стандартный стек волн CE, а контроллер обрабатывается как мышь с левым и правым кликами.

Основой системы стала неотредактированная библиотека nk.lib, отвечающая за диспетчерирование, планирование и TLB. Вокруг неё загружаются стандартные модули пользовательского режима coredll.dll, gwes.exe, filesys.exe, device.exe и shell.exe. Автор написал собственный драйвер вывода изображения, поддерживающий RDP-ускорение заливки и корректно отображающий курсор через композитор. Для работы с клавиатурой и мышью реализовано ПО на базе SI Joybus, способное декодировать как оригинальный N64 контроллер, так и официальную мышь.

Файловая система SD-карты основана на FatFS, но заменена кастомный драйвер карт на базе PI-DMA для обхода аппаратных артефактов реального оборудования. Аудио-подсистема работает в режиме опроса вместо прерываний, чтобы избежать блокировки системной шины. В репозиторий включен маленький файл commctrl.dll, которого не было в оригинальном SDK, поэтому теперь корректно работают элементы управления со списком прокрутки. Шелл представляет собой интерфейс в стиле Win9x с панелью задач и браузером файлов. Для демонстрации возможностей RDP-ускорения запущен тест куба с растеризацией треугольников.

Полный образ n64ce.z64 весит около 3,5 МБ и загружается напрямую через карту. Сборка занимает около 30 секунд, но требует установки внешних компонентов: платформы разработчика Windows CE 2.11, инструментальной цепочки libdragon и самой карты EverDrive. Процесс компиляции проходит под Wine на хост-компьютере. Важно помнить, что исходный код доступен по лицензии MIT, но саму ROM нельзя распространять, так как она содержит бинарные файлы SDK, защищенные авторским правом Microsoft. Поддерживаются только приложения CE 2.11, не требующие специфического сетевого оборудования или GAPI.

Читать оригинал →