Sprinter Commander
Функциональный аналог классического двухпанельного Commander для Sprinter Sp2000. Volkov Commander 4.05/4.99 и Dos Navigator используются как поведенческие и архитектурные референсы; проект не является переносом их DOS-кода.
Текущее состояние: PoC 0.1 (этапы P1–P5) пройден в MAME / BIOS 3.06 /
DSS 1.71.57; аппаратный smoke-тест остаётся внешним контрольным пунктом.
Начат этап 0.2: готовы независимые для каждой панели сортировки по имени,
расширению, размеру и дате/времени в обоих направлениях, выбор записей через
Insert, * и маски +/-, создание каталога по F7 и локальное
переименование файла/каталога по F6 без overwrite, однообъектный F8 и
групповой рекурсивный F8 для выбранных файлов и каталогов, а также рекурсивный
F5 для выбранных файлов и каталогов. F5 сохраняет FAT date/time и атрибуты
R/H/S/A обычных файлов и поддерживает conflict-policy
overwrite/skip/rename, включая overwrite all/skip all, отдельную
защиту readonly и backup/rollback. Обход использует динамическую EMM-очередь.
Встроенный профиль имён уже различает белые каталоги, жёлтые .EXE и
светло-серые остальные файлы; загрузка пользовательских цветовых правил
остаётся задачей 1.0.
Командер
сканирует, хранит и сортирует каталоги, показывает явную виртуальную запись
предела DSS 1.71, безопасно копирует один файл через выделенную EMM-страницу
W3 и запускает .EXE с восстановлением режима, палитры, CWD и обеих панелей.
Сборка
Из этого каталога:
make
Результат: build/sprcmd.exe, конфигурация
--memory big --safe --max-allocs 3000. Значение ALLOCS=3000 принято как
исходное для Commander и всех его проб; при диагностике его можно переопределить
явно, например make ALLOCS=4000.
Основные тесты используют быстрый HDD D::
make hdd # только Commander
make hdd-stress # большой каталог P3
make hdd-copy # набор успех/overwrite/cancel/zero для P4.1
make hdd-exec # запуск child/restore/error для P4.2
make hdd-p5 # 20 copy, граничные размеры, 100 refresh, lifecycle
make hdd-p5-enospc # реальный disk-full и cleanup temp
make hdd-p5-panels # точные границы панели 27/28 записей
make hdd-p5-copy-faults # детерминированная матрица ошибок copy/EXEC
make hdd-p5-viewer # запуск реального mdview2 и восстановление Commander
make hdd-p5-media # снятие/возврат hard2 во время F5
make hdd-p6-sort # target-матрица и UI-сценарий сортировок 0.2
make hdd-p7-select # выбор Insert/*, статистика и EMM cleanup
make hdd-p8-masks # тот же расширенный образ: редактор и маски +/−
make hdd-p9-mkdir # validator DOS 8.3, mkdir/error/CWD и UI F7
make hdd-p10-rename # file/dir rename, no-overwrite, CWD и UI F6
make hdd-p11-delete # confirm/cancel, file/empty-dir, guards и UI F8
make hdd-p12-group-copy # legacy group fixture; current F5 also copies selected dirs
make hdd-p13-group-delete # legacy file-only group F8 regression
make hdd-p14-default-colors # built-in dir/EXE/file colours и restore палитры
make hdd-p15-tree-copy # recursive current directory, depth=16 и repeat guard
make hdd-p15-tree-cancel # Esc в 4-МБ файле и cleanup temp/traversal page
make hdd-p15-tree-self # target-inside-source guard до mutation
make hdd-p16-group-tree-copy # selected files + multiple directory roots
make hdd-p17-tree-delete # recursive group F8, depth=12, cancel confirmation
make hdd-p17-tree-delete-cancel # Esc после начала recursive group F8
make hdd-p18-metadata # exact FAT date/time + R/H/S/A после F5
make hdd-p19-overwrite # target backup/commit/rollback matrix
make hdd-p19-policy # UI overwrite/skip/rename/all/readonly/cancel
make floppy сохранён для smoke-проверки совместимости с FDD и не запускает
эмулятор. Подробнее: политика тестовых носителей.
Документы
- требования PoC;
- архитектура;
- roadmap;
- клавиши и команды;
- результаты платформенных проб P1;
- экранный backend и границы BIOS API;
- результаты coordinate-screen probe P2.1;
- результаты системной палитры P2.2;
- результаты двухпанельного skeleton P2;
- результаты файловых панелей P3;
- результаты копирования P4.1;
- результаты запуска EXE P4.2;
- результаты стабилизации P5;
- результаты сортировок 0.2/P6;
- результаты выбора записей 0.2/P7;
- результаты выбора по маске 0.2/P8;
- результаты создания каталога 0.2/P9;
- результаты локального rename 0.2/P10;
- результаты однообъектного delete 0.2/P11;
- результаты группового F5 0.2/P12;
- результаты группового F8 0.2/P13;
- результаты стандартных цветов P14;
- результаты рекурсивного F5/P15;
- результаты рекурсивного group F5/P16;
- результаты рекурсивного group F8/P17;
- результаты сохранения метаданных F5/P18;
- результаты conflict-policy F5/P19;
- направление развития UI по образцу VC;
- инструкция и ограничения PoC 0.1;
- носители интеграционных тестов;
- предел больших каталогов DSS и стратегия Commander.
Экран выводится системными координатными функциями ESTEX/BIOS без оконных дескрипторов и без прямой адресации VRAM. Системные вызовы палитры разрешены; их save/set/readback/restore и многоцветная сцена подтверждены пробой P2.2.