+15.35
19 читателей, 51 топик

GO WEST, часть 1

Я хочу попробовать собрать в максимально компактной форме более-менее всё, что нужно для того, чтобы либо портировать вашу программу на один из классических спектрумов, либо написать её с нуля сразу совместимой с классикой. Когда я говорю «классика», я имею в виду любую из следующих машин: ZX Spectrum 48K, 128K, +2, +2A, +2B или +3. На практике, многие из этих моделей очень похожи друг на друга с т.зр. программиста и реально важно отличать следующие три вида классических спектрумов: 48К или 128К/+2(«серый») или +2A/+2B/+3.

В целом, отечественные клоны обладают довольно высокой степенью совместимости с оригиналами и переделка вашей программы для Leningrad 48К на 48K классику или переделка вашей программы для Pentagon 128K на любую 128К классику скорее всего окажется возможной, зачастую даже необременительной. Тем не менее, различия есть, и если не принять их во внимание, можно очень легко получить спектрумовский софт, который ни на одном настоящем спектруме не заработает.
Как этого избежать?

Captain Drexx изнутри. End part: full source


Все интересные моменты в игре, по моему скромному мнению, рассмотрены. Много чего опущено, но это всё — технические моменты.
Содержание цикла «Captain Drexx изнутри»

Осталось сладкое — исходники.

Читать дальше →

Captain Drexx изнутри. Часть 5. User interface


В этой части я хочу рассказать о управлении игрой.
Содержание цикла «Captain Drexx изнутри»

Вся система управления игрой висит в обработчике прерывания.
Соответственно, здесь мы должны считывать клавиатуру или мышь и обрабатывать ситуации в игре, а так-же показывать все события UI.

Читать дальше →

z80: Инструменты статического и динамического анализа кода.


Отчасти развивая вопрос поднятый в этой публикации, хочу спросить у вас: «какие есть 'умные' интерактивные инструменты динамического и статического анализа кода для z80 (кроме дорогущего IDA Starter/Pro)»?

И что эти «умники» умеют?

  1. какие (и где) есть инструменты динамического анализа кода?
    к примеру, для того, чтобы получить маркировку участка исходного кода как «исполняемого», достаточно запустить программу под эмулятором, некоторое время погонять её с включенным логированием состояния регистра PC (указатель адреса исполняемой команды) — как результат получим массив адресов, по которым реально расположен исполняемый код.

Читать дальше →

Captain Drexx изнутри. Часть 4. Towers

Итак, крипы лезут. Нужно обороняться.
Содержание цикла «Captain Drexx изнутри»

Каждая установленая башня должна просматривать свою область видимости и наносить урон в зависимости от своего типа и уровня.

Читать дальше →

Captain Drexx изнутри. Версии

Версии игры в процессе разработки.
покопался в почте, сложил по очереди версии игры по мере её роста :)

Содержание цикла «Captain Drexx изнутри»

По клику на картинку скачивается sna.

Гм, конкурс? а если...

Первое письмо к ААА, 18.09.13.
Первая версия, прототип. Крипы лазят по экрану, всё из Рекс-а :)


Читать дальше →

Почему я дебажу код

Мне довольно странно было было узнать, что много из моих друзей –кодеров практически не пользуются дебаггерами. «Крайний случай», говорят.

В определённый момент кодинга под z80 (в 90-х) я осознал, что для того, что бы писать код – нужно мыслить как процессор. Звучит конечно странно, но полностью осознать довольно простую, по сегодняшним меркам, логику выполнения команд процессора помогает именно отладка своих программ. Кроме того – ответ на вопрос «КАК ИМЕННО ЭТО СДЕЛАНО!?» может дать лишь отладчик.



Читать дальше →