-
SprPoP 0.9.0: катсцены идут в темпе оригинала, звук больше не рвётся
released this
2026-08-28 19:08:15 +03:00 | 60 commits to main since this releaseТЕМП КАТСЦЕН. Делитель был верный (6 тиков оригинала = 5 кадров луча у всех
сцен, у pv_scene 6->8->7), ломало место отсчёта: кадр рисовался целиком, и
только потом ждали vsync и ещё четыре — отрисовка ПРИБАВЛЯЛАСЬ к делителю
(замер: 49 тиков/с вместо 60). Теперь она разложена на блоки, каждый влезает
в кадровый интервал, после каждого ждём vsync; фон восстанавливаем только по
картинке (200 строк вместо 256). Удешевлять сцену не понадобилось.ЕДИНЫЕ ЧАСЫ. У сцены с Джафаром было две шкалы, и выбор между ними делался
гонкой на старте — от прогона к прогону кода реплики приходилась на другое
место картинки. Ветка по насосу CBL убрана, осталcя счёт кадров луча;
подгонка PV_MAGIC_LEAD (100 тиков) снята вместе с причиной.КОНЕЦ УРОВНЯ ЖДЁТ МЕЛОДИЮ (порт seg003:387) — экран пройденного уровня живёт,
пока звучит трек, в том числе при выключенной музыке (счётчик по длине
записи). Трек заставки между уровнями переживает загрузку следующего:
порядок оригинала — загрузка под музыку, потом чернота до конца трека, потом
показ уровня.ЗВУК НЕ ГЛУШИМ РАДИ ОПЕРАЦИЙ. Заплатка «закрыть CBL на время перерисовки
или диска» стояла в девяти местах и была слышна как паузы. Замер (брейк на
pop_sfx_fill + totalcycles, окна по 800 вызовов): период 245 760 тактов,
максимум зазора 1,27 периода, потеря начинается с двух — запас десятикратный.
Сняты все защитные глушения (меню, фейды, палитра на смене уровня, POP.CFG,
quicksave, массовые чтения треков); остались только смысловые — выход из
сцены, уход в титры/игру, Ctrl+S.Проверено пользователем: переход 2->3, все катсцены, интро, «won», HOF,
F6/F9 — скрежета и пауз нет.Downloads