125 lines
6.0 KiB
Markdown
125 lines
6.0 KiB
Markdown
# Sprinter Video Player (SVP)
|
||
|
||
**Версия:** v0.15.035 Alpha
|
||
**Автор:** kostya261
|
||
**Дата:** 09.07.2026
|
||
|
||
## Описание
|
||
|
||
Sprinter Video Player — это проигрыватель видео для компьютера **Sprinter**, написанный на ассемблере Z80. Плеер предназначен для воспроизведения файлов в специализированном формате `.SPR`. Программа работает с видеопотоком и звуком, используя аппаратные возможности платформы Sprinter.
|
||
|
||
> **Важно:** Это **альфа-версия**. Возможны ошибки и нестабильная работа.
|
||
|
||
---
|
||
|
||
## Системные требования
|
||
|
||
- Компьютер **Sprinter** (или совместимый).
|
||
- Процессор Z80.
|
||
- Операционная система **DOS** или совместимая с DSS-вызовами.
|
||
- Достаточно оперативной памяти для загрузки видеофайлов.
|
||
- Графический режим **320x256** (режим #81) или **640x256** (#82).
|
||
- **Covox-Blaster** (или совместимый) для воспроизведения звука.
|
||
|
||
---
|
||
|
||
## Формат видеофайлов (.SPR)
|
||
|
||
Плеер воспроизводит файлы в собственном формате `.SPR`. Структура файла:
|
||
|
||
### Заголовок (HEADER_SIZE = 1045 байт)
|
||
|
||
| Смещение | Размер | Описание |
|
||
|----------|--------|----------|
|
||
| 0-2 | 3 | Сигнатура: "SPR" |
|
||
| 3-4 | 2 | Ширина кадра |
|
||
| 5 | 1 | Высота кадра |
|
||
| 6 | 1 | Отступ по Y |
|
||
| 7 | 1 | Отступ по X |
|
||
| 8 | 1 | FPS |
|
||
| 9 | 1 | Код частоты звука |
|
||
| 10-1033 | 1024 | Палитра (B, G, R, 0 — 256 цветов) |
|
||
| 1034-1037| 4 | Смещение до аудиоданных (32 бита) |
|
||
| 1038-1039| 2 | Размер 1/5 части кадра |
|
||
| 1040-1041| 2 | Размер таблицы смещений (MFP) |
|
||
| 1042 | 1 | Количество страниц под таблицу MFP |
|
||
| 1043-1044| 2 | Размер последней страницы MFP |
|
||
|
||
### Данные
|
||
- После заголовка идёт **таблица смещений (MFP)**, которая содержит информацию о расположении данных в файле.
|
||
- Далее следуют **видеоданные**, разбитые на 5 частей (по частям кадра).
|
||
- За видеоданными — **аудиоданные** (формат — моно, 8 бит, частота зависит от кода).
|
||
|
||
---
|
||
|
||
## Управление
|
||
|
||
| Клавиша | Действие |
|
||
|-----------------|----------|
|
||
| **ESC** (код #76) | Выход из плеера |
|
||
|
||
- Проигрывание начинается автоматически после запуска.
|
||
- Для выхода достаточно нажать ESC в любой момент.
|
||
- А в целом пока любая клавиша...
|
||
|
||
## Запуск
|
||
|
||
1. Поместите видеофайл (`.SPR`) в ту же директорию, что и `player.exe`, или укажите полный путь.
|
||
2. Запустите плеер из командной строки:
|
||
|
||
|
||
player.exe <путь_к_файлу.spr>
|
||
---
|
||
Пример:
|
||
|
||
player.exe video/my_movie.spr
|
||
|
||
---
|
||
|
||
## Технические особенности
|
||
|
||
Видео отображается в графическом режиме 320x256 с использованием палитры 256 цветов.
|
||
|
||
Видеопоток разделён на 5 блоков, которые загружаются и отображаются частями для оптимизации скорости.
|
||
|
||
Звук воспроизводится через порт #4F (Covox-Blaster) с использованием прерываний.
|
||
|
||
Поддерживается работа с FastRAM.
|
||
(Ну это было в планах, но пока забил, так как машина на которой тестил, у нее FastRam не работает)
|
||
|
||
Плеер использует собственный механизм таблицы смещений (MFP) для навигации по кадрам.
|
||
|
||
## Известные ограничения
|
||
Только альфа-версия; возможны сбои при воспроизведении больших файлов.
|
||
|
||
Не поддерживается изменение громкости или перемотка.
|
||
|
||
Требуется корректная структура .SPR-файла; неподдерживаемые форматы приведут к ошибке.
|
||
|
||
Звук воспроизводится с фиксированной частотой
|
||
(пока это 11 кГц, в дальнейшем нужно сделать автоматическое определение из заголовка файла.
|
||
Возможность заложена, реализации нет).
|
||
|
||
## Сборка из исходников
|
||
Для сборки потребуется:
|
||
|
||
SjASMPlus (или совместимый ассемблер).
|
||
|
||
Компиляция выполняется с помощью скрипта make3.bat.
|
||
|
||
bash
|
||
make3.bat
|
||
Результат — player.exe.
|
||
|
||
## Благодарности
|
||
За использование DSS и BIOS-вызовов Sprinter.
|
||
Вдохновение от сообщества ZX Spectrum / Sprinter.
|
||
|
||
## Контакты
|
||
Автор: kostya261
|
||
Дата: 09.07.2026
|
||
Версия: 0.15.035 Alpha
|
||
|
||
## Лицензия
|
||
Данный проект распространяется в ознакомительных целях. Автор не несёт ответственности за возможные проблемы при использовании.
|