Парсер анимации в чанки 4х4

Некоторых заинтересовали быстрые чанки, показанные в деме Lmao на прошедшем недавно демопати DiHalt 2018 Lite. Как многие из этих некоторых догадались, всё дело в неполном обновлении экрана. Действительно, в каждом фрейме обновляются только изменившиеся чанки. Для этого был написан специальный парсер. Давайте более подробно рассмотрим, как он работает.



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

Немного о скважности, сидсаунде и всём таком



Всем привет!
После прошедшего Multimatograf 2018 меня попросили рассказать о том, как именно мы (n1k-o , wbcbz7 и я) поиздевались над нашим любимым аигреком. Окей, начнём с самого начала — с того, как работает генератор тона.
Читать дальше →

FT812. SDK



Обычно софты состоят из нескольких уровней кода:
— низкоуровневые функции, работающие с железом,
— прикладные функции,
— логика программы.

Данный SDK по замыслу должен включать в себя:
— поддержку железа FT812 в его инкарнации VDAC2 на ZX-Evolution по интерфейсу SPI,
— поддержку железа TS-Conf,
— программирование FT812 (инициализация режимов, создание дисплей листа, функции сопроцессора),
— геометрию (синусы/косинусы etc.),
— прочие функции, полезные при создании игр или утилит.

Читать дальше →
  • avatar
  • [просмотров: 4416]
  • 0
  • +26

SDCC Z80 и как с ним бороться



Драма в трёх актах с разрушенными судьбами программ и убитыми человеко-часами.

Сразу должен извиниться перед авторами SDCC за всё хорошее, что я напишу далее. С одной стороны, я должен поблагодарить создателей за их труд, особенно, в отсутствие разумных альтернатив. С другой — благодарить авторов за их кривое поделие я не могу ни искренне, ни неискренне — вообще никак.

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

Фак программисту. Или как понять свой старый код

Не так давно я вернулся к разработке zifi. Этот код был позаброшен больше 9 месяцев назад, и тогда я… устал продолжать :)
Но — не забываю, есть старые проблемы, есть вновь найденные неудобства. Надо фиксить, надо развивать.
Оболочка полезная вышла.
Но, ччёрт, столько времени прошло…
Как понять свой старый код через год? И как писать так, что-бы его можно было пОнять позже?

Читать дальше →
  • avatar
  • [просмотров: 10376]
  • 102
  • +18

Понять Демосцену за 14 дней. День пятый. Основы кодинга. [перевод]




«День третий и четвертый. Основы графики и музыки» ← • → «День шестой. Инструменты и ресурсы»


Мы переводим и адаптируем гайд «Teach Yourself Demoscene in 14 Days» от Psenough. Остальные главы читайте по тегу #14days.
Мнение переводчиков может не совпадать с мнением автора.

День пятый. Основы кодинга.

Изучать программирование в наше время не так уж и сложно. Есть тонны книг и бесплатных курсов. Кто-то даже собрал все ссылки на одной странице.

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

Animation parser for ZX Spectrum

Опять запилятор, спросит кто-то с затаенной радостью, кто-то с неприкрытой злобой. Не совсем. Как уже кое-кто сказал, это кастрированный запилятор: никакой автосборки, никакого автоподключения музыки, скроллов, анализаторов и т.п. Только парсинг. Парсер слегка оптимизирован, по сравнению с предыдущей версией. Вот отличия от печально известного Zapilyator™:
  • Нулевой кадр анимации исключен из проекта. На крупных анимациях можно получить неплохую экономию памяти.
  • Возможность отключения задержек между кадрами. Кодер сам решает, когда вызывать очередной кадр.
  • Отключение смены страниц памяти. Все кадры должны находиться в одной странице, или же кодер переключает страницы сам.
  • Возможность тонкой настройки распределения памяти. Может пригодиться, если необходимо использовать несколько анимаций в одной задаче.
  • Уникальное пространство имен каждой анимации для объединения нескольких штук в один проект.

Адрес страницы: http://nyuk.retropc.ru/animation_parser_zx


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

Как стартовать первую программу на ассемблере.

По небольшим просьбам публикую самую короткую и простую инструкцию, как с минимальными усилиями написать и запустить примитивную программу на ассемблере. Я нарочно не затрагиваю тут принципов работы, литературу, архитектуру итд. Цель — получить нечто двигающееся здесь и сейчас.


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