Прошло каких то пару лет, и большая часть движка игры реализована)
демо с первым уровнем
Управление курсорными клавишами, и УПР - смартбомба, F и Y стрельба.
Помню что выбирал клавиши так, чтобы из коды отпускания не пересекались.
Звук только на AY, используются два чипа, один для музыки, второй для звуковых эффектов.
Но в этой сборке отправка данный на AY выключена.
Только сейчас подумал, что можно же было автообнаружение звуковой платы сделать
Движок игры получился 6Кб, прям идельно помещается в области памяти выше 56К.
Пробовал его туда переместить, сразу заметно так игра ускоряется. Так что очень сложно играть становится.
Замерял сколько времени требуется чтобы пролистать весь уровень, получилось что с движком в доп. памяти, уровень прокручивается на 30% быстрее.
Большой соблазн его там и оставить. Сразу память появляется под второй кадр для всех спрайтов, да и маска для затирания фона влезет)
Но в эмуляторе нет поддержки доп. памяти.
Кстати, толи это проблема QT версии эмулятора (на другой не проверял), толи ещё что.
Когда удерживаешь клавишу, примерно через секунду регистрируется её отпускание, хотя она по прежнему нажата.
На реальном машине всё четко работает.
И опять же, только в эмуляторе, бывает что возникает ошибка загрузка данных с диска с кодом
102 "Не найден сектор с заданным номером"
Причём чтобы убрать эту ошибку, достаточно увеличить размер блока данных на одно слово.
При этом количество занимаемых блоком данных секторов не меняется.
Да, и чтобы убрать эту ошибку, я увеличиваю размер на одно слово не загружаемого блока данных, а того, который загружается перед ним.
Т.е. сначала загружается движок игры, а потом сразу же за ним уровень игры.
Эта ошибка возникает при загрузке уровня, а чтобы её убрать, увеличиваю размер движка на одно слово.
А на реальной машине всё норм.





Ответить с цитированием