Программирование для Famicom/NES/Денди в Nesicide+ca65: маппер MMC3 - HBlank+скроллинг (10) КОНЕЦ

Это будет последний урок в этой серии описывающий на практике последнюю технику которую нужно знать, чтобы написать крутую игру на Famicom/NES/Денди…
Ну хорошо, если призадуматься, то нюансов в программировании на денди есть еще порядком. Как организовать «бесконечный» скроллинг прокручивая две экранных области друг за другом и обновляя вновь появляющиеся с краёв тайлы в VRAM по ходу движения… Как организовать тайлы в метатайлы 2x2, а то и 4x4 для более краткого описания карт и удобного обновления видеопамяти (ведь атрибуты палитр назначаются сразу блоку тайлов 2x2 в экранной области, а один байт атрибутов покрывает 4x4 тайла)… Как воспроизводить оцифрованные DCPM звуки с помощью FamiTone2…
Впрочем, имхо, материалов и примеров изложенных в этих статьях хватит чтобы сообразить как это всё делается самостоятельно. Да и должно же быть какое то пространство и для собственного творчества. Здесь же я поставлю точку в этом цикле и, возможно, займусь какой-нибудь уже полноценной игрой исходники которой выложу, но это будет другая история.

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

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

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

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

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

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

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

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

Практика

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

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

На прошлой неделе мы говорили про маппинг и визуальные эффекты на его основе. Разобрали алгоритм полёта по тоннелю и реализовали его в программном коде. Запись вебинара можно посмотреть здесь.

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

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

Практика

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

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

На прошлой неделе мы говорили о программировании визуальных эффектов: узнали как устроен алгоритм горящего пламени, реализовали его в программном коде и на примере этого кода познакомились с основами оптимизации. Запись вебинара можно посмотреть здесь.

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

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

Практика

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

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

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

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

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

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

На прошлой неделе мы познакомили наших гостей с архитектурой, основными средствами разработки и системой команд компьютера ZX-Spectrum. Запись вебинара можно посмотреть здесь.

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

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

Практика

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

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

На прошлой неделе мы познакомили наших гостей с основами создания pixelart-графики, запись вебинара можно посмотреть здесь.

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

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

Практика

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