Программирование для Famicom/NES/Денди в Nesicide+ca65: маппер MMC3 - перехват HBlank (9)

Итак, кроме собственно управления дополнительными банками памяти маппер MMC3 обладает еще одной важной функцией — генерацией прерываний IRQ по счётчику сканлайнов. В уроке про zero sprite hit мы перехватывали момент когда можно например в середине кадра сменить параметры прокрутки заднего фона этим средством встроенным в консоль. Но этот способ во первых можно использовать только один раз за кадр, а во вторых требует от процессора тратить все вычислительные ресурсы на обнаружение наступления события, что кроме самого этого факта еще и затрудняет планирование времени сколько код должен выполняться.
Счётчик сканлайнов в MMC3 лишён всех этих недостатков.
Воздержаться
  • avatar

Скрытые послания из 80–х японских разработчиков видеоигр

Давно уже наткнулся на забавную статью «скрытые сообщения в видеоиграх на famicom» (на английском): magweasel.com/2009/08/29/hidden-messagin/

Если сдампить картридж игры Pachicom (примитивный симулятор «патинко» — японского варианта пинбола) вышедшей в 1985 году для 8–битной консоли Famicom/Денди, то можно обнаружить, что 5% ROM кода и данных занимает скрытый и нигде в игре не показываемый текст. В статье по ссылке его перевели на английский, а я тут переведу на русский…
Воздержаться
  • avatar

Новые инструкции ZX Spectrum Next

ZX Spectrum Next реализован на FPGA включая процессор, поэтому в нём Z80 не только смогли повторить, но и улучшить внедрив несколько новых инструкций.
Полностью весь набор инструкций можно посмотреть тут: wiki.specnext.dev/Extended_Z80_instruction_set
Новые там отмечены литерой E в колонке «Status».
Все они реализованы на неиспользованных слотах расширенных команд Z80 с префиксом $ED.
Было любопытно взглянуть что это за инструкции и я бы даже сказал, что в них частично отразилась профессиональная боль программистов под ZX Spectrum.
Воздержаться
  • avatar

Краткое описание видеорежимов ZX Spectrum Next

Давно уже занесло меня на сайт ZX Spectrum Next и там заинтересовали количество и состав видеорежимов этой машины. Сам ZX Spectrum в этом плане был скуп и имел только один видеорежим — 256*192 монохрома раскрашенного по два цвета в знакоместах 8x8 которые начинаются по адресу $4000 (16384) и занимают 6144 байта на монохромный битмап и 32*24=768 байт на атрибуты знакомест сразу после битмапа.

Можно сказать что этот видеорежим составляет изначальный «слой ULA». Небольшой ликбез: Uncommited Logic Array (ULA) вообще означает особый процесс создания микросхем, но в спектруме в такую «кастомную» микросхему было заложена вся его особенность, включая видеоконтроллер и поэтому аббревиатура ULA плотно ассоциируется в мире спектрума со всеми такими вещами.

И раз на Hype появилась статья про программирование слоя спрайтов, то я решил эту свою статью вкратце описывающую видеорежимы Next на русском перевыложить и тут (ранее считал что она слабовата технически, но в общем то почему нет?). Сразу дисклеймер: так как я вчитывался в первый и единственный раз, то возможно что-то пропустил или даже исказил — буду рад любым поправкам, если заметите ошибки.
Воздержаться
  • avatar

Super Mario Bros. COVID-19 Edition

Всем привет!

Сделал для вас игру на актуальную нынче тему :)

Скачать тут:
zxart.ee/rus/soft/game/arcade/platform/super-mario-bros-covid-19-edition/







Движок, который я показывал на CAFe 2019, продолжает развиваться.
За последние пару месяцев в комплекте к нему появился UI-редактор миров.
Именно в нём и сделаны уровни для игры.

Играйте, наслаждайтесь. :)
Баг-репорты присылайте в личку в телеграм.
Воздержаться

ZX Spectrum Next. Слой спрайтов.

Вступление

Здраствуйте вам!
На написание большого кол-ва букав, что я раньше ни когда не делал, меня подтолкнул Александр Шарихин (Nihirash).
Ни так давно меня заинтересовала относительно новая платформа Zx Spectrum Next от наших забугорных друзей. Заинтересовала по аппаратным возможностям, к тому-же требовались знания исключительно ассемблера Z80 с коим я знаком с детства. Мое первое знакомство с аппаратными возможностями Next пало на режим Sprite, о котором я и хочу рассказать.
Воздержаться

SWEET16 - архитектура мечты Стива Возняка

Для ретропрограммистов североамериканского континента информация из этой статьи будет банальщиной, но наши отечественные спектрумисты возможно узнают для себя что-то новое.

Дешевый и сердитый 8-битный микропроцессор MOS 6502 стал сердцем очень многих компьютеров и консолей.
Так он был центральным процессором в компьютере Apple II — первом массовом компьютере фирмы Apple эпохальной значимости собственноручной разработки Стива Возняка.
+ 5
- 0
  1
  • avatar

Making of MULTIDEFENDER + final version

Итак, конец марта, на носу Revision 2020, впереди ещё долгий месяц самоизоляции, и всё началось, как обычно, с того, что мы решили написать очередную демку для NES. Конечно, “демка” — это немного громко сказано. Исходя из собственных возможностей и количества оставшегося времени до дедлайна, курс был взят на создание простенькой инвитры к Мультиматографу, состоящей из скроллера с информацией и нехитрого эффекта эквалайзера, основанного на логотипе Multimatograf.


+ 14
- 0
  1
  • avatar

Музей Яндекса проводит вебинары о творчестве на ретрокомпьютерах



На ретрокомпьютерах многие учились программировать, делали первые шаги в компьютерной графике, пробовали писать электронную музыку. Как же создаются такие работы сейчас? Где взять инструменты, как ими пользоваться? Мы решили ответить на эти вопросы и запустили цикл из пяти вебинаров, посвящённых творчеству на ретрокомпьютерах.

На них вы познакомитесь с основами создания chiptune-музыки и пиксельной графики, научитесь настраивать эмуляторы и средства разработки, узнаете как программировать различные эффекты в демо и интро.

Первый вебинар был посвящен написанию чиптюн-музыки, и в качестве специального гостя мы пригласили Сергея Косова (mmcm ) — одного из наиболее популярных музыкантов на ZX-Spectrum. Запись вебинара можно посмотреть здесь.

На втором вебинаре рассказывали про основы создания пиксельной графики, в нём принимал участие Руслан Гроховецкий (ruguevara ) — программист и pixelart-художник на платформе ZX Spectrum. Запись тут.

На третьем вебинаре изучали архитектуру, основные средства разработки и систему команд компьютера ZX-Spectrum. Ведущий — Олег Сенин (bfox ): программист, художник, музыкант на различных ретроплатформах. Запись здесь.

На четвёртом вебинаре говорили о программировании визуальных эффектов: узнали как устроен алгоритм горящего пламени, реализовали его в программном коде и на примере этого кода познакомились с основами оптимизации. Ведущий — Олег Сенин (bfox ): программист, художник, музыкант на различных ретроплатформах. Запись вебинара можно посмотреть здесь.

Пятый вебинар был посвящен маппингу и визуальным эффектам на его основе. Разобрали алгоритм полёта по тоннелю и реализовали его в программном коде. Вебинар провели Олег Сенин (bfox ) и Александр Солодков (TmK ) — программисты, художники, музыканты на различных ретроплатформах. Запись тут.

На шестом вебинаре мы разобрали один из самых сложных программных трюков, позволяющий увеличить цветовые возможности компьютера ZX Spectrum — мультиколор. Сравнили результат работы эффекта до и после применения данного метода. Вебинар провели Олег Сенин (bfox ) и Александр Солодков (TmK ) — программисты, художники, музыканты на различных ретроплатформах. Запись тут.

На седьмом вебинаре мы завершли тему маппинга: узнали, что такое субпиксельная оптимизация, рассмотрели способы сокращения расхода памяти, научились создавать таблицы маппинга без использования математических формул, ответили на вопросы зрителей. Вебинар провели Олег Сенин (bfox ) и Александр Солодков (TmK ) — программисты, художники, музыканты на различных ретроплатформах. Запись тут.

Сегодняшний вебинар — последний. Мы узнаем как синхронизировать визуальные эффекты под музыку, напишем диспетчер, управляющий очерёдностью и временем вывода эффектов, и с его помощью попробуем собрать небольшое демо на основе музыки, графики и кода, созданных в течение всех предыдущих вебинаров. Ведущие — Олег Сенин (bfox ) и Александр Солодков (TmK ) — программисты, художники, музыканты на различных ретроплатформах.

Ждём всех 4 июня в 19:00 по московскому времени. Участие бесплатное, пожалуйста, зарегистрируйтесь заранее по ссылке. Трансляцию вебинара можно будет посмотреть на youtube.

Практика

А чтобы материал не остался теорией, мы приглашаем проверить свои силы, приняв участие в конкурсной программе фестиваля «Демодуляция 2020», который состоится осенью. Мы понимаем, что для создания чего-то впечатляющего нужно время, поэтому приём работ уже открыт. Более подробно о правилах конкурсов можно прочитать на нашем сайте.
+ 13
- 0
  0
  • avatar