Comments 6
Думаю что для того что бы игра работала "быстро" нужен отзывчивый на управление геймплей, а для спектрума это значит что надо использовать режим прерываний IM2 и за время между ними отрисовывать экран и опрашивать кнопки. Если все это не помещается в один цикл, поптобовать разделить на два раза. Что то типа такого. В итоге получаем код синхронизированный с прерываниями и визуально ровно работающий.
Это очень продвинутые техники, а Fred вышел в 1983 году. Разрывать главный графический цикл, как мне кажется, плохая идея, я не так много игр пореверсил, и нигде не видел такого подхода. Позже научились делать игры так, что обновление экрана происходит 25 кадров в секунду, опрос клавиатуры и обновление игровых событий тоже успевают обсчитаться, и геймплей получается плавным.
Думал речь об этой игре: https://worldofspectrum.org/archive/software/games/sir-fred-made-in-spain
Она, кстати, тоже какая-то тормозная. Как будто сквозь клей продираешься.
Sir Fred - это следующая игра про того же персонажа и от тех же разработчиков. Да, она очень специфическая, там головоломки построены на том, что нужно очень хитро управлять персонажем, чтобы он делал разные физические действия: раскачивался на лианах, плавал, сражался. Я не осилил эту игру, хотя пытался. Технически она сделана совсем по-другому, нет скроллинга, только фиксированные экраны и спрайты. Поэтому тормознутость игрового процесса - это by design, оригинальное геймплейное решение. Зато графика очень цветная и стильная.
JR NZ
идем дальше - разворачиваем циклы
С воспроизвением звука на ZX Spectrum я не знаком совсем никак,
есть здесь один большой спец в этой области ;)
ЗЫ такой вот редактор коментов здесь
Я не очень правильно выразился. Я примерно представляю, как работает beeper, он управляется одним из битов великого и могучего порта ввода-вывода $FE. Но я очень плохо представляю техники, при помощи которых звук выводится, не прерывая процесса игры. Я догадываюсь, что хорошей школой было бы попробовать пореверсить Manic Miner, но всё равно слабо верится, что я разберусь.
Исследование и разгон игры Fred для ZX Spectrum, часть 2