# Reference materials Положи сюда оригинальную документацию Sprinter / ESTEX. Любые форматы — PDF, TXT, MD, .h / .asm файлы — годятся. Перед написанием кода нужно сверить с этими источниками: ## Что особенно полезно 1. **Спецификация формата .EXE (ESTEX SprintEXE)** - Заголовок 512 байт, поля `load`, `start`, `stack`, `offset`, `loader` - Любые упоминания "loader-секции" и multi-page загрузки - Что находится в зарезервированных полях `reserv1`, `reserv2`, `res[490]` 2. **Карта портов и аппаратной паджинации** - Точная битовая раскладка портов **0x82, 0xA2, 0xC2, 0xE2** (page select для окон 0-3) - Возможные служебные биты: write-protect, video overlay, ROM mapping - Номера физических страниц видеопамяти — соответствие EMM-номеров (0x50..0x5F) и hardware page numbers 3. **ESTEX API** - Полный список функций RST #10 (особенно файловые и memory management) - Соглашение о возврате ошибок (CF=1?, регистр-код?) - BIOS RST #08 функции (особенно EMM_FN0..EMM_FN7 — менеджер памяти) 4. **Видеорежимы** - Режимы 320×256×256, 640×256×16, текст 80×32 — как маппится экранная память, какие страницы используются - Адрес VRAM в каждом режиме (если она вообще попадает в адресное пространство CPU) - Регистры выбора видеостраницы и активной палитры 5. **Прерывания** - IM2 / IM1 / NMI семантика на Sprinter - Источники прерываний (VBL? timer? keyboard?) - Как ESTEX устанавливает таблицу IM2 и можно ли её переопределить ## Имена файлов Можно как угодно — но если у файла есть осмысленное оригинальное имя, лучше оставить (например `estex-api.txt`, `sprinter-ports.pdf`).