alexandClaude Sonnet 5 461f44dd14 docs: fix README - keyboard controls don't work for .AVI
show_avi() (src/main.c) never returns: its streaming loop is while (sz)
but sz is never decremented, so main_start()'s key-poll loop (which runs
after show_*() returns) is never reached for AVI files. PgDn/PgUp/Esc do
work for JPG/PNG/DLS/DXP, which return immediately. Documenting as a known
limitation rather than fixing it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-07 12:48:59 +03:00

FT812 Viewer

Плагин для Wild Commander (ZX Evolution / TS-Conf), показывающий изображения и видео через графический чип FT812 (EVE) платы.

⚠️ Это переработанная версия. Стандартный (оригинальный) ftview дополнительно сам регистрируется на расширения .XM и .XMZ и проигрывает их через ESP32-сопроцессор. Из этой версии поддержка .XM и .XMZ убрана: воспроизведение модулей вынесено в отдельный плагин xmplay, а у Wild Commander таблица "расширение → плагин" статическая и зашивается в заголовок при сборке — если поставить xmplay вместе со стандартным (не переработанным) ftview, оба будут претендовать на одни и те же расширения и конфликтовать. Ставить эту версию ftview вместе с xmplay, не стандартную.

Требования

  • ZX Evolution / TS-Conf с графическим чипом FT812 (EVE)
  • Wild Commander

Возможности

  • .JPG, .PNG — просмотр изображений
  • .DLS — воспроизведение "сырого" display list FT812 (уже скомпилированная команда отрисовки, без разбора формата)
  • .DXP — свой формат растрового изображения (заголовок с сигнатурой, типом и размерами + данные)
  • .AVI — воспроизведение видео через встроенный видеодекодер FT812 (MediaFifo, полноэкранно, со звуком)

Управление

Работает для .JPG/.PNG/.DLS/.DXP:

Клавиша Действие
PgDn Следующий файл
PgUp Предыдущий файл
Esc Выйти

⚠️ Для .AVI управление не работает. show_avi() (src/main.c) запускает потоковую передачу видео в цикле while (sz), где sz нигде не уменьшается — функция не возвращает управление, и общий цикл опроса клавиш (в main_start(), уже после вызова show_*()) для AVI просто не достигается. Воспроизведение AVI зависает без возможности выйти клавиатурой. Известное ограничение исходного кода, не исправлено.

Установка

Скопировать ftview.wmf в каталог плагинов Wild Commander. Плагин сам регистрируется на .JPG, .PNG, .DLS, .DXP и .AVI.

Сборка

Нужен SDCC версии 4.0.0 (зафиксирована в build.bat) и hex2bin — оба есть в тулчейне SDK ZX Evolution. Версия SDCC важна: собранные другой версией lib/ft812/lib/tsconf/lib/sdk дают несовместимый ABI (разная конвенция sdcccall) без явной ошибки сборки — плагин просто виснет или ведёт себя не так на реальном железе.

build.bat

Результат — ftview.wmf в корне проекта.

Статус

Проверено на реальном железе: просмотр JPG/PNG, воспроизведение DLS, навигация по файлам (PgDn/PgUp/Esc). Известное ограничение — см. предупреждение про .AVI выше.

S
Description
ftview для использования совместно с xmplayer
Readme
48 KiB
Languages
C 90.4%
Batchfile 8.6%
Assembly 1%