NES - измерение времени выполнения кода

При разработке для ретро-платформ нередко возникает необходимость сделать оценку быстродействия разных частей программы — то, что в современной практике называется 'профилированием'. Например, после добавления новых возможностей в игру её логика перестала укладываться в один кадр, начались замедления, и требуется выяснить, на какой части кода нужно сосредоточить усилия по оптимизации в первую очередь. Конечно, для небольших фрагментов кода на ассемблере всегда можно (и нужно) посчитать время выполнения в тактах вручную, но на больших участках со сложной логикой, либо при написании программы на языке высокого уровня, этот подход не годится. Рассмотрим, какие способы решения этой задачи есть в арсенале современного разработчика для NES.


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

Threads on Z80

Привет, друзья.

Хочу поделиться с вами своими наработками. Сперва хочу извиниться за то, что постоянно буду использовать свой ассемблер ASAM. Увы, он работает только под 32-бита, у этого есть ряд причин, но почему это так, — не сейчас.

Теперь о сегодняшней теме, о параллельных потоках. Начиная с 2003 года я постоянно использую два типа потоков на Speccy: первый, мой любимый — это сквозные функции; и второй, о котором пойдёт речь — это классические потоки. Я приведу пример самых простых потоков, и если вам это нужно — вы легко сможете доработать его до своих нужд.

Thread'ы очень просты. Всё сводиться к двум основным процедурам — это создание и переключение потоков. Текущий вариант потоков эволюционировал из простых переключений между блоками памяти в переключение между страницами, что очень удобно для decrunch'ингов чего-нибудь, или для распаковок данных. Хочу отметить, что впервые оправданное использование потоков я ощутил при coding'е под ts-conf'у.

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

Мультиматограф 11: начинаем принимать

С сегодняшнего дня мы начинаем прием работ на «Мультиматограф» (пока верстался номер наступил завтрашний день и прислано уже три работы).

Для тех, кто всё пропустил, «Мультиматограф» — олдскульный демофестиваль, который уже второй раз пройдет в Вологде, 25-26 апреля. Ранее демопати проходило совместно с крупным анимационным фестивалем (да-да, именно отсюда и пошло это странное для демопати название), но только не в этот раз. В этом году будет только демопати — более лайтово, более душевно: соберемся в кафе, будем смотреть демы и общаться.

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

Код мёртв

В 1967 французский философ и литературовед Ролан Барт напечатал знаменитое эссе «Смерть автора», название которого призвано напомнить нам цитату из Ницше: «Бог мёртв». Ницше, писавший в конце XIX века, имел в виду, что бог христианства больше не является ни для кого никаким авторитетом, и пора бы уже, наконец, сбросить его с паровоза современности; а Барт применяет похожее соображение к писателям, которых старое литературоведенье считало властителями читательских дум. Барт говорит о том, что настоящая литература случается не на страницах книжки, а в голове у каждого отдельно взятого читателя. Читатель может изучать личную и общественную жизнь автора, но никогда не поймёт до конца, что именно хотел сказать ему автор. Автор может убиться, но никогда не сможет полностью проконтролировать, что именно вообразил себе читатель. Нет никаких властителей дум, автор мёртв.

Сегодня у меня для вас не менее грандиозная новость: код мёртв, причём мёртв уже довольно давно.

Код может быть жив только когда его читают, разбирают, понимают. Когда в свежевышедшей деме обсуждают не источники графона, а эффект Икс, достигнутый применением трюка Игрек. Лайк! Я не очень застал эти золотые времена, но могу себе вообразить сотни, тысячи хакеров по всей стране, запускавших дрожащими руками новую дему, и при первых звуках музона прыгающих в отладчик. Оп-а, да у них тут
pop hl : ldd
приспособлено! Вау!!! кому нужна графика, когда и так всё видно. Правила, запрещающие аниму выглядели при таком раскладе совершенно логично. Орги прыгают в отладчик, а там вместо кода — килотонны данных! Жулики! Обманули! Почитать нечего! Скандал, сопли, кишки. Плохая дема, неинтересная, осуждаем.
Читать дальше →

Проект правил Chaos Constructions

Предлагаю проект правил конкурсов Oldskool, Combined, Wild, ZX Spectrum Enhanced, Animation/Video:

OLDSKOOL DEMO, INTRO 1k, INTRO 256b

На этот конкурс принимаются работы для платформ (компьютеров и игровых приставок), выпущенных до 1991 года включительно: ZX Spectrum, C64, VIC20, Atari XL, NES, БК и других, по согласованию с оргкомитетом.
Важным условием является низкая совокупная производительность вычислений и видео, относительно платформ участвующих в конкурсах Combined.

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

Two questions

Q&A

Два простых вопроса.

Что нужно нам всем делать, что бы некий человек:
2. ПЕРЕСТАЛ заниматься демосценой.
1. ПРОДОЛЖИЛ заниматься демосценой.

Мозговой штурм, принимаю все ответы.
Позже попробуем собрать главное из ваших мыслей.

Break Space *FINAL* version



Владельцы оригинальных ZX Spectrum 128K наконец-то могут насладиться нашим новым демо на реальном железе. Архив финальной версии включает TAP-версию демо. Поддержаны классические модели: 128K/+2/+2a/+3, а так же Pentagon128 и Scorpion ZS 256 Turbo+.

Внесено достаточно изменений, в основном незначительных, но кое что серьезно изменено.

Финальную версию Break Space можно скачать на Pouet.

Видео так же доступно на Youtube.