SprPoP: README для игрока и экран Controls в две колонки

README, который едет НА ДИСК рядом с программой, в двух версиях: README.TXT
(английский) и README.RUS (русский).  Краткое описание, запуск, полная
раскладка управления, читы, файлы игры, чего не хватает против оригинала,
благодарности.

Русский обязан быть в CP866 — DSS и местные просмотрщики читают именно её,
UTF-8 показался бы кракозябрами.  Исходники лежат в dist/ как UTF-8 (чтобы
читались в репозитории), перекодировка и CRLF делаются правилом Makefile.
ПОРЯДОК В КОНВЕЙЕРЕ ВАЖЕН: sed ставит CRLF ДО iconv — BSD sed в UTF-8
локали отказывается работать с байтами CP866 («RE error: illegal byte
sequence»), а с валидным UTF-8 работает.  iconv БЕЗ -c намеренно: потеря
символа должна ломать сборку, а не молча портить текст.

ЭКРАН CONTROLS переписан в две колонки.  В одну раскладка больше не
помещалась: после фаз A-C клавиш стало вдвое больше, а по высоте есть
только 200 точек вместе с заголовком.  Слева игра (бег, лазание, бой),
справа служебное и читы; высота блока считается по ДЛИННОЙ колонке.
Строка «IN A FIGHT» — заголовок, а не клавиша: ниже неё те же стрелки и
Shift означают другое, и без разделителя список читался бы противоречиво.

Заодно экран перестал врать: там до сих пор висели P, I, U и F7/F8 —
клавиши, переназначенные ещё в фазе A.

Проверено в MAME: Backspace открывает меню, Settings -> Show key bindings
показывает обе колонки целиком.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-27 15:50:59 +03:00
parent 659071838d
commit 6cc8611d03
6 changed files with 620 additions and 32 deletions
+130
View File
@@ -0,0 +1,130 @@
===========================================================================
SprPoP -- Prince of Persia для Sprinter Sp2000
===========================================================================
Порт игры Prince of Persia Джордана Мехнера (1989) на Sprinter Sp2000.
Графика взята из VGA-версии для MS-DOS, режим 320x256 с палитрой на 256
цветов; музыка и звуковые эффекты - оригинальные оцифровки, играются через
канал CBL. В игре все четырнадцать уровней, заставка, экраны истории,
вступление с принцессой и Джафаром, финал и таблица рекордов.
ЗАПУСК
---------------------------------------------------------------------------
Из командной строки DSS, на том диске, где лежит игра:
sprpop
Рядом с программой должны лежать её каталоги с данными:
BG\ тайлы фона KID\ принц
GUARD\ стражи SKEL\ скелет
VIZIER\ Джафар SHADOW\ тень
SND\ звуковые эффекты MUS\ музыка
FONT\ шрифт TITLE\ заставка
PV\ история и вступление LEVELS\ четырнадцать уровней
Без какого-нибудь каталога игра всё равно запустится, но то, что в нём
лежало, окажется беззвучным или невидимым.
УПРАВЛЕНИЕ
---------------------------------------------------------------------------
Бег и лазание
Влево / Вправо повернуться или бежать
Вверх прыжок или подтянуться
Вниз присесть или спуститься
Вниз + Влево/Вправо прыжок на месте
Shift подобрать предмет
Shift + Влево/Вправо осторожный шаг
Home или Вверх+Влево прыжок влево
PgUp или Вверх+Вправо прыжок вправо
Вверх на бегу прыжок с разбега
Shift в падении зацепиться за карниз
Бой на мечах
Влево / Вправо наступать или отступать
Shift удар
Вверх защита
Вниз убрать меч
(Shift достаёт его снова)
По ходу игры
Backspace или Esc пауза и меню
Пробел сколько осталось времени
T держать таймер на экране
F6 быстрое сохранение
F9 быстрая загрузка
Ctrl+A начать уровень заново
Ctrl+R вернуться к заставке
Ctrl+S звук вкл / выкл
Ctrl+M музыка вкл / выкл
Ctrl+V показать версию сборки
Ctrl+Q или F10 выход
F10 работает везде, в том числе во время заставки. Любая другая клавиша на
заставке или на экранах истории пропускает их и начинает игру.
ЧИТЫ
---------------------------------------------------------------------------
Читы оригинала; в этой сборке они включены по умолчанию. Выключить можно на
экране настроек.
Shift+L следующий уровень
+ / - на минуту больше / меньше
K убить стража
Shift+I перевернуть экран
Shift+W медленное падение
Shift+S вернуть одну единицу здоровья
Shift+T прибавить здоровья (до десяти)
[ / ] подвинуть принца на пиксель
Двух читов оригинала пока нет: R (воскресить принца) и H / J / U / N вместе
с Ctrl+B (посмотреть соседнюю комнату).
Отладочные клавиши этого порта, которых в оригинале нет вовсе. Все они под
Ctrl, чтобы не занимать простые буквы из раскладки выше.
Ctrl+I бессмертие: выкл / в бою / почти во всём
Ctrl+P режим скорости
Ctrl+F остановить кадр и снова пустить
Ctrl+D отладочная строка: уровень, комната, скорость, звук
Ctrl++ / Ctrl+- перейти в следующую / предыдущую комнату по номеру
ФАЙЛЫ, КОТОРЫЕ СОЗДАЁТ ИГРА
---------------------------------------------------------------------------
POP.CFG настройки
POP.SAV быстрое сохранение, POP.BAK - предыдущее
POP.HOF таблица рекордов
Все они появляются рядом с программой, и любой можно удалить - игра просто
начнёт со значений по умолчанию.
ЧТО ЕЩЁ НЕ ГОТОВО
---------------------------------------------------------------------------
Все четырнадцать уровней пройдены. Порт продолжает развиваться, так что
шероховатости ещё встречаются; те, о которых мы знаем, ведутся в списке
багов проекта.
Против оригинала не хватает: чита R (воскресить принца), читов H / J / U / N
и Ctrl+B для осмотра соседних комнат и клавиши снимка экрана (F12).
БЛАГОДАРНОСТИ
---------------------------------------------------------------------------
Prince of Persia придумал и написал Джордан Мехнер в 1989 году.
Механика этого порта сверялась с SDLPoP (github.com/NagyD/SDLPoP) - это
самое точное прочтение того, как ведёт себя оригинальный движок. Графика
взята из версии для MS-DOS, звуковые эффекты - из её файлов DIGISND, музыка
- из записей саундтрека DOS-версии.
Сам порт собран нашим компилятором sprinter-cc на основе SDCC для Sprinter
Sp2000.
+134
View File
@@ -0,0 +1,134 @@
===========================================================================
SprPoP -- Prince of Persia for the Sprinter Sp2000
===========================================================================
A port of Jordan Mechner's Prince of Persia (1989) to the Sprinter Sp2000.
The graphics are the VGA ones from the MS-DOS release, in 320x256 with a
256-colour palette; the music and the sound effects are the digitised
originals, played through the CBL channel. All fourteen levels, the title
sequence, the story screens, the intro with the Princess and Jaffar, the
ending and the hall of fame are in.
RUNNING IT
---------------------------------------------------------------------------
From the DSS prompt, on the drive the game sits on:
sprpop
The game needs its data directories next to the program:
BG\ background tiles KID\ the prince
GUARD\ guards SKEL\ the skeleton
VIZIER\ Jaffar SHADOW\ the shadow
SND\ sound effects MUS\ music
FONT\ text font TITLE\ title screens
PV\ story and intro screens LEVELS\ the fourteen levels
If a directory is missing the game still starts, but whatever lived there
will be silent or invisible.
CONTROLS
---------------------------------------------------------------------------
Running and climbing
Left / Right turn, or run
Up jump, or climb up
Down crouch, or climb down
Down + Left/Right hop
Shift pick things up
Shift + Left/Right careful step
Home or Up+Left jump to the left
PgUp or Up+Right jump to the right
Up while running running jump
Shift while falling grab onto a ledge
Sword fighting
Left / Right advance or retreat
Shift strike
Up block
Down put the sword away
(Shift draws it again)
While the game runs
Backspace or Esc pause and open the menu
Space how much time is left
T keep the timer on screen
F6 quicksave
F9 quickload
Ctrl+A restart the level
Ctrl+R back to the title screen
Ctrl+S sound on / off
Ctrl+M music on / off
Ctrl+V show the build version
Ctrl+Q or F10 quit
F10 works everywhere, including the title sequence. Any other key during
the titles or the story screens skips straight into the game.
CHEATS
---------------------------------------------------------------------------
The cheats of the original, and they are on by default in this build. You
can turn them off on the Settings screen.
Shift+L go to the next level
+ / - one minute more / less
K kill the guard
Shift+I turn the screen upside down
Shift+W slow falling
Shift+S restore one hit point
Shift+T one more hit point (up to ten)
[ / ] nudge the prince one pixel
Two cheats of the original are NOT here yet: R (resurrect the prince) and
H / J / U / N with Ctrl+B (look at the neighbouring room).
Debug keys of this port, which the original has no equivalent for. They
all sit under Ctrl so that no plain letter is taken away from the layout
above.
Ctrl+I immortality: off / in combat / almost everything
Ctrl+P speed mode
Ctrl+F freeze the frame, and unfreeze it
Ctrl+D debug bar: level, room, speed, sound, timer
Ctrl++ / Ctrl+- jump to the next / previous room by number
FILES THE GAME WRITES
---------------------------------------------------------------------------
POP.CFG settings
POP.SAV quicksave, and POP.BAK the one before it
POP.HOF hall of fame
All of them appear next to the program, and all of them can be deleted --
the game will simply start from its defaults again.
WHAT IS NOT FINISHED
---------------------------------------------------------------------------
All fourteen levels have been played through. The port is still under
active development, so rough edges do turn up; the ones we know about are
tracked in the project's own bug list.
Missing against the original: the R cheat (resurrect the prince), the
H / J / U / N and Ctrl+B cheats for looking at neighbouring rooms, and the
screenshot key (F12).
CREDITS
---------------------------------------------------------------------------
Prince of Persia was created by Jordan Mechner in 1989.
The mechanics of this port were checked against SDLPoP
(github.com/NagyD/SDLPoP), which is the authoritative reading of how the
original engine behaves. The graphics come from the MS-DOS release, the
sound effects from its DIGISND files, and the music from recordings of the
DOS soundtrack.
The port itself is built with sprinter-cc, our SDCC-based toolchain for the
Sprinter Sp2000.