Музыкальная теория для демосценеров. Часть 2.


Всем доброго дня!
Прошло боле двух лет с первой части и вот, наконец, появилась вторая! Если вы её не читали, рекомендую её прочитать, чтоб было все понятно. Итак, поехали

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

Ускоряем DeSmuME


Какое-то время назад зоопарк форматов, поддерживаемых ZXTune пополнился еще одним экспонатом — .2sf. Типичный представитель семейства Portable Sound Format (.psf, .psf2, .ssf, .dsf, .usf, .gsf, .snsf, .2sf, .qsf), предназначенный для хранения дампов памяти с музыкой игр для карманной приставки Nintendo DS.
Для воспроизведения используется библиотека vio2sf от Christopher Snowhill на основе эмулятора DeSmuME. На далеко не самом быстром референсном устройстве и случайно выбранных треках библиотека показывала достаточное быстродействие, поэтому она была портирована as is, без оптимизаций (хотя беглый взгляд на код и вызывал зуд в руках). К тому же, будучи измученным Рамзаном нарзаном оптимизацией библиотеки lazyusf2 (если интересно, могу рассказать о процессе), я не имел ну никакого желания опять влипать в это дело.


Да куда ж ты денешься?.. (С) Жызнь

FT812. Архитектура



В этой статье я расскажу об особенностях работы и внутреннем строении FT812 с точки зрения разработчика подобных видеосистем.
Вопросы программирования сабжа будут рассмотрены поверхностно (а подробно — в отдельной статье).

Читать дальше →
  • avatar
  • [просмотров: 4179]
  • 5
  • +31

Анонс MmcM - The Blossoming Years

Альбом стремительно приближается и у нас готов sampler:


Soundcloud | RuTracker

За спектрумовскую версию взялся introspec , а с графикой обещал помочь diver4d . И да, кто умеет играть треки начиная с произвольного паттерна в стандартном PT3-плеере?

Famicom/NES/Денди: битва за Status Bar

На Famicom/NES/Денди было одно сильно аукнувшееся гейм–девелоперам упрощение/удешевление — вместо четырёх экранных областей объёмом 4Кб выстроенных квадратом между которыми был возможен бесшовный скроллинг (с прокруткой) в консоли оставили только 2Кб VRAM и, таким образом, было только две экранных области с бесшовным скроллингом.
Т.е. виртуальный задний фон мог бы иметь такую раскладку:

(глубже теорию вопроса можно изучить в статье про графическую архитектуру Famicom/NES)
Но в итоге оставались только две эффективных области из этих четырёх. Причём коммутацией линий картриджа их можно было выстроить как вертикально так и горизонтально (оставшиеся области «зеркалились»). Таким образом чисто вертикальные или чисто горизонтальные скроллеры реализовывались легко из коробки, но с произвольным скроллингом возникал целый ряд проблем которые решали кто как.

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

Возможный процессор тетриса (Brick Game). Holtek - HT1130.

В интернете существует немало информации о таких знаменитых ретроигровых системах типа NES, ZX Spectrum, Sega и так далее. Все их схемы, примеры программного кода существуют в открытом доступе и найти их при должном желании не составит труда.
Однако, существует ещё одна игровая система, которая в странах СНГ не уступала по популярности вышеперечисленным (а то даже и превосходила их), но об её устройстве практически ничего не известно. Это Brick Game (более известный как просто Тетрис).
Мои попытки найти хоть какую-то информацию о процессоре этого замечательного устройства долгое время не были успешными. Однако, я наткнулся на тему форума nesdev.com — Brick Game, где поднималась эта тема.
Оттуда я понял, что в качестве процессора в таких устройствах, выступал 4-битный микроконтроллер HT1130 от китайской компании Holtek. Или его аналоги. На картинке ниже, под каплей компаунда находится кристалл HT1130.



Поискав информацию об этом микроконтроллере, я наткнулся на его даташит — Datashet HT1130
Из даташита и официального сайта Holtek — holtek.com, я понял, что этот микроконтроллер использовался в основном для настольных часов. Для него есть программатор, он имеет 32 вывода для управления ЖК дисплеем, порты ввода (очевидно, что для кнопок) и вывода, отдельные выводы для звуковой пищалки, тактовую частоту до 1 МГц, прошивка пишется на ассемблере в собственной IDE от компании Holtek. Но самого микроконтроллера в продаже не имеется. Не мог найти даже на Aliexpress.

Более подробный обзор (только в теории ибо для практики я не мог его найти) вы можете посмотреть в видео ниже. Обзор архитектуры и
даташита начинается со времени 5:40. Заранее извиняюсь за сумбурное изложение в видео. Моё первое всё-таки =)

Краткое описание видеорежимов 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 на русском перевыложить и тут (ранее считал что она слабовата технически, но в общем то почему нет?). Сразу дисклеймер: так как я вчитывался в первый и единственный раз, то возможно что-то пропустил или даже исказил — буду рад любым поправкам, если заметите ошибки.

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