Удаление в знак протеста против действий MM
Вид для печати
Удаление в знак протеста против действий MM
на УК-НЦ есть такой вариант цветного тетриса который, если указан ч\б, вместо цветов рисует масти карточные.
Никита, очень извиняюсь за задержку, никак не выберу момент для телодвижений по переносу последней демки на реал, до конца недели постараюсь сделать. УК-НЦ то вон стоит готовенький проблема файл перенести (эх! Ярослав, работал бы контроллер ваш секунду процедура заняла бы, а так видимо придётся с дискетами возиться).
Отпишусь в этой теме, обязательно как только так сразу.
Ещё по поводу цветов - если игра только под ЦП и настройки дисплея из системы работают, каждый сделает себе нужную яркость и палитру, а вот если программа жёстко блокирует и контролирует всё надо ориентироваться на ч\б.
В аттаче версия с переделанными цветами, основная игровая область теперь жёлтая.
Теперь проверяю игрушку также и в EmuStudio:
https://img-fotki.yandex.ru/get/7644...13488_orig.png
Ладно, если я вам ещё не надоел...
В аттаче первое ИГРАБЕЛЬНОЕ демо.
С управлением была какая-то бага, и я пока пожертвовал красотой начальной анимации ради того чтобы управление заработало как надо -- позже починю.
Вход в игру -- "7".
Управление -- Q A O P и Пробел. да, коряво и не по-УКНЦшному, но пока вот так.
Обратите внимание что время игры ограничено, по истечении времени появляется транспорант, но его легко незаметить, поскольку он убирается по любому нажатию.
Что осталось доделать до релиза, в порядке приоритета:
- Движение Main Vorton -- разобраться с ошибкой которая пока заткнута, из-за этого начальная анимация пострадала
- При уничтожении Vorton или Auto-Vorton нужно стирать его с панели индикаторов
- Сделать индикацию Power
- Сделать индикацию движения Lasertron
- Доделать анимацию beyond Zone 0 при завершении игры
- Реализовать обработку Pause key
- Реализовать обработку Abort key
- Назначить управление на более удобные клавиши
- Транспорант о том что закончилось время -- сделать паузу с поглощением нажатий
- Title screen: при выводе надписи-заглавия проверять клавиатуру, быстро заканчивать если было нажатие
А ты сам код с Z80 как переписал на PDP11?
Вручную по-командно.
Вот моя шпаргалка:
В следующий раз думаю надо уже делать парсер и полу-автоматический перевод.Код:A R0
BC R1
DE R2
HL R3
IX R4
IY R5
SP R6
PC R7
JR aaa BR aaa / JMP aaa
JR C, aaa BLO aaa
JR NC, aaa BHIS aaa
JR Z, aaa BEQ aaa
JR NZ, aaa BNE aaa
CP xx CMP R0, xxx
SRL xx ASR xxx
Писанина здесь -- самая простая и приятная часть работы. По ходу писанины после нескольких строчек ещё компиляция, добавление недостающих меток.
После этого надо 2-3 раза подробно-досконально перечитать, исправить мелкие косяки.
Затем прошагать под отладчиком.
Самая адская часть работы -- это параллельная отладка, когда на одном экране EmuZWin в отладчике, на втором UKNCBTL, в Far-е открыт скомпилённый листинг (чтобы знать реальные адреса). И вот доходишь до места, потом шагаешь двумя отладчиками, сравниваешь изменения там и там, думаешь должно отличаться или нет -- в плане времени и мыслительных усилий это адище, но без было бы ещё тяжелее.
Самые частые ошибки:
1. Забыл поставить #, получилось обращение к адресу вместо непосредственного значения.
2. Перепутал местами операнды -- они зеркально на Z80 и PDP11.
3. Сделал словную операцию вместо байтовой -- забыл поставить B.