Volkov: добавить Sprinter Commander

Реализовать двухпанельный Commander от платформенного PoC до этапов P6-P20: EMM-каталог, сортировку и выбор, операции с файлами и деревьями, транзакционное копирование, метаданные, политику конфликтов и предварительную проверку свободного места.

Добавить проектную документацию, HDD/MAME-сценарии и проверенные артефакты. Расширить libc операцией bank_write_page, исправлением режима O_RDONLY и связанными регрессионными проверками.
This commit is contained in:
2026-09-10 10:45:30 +03:00
parent 05bcd8197e
commit 8e389c03f8
870 changed files with 21310 additions and 25 deletions
@@ -0,0 +1,62 @@
# Sprinter Commander: стандартные цвета имён P14
Дата: 9 сентября 2026 года.
Статус: `PASS` в MAME 0.288 / BIOS 3.06 / DSS 1.71.57 на HDD `D:`.
## Реализованный профиль без конфигурации
Renderer выбирает атрибут обычной строки по типу записи:
- каталоги и синтетическая `..` — белые;
- файлы с точным регистронезависимым расширением `.EXE` — жёлтые;
- остальные файлы, в том числе без расширения, — светло-серые;
- виртуальный маркер предела DSS остаётся красным;
- cursor активной панели сохраняет отдельную контрастную cyan-подсветку.
Цвет применяется ко всей строке записи, поэтому имя, размер и атрибуты не
расходятся визуально. `SC_ATTR_DIR` и `SC_ATTR_EXE` переиспользуют уже
сохранённые палитровые атрибуты frame/title; новый атрибут потребовался только
для обычного файла.
Настраиваемые правила по расширениям и файл конфигурации ещё не реализованы.
Текущий профиль является обязательным fallback при отсутствии такого файла.
## Проверка
Отдельный HDD содержит `SUBDIR`, `APP.EXE`, `ARCHIVE.ZIP`, `README.TXT` и
`NOEXT`. [Контрольный кадр](../artifacts/mame-p14/default-colors/file-types.png)
показывает все три класса одновременно в активной и passive панелях. После
F10 [палитра DSS восстановлена](../artifacts/mame-p14/default-colors/clean-dss-palette.png).
Внешняя проверка извлечённого CHD подтверждает, что визуальный тест не изменил
fixture:
```text
PASS: colour fixture preserved.
```
## Компоновка и размер
Конфигурация `--memory big --safe --max-allocs 3000`:
| Область | После P13 | После P14 | Изменение |
|---|---:|---:|---:|
| `_CODE` W2 | 9496 | 9503 | +7 |
| данные W2 | 3256 | 3268 | +12 |
| свободная куча W2 | 2096 | 2077 | -19 |
| BANK1 | 6477 | 6477 | 0 |
| BANK2 | 13267 | 13388 | +121 |
| `SPRCMD.EXE` | 43073 | 43080 | +7 |
Двенадцать байт DATA/BSS — сохранённые RGB трёх компонент для четырёх
палитровых планов нового атрибута. В BANK2 остаётся 2996 байт; межбанковый
аудит чист.
## Воспроизведение
```sh
make hdd-p14-default-colors ALLOCS=3000
tests/run_mame_hdd.sh build/hdd/p14_default_colors.chd \
tests/mame_p14_default_colors.lua artifacts/mame-p14/local 36
tests/check_p14_default_colors_hdd.sh build/hdd/p14_default_colors.chd
```