Программирование для Famicom/NES/Денди в Nesicide+ca65: спрайты (5)

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

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

esxDOS для самых маленьких. Практикум чтения из файла и смещения по файлу

Всем привет!

Сегодня мы продолжим говорить про esxDOS и откроем портал в ад и напишем свой маленький запилятор попрактикуемся с чтением с SD-карты.

Это вторая статья, предполагается, что первая уже прочитана


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

Программирование для Famicom/NES/Денди в Nesicide+ca65: задний фон с прокруткой (4)

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

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

Программирование для Famicom/NES/Денди в Nesicide+ca65: модуль neslib (3)

Пример 1 — скроллинг заднего фона — neslib

Тот тестовый проект Hello world что мы создали из шаблона Nesicide работает, но мы сейчас переделаем его полностью — от него останется только каркас проекта и два битмапа с двумя наборами тайлов где присутствуют изображения символов текста. Когда весь цикл статей уже будет написан я его прошью общим оглавлением и конечно же дам ссылки на уже готовые проекты с полным кодом готовые к редактированию и компиляции. Пока, временно, если они кого-нибудь заинтересуют сейчас — можете спросить в комментариях. А в самих статьях код будет раскрываться кусками постепенно.


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

Программирование для Famicom/NES/Денди в Nesicide+ca65: архитектура MOS 6502 (2)

Еще немного про сегменты

Если вы до этого программировали на каком-нибудь другом ассемблере для 8-биток, то возможно, что все эти заморочки с сегментами на первый взгляд могут показаться ненужными. Почему бы не использовать директиву .ORG и явно не указывать где находятся код и данные?

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

Многопоточность на ZX Spectrum

Реализовав перехват прерывания на ZX Spectrum (о чём есть огромное количество статей) можно стать на шаг ближе к одной странной затее — вытесняющей многопоточности на этой 8–битной машине. Сразу же может возникнуть вопрос — а зачем оно надо?

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

Программирование для Famicom/NES/Денди в Nesicide+ca65: введение (1)

Оглавление

2 — Архитектура MOS 6502...
3 — Модуль neslib...
4 — Задний фон с прокруткой...
5 — Спрайты...

0. Предисловие

В этой серии статей я попытаюсь как можно быстрее ввести вас в программирование на ассемблере ca65 на 8-битной консоли Famicom/NES/Денди в среде программирования Nesicide.
Статьи не ставят своей целью учить кого либо программировать: вы уже должны быть программистом и понимать что такое программы, ассемблер и как работают процессоры. Многое я попытаюсь объяснить как можно более детально, но определенный багаж знаний и умений конечно надо будет иметь. В принципе в интернете немало переведённой литературы и про MOS 6502 и про Famicom/NES/Денди, поэтому особо даже не буду что-то рекомендовать.
Для первичного ознакомления с основами основ о том что из себя представляет обзорно для программмиста консоль могу отослать к своей же статье: /blog/868.html, хотя похожих статей вообще немало.
Огромная масса полезной информации находится на англоязычном сайте nesdev.com (бесценный источник и для этого моего цикла статьей!).
Если с английским туго, то могу еще отослать к обзору разных материалов от Shiru: hype.retroscene.org/blog/282.html
Начало положено этой статьёй, остальные будут дописываться по мере появления свободного времени, всячески приветствуются комментарии, замечания, корректировки и вопросы помогающие улучшить статьи и дополнить непонятные в них места.


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

Подводные камни скроллинга на Famicom/NES/Денди

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

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

esxDOS для самых маленьких. Чтение и запись файлов

Введение


Официальной информации по API esxDOS в принципе не существует, а русскоязычной информации и неофициальной я не нашел.

Система же уже достаточно активно заняла свои позиции(как в виде фирмвари для divMMC/divIDE), так и как часть многих компьютеров(Карабас, ZXUno, Reverse, Spectrum Next и многие другие).

API хорошо работает и с IM2(можно подгружать файлы под музыку), работает почти на всем, что можно и достаточно легко в освоении.

В этой статье я опишу минимальное необходимое для жизни API, которое позволит создавать вам приложения под эту систему.

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

Законорожденные дети и внуки Zilog Z80

Полазил немного по википедии и бегло пробежался по техдокам по каждому процу и интересная вырисовывается картинка у Zilog с их процессорами в целом…
Легендарный Z80 они сделали в 1976 году.
Больше легендарных процессоров от них не было так что у меня лично создавалось ранее ощущение полной стагнации. Однако на самом деле всё было намного интереснее… Данные ниже получены крайне поверхностным ознакомлением с источниками, поэтому могут быть существенно неполны и даже в чём-то неправильными! Буду рад уточнениям и исправлениям.

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