Из чего состоит приставка денди

Обновлено: 01.06.2024

Схемотехника Денди по большей степени классична для любой ЭВМ: содержит микросхему процессора, видеопроцессора, оперативной памяти и прочей сопрягающей "рассыпухи". В 80-х годах прошлого столетия консоли Famicom и их «клоны» изготавливались именно в «многокорпусном варианте». Один из типовых вариантов принципиальной схемы приведен ниже (при клике на картинку открывается полномасштабный вариант - чуть более 100кб.)

Несмотря на то, что документ явно «китайского» происхождения, на нем «один-в-один» изображена схема японского Famicom редакции HVC - CPU -07 (проверено). По-сему схему можно использовать не только в целях ремонта и т.п. но и сконструировать по ней систему «с нуля».

Массовую популярность на российском рынке Денди приобрела в большей степени (чем китайцам) благодаря компании "Стиплер", - которая, по всей видимости, имела "пиратские" корни. Лично я очень сильно сомневаюсь в том, что Стиплер делала лицензионные отчисления в пользу Nintendo. Потому что как тогда, для примера, объяснить само возникновение брэнда "Денди"? - а имя оригинального разработчика, кстати, всеми усилиями скрывалось. Или, например то, что в один прекрасный момент эта фирма (казалось бы так раскрученная) внезапно исчезла? (Можете попробовать поискать на гугле . ) Ну да разговор не об том. Внезависимости, занималась ли реально Стиплер работой над схемотехнической архитектурой консолей, либо же просто заказывала OEM-партии клона Famicom под своим логотипом - продукция была действительно высокого качества, не в сравнение морю явных "китайских" подделок (скупаемых "там" за копейки и мешками завозимыми к нам). Наиболее известными "ремэйками" консоли NES в исполнении Стиплер были модели "Dendy Junior" и "Dendy Classic" отличались они лишь дизайном (ну и некоторыми малосущественными нюансами), хотя "классик" стоила несколько дороже. Кстати именно дизайн Dendy Junior являлся точной копией японского Famicom , а дизайн Dendy Classic повторял дизайн «китайских» клонов (или наоборот?).

В месте с тем, за весь период своего производства "начинка" консолей (как стиплеровских так и «китайских») претерпела определенные изменения (не заметные для рядового пользователя, не отразившиеся на внешнем виде изделия и базовых функциях). Интеграция и миниатюризация в электронном мире идет огромными шагами. Первые редакции консоли были «многокорпусными» (см. схему выше) – это и все японские Famicom `ы, и первые Dendy от Стиплера, и даже китайщина концов 80-х начала 90-х годов прошлого века. Но уже к середине 90-х годов купить новую «многокорпусную» Денди было почти не реально. Первая Денди (" J unior") которую я увидел изнутри (не моя – отдали на ремонт) уже была собрана в соответствии с концепцией System-on-a-Chip (система на одном кристалле) - лишь микросхемы памяти были "внешними" - сейчас есть в моей коллекции подобная система, но в исполнении " Classic " (система PAL - на чипе 1818).

Пару слов (и картинок) о моей первой дендюшке (" J unior II "), той самой - купленной в 1995 году. Это последняя вариация консоли в исполнении " J unior" (внешний вид как у Famicom , см. картинку в уголке) - абсолютно все компоненты системы находятся в едином чипе (включая память). Фотографии обоих сторон платы приведены ниже (плата однослойная, с лицевой стороны есть лишь отдельные проволочные перемычки).



Ну а далее . конечно же, я срисовал схему устройства (что не сложно, но весьма кропотливо) - результат перед вами ниже (при клике на картинку открывается полномасштабный вариант - около 400кб.)

Устройство предельно простО. Микро-ЭВМ с необходимой аналоговой обвязкой плюс разъемы - ничего лишнего. Когда зарисовывал схему, складывалось впечатление, что распиновка чипа специально создавалась под конкретную топологию печатной платы, с целью минимизации всех возможных переходов и соединений. Что лишний раз наталкивает на мысль - микросхема UM6561 - есть изделие заказное (а не универсальное, массового производства). В эту пользу говорит и факт отсутствия какой-либо технической документации на данную микросхему, как у самого разработчика - UMC (кстати, достаточно крупного), так и во всевозможных информационных базах. Интересен еще и другой вопрос - "под чей заказ" делалась эта Микро-ЭВМ. Уж не сами ли Стиплер ее заказывали? ;-) С другой стороны - маловероятным кажется и то, что такой крупный мировой производитель электронной базы как UMC приняли заказ на изготовление "чипа" - клона консоли NES (разумеется, при полном отсутствие у заказчика каких любо прав на эту консоль). Тогда под какое применение (официально) был этот чип заказан? - и сколько у него "недокументированных" возможностей? Ладно, оставим мистику в стороне ;-) Хотя о какой "документированности" можно говорить при полном отсутствие какой бы то ни было документации . Все что можно однозначно сказать о Микро-ЭВМ UM6561 - так это то, что в приведенном на схеме включении она полностью (нареканий вроде пока нет) эмулирует работу игровой консоли NES.

Уже в те годы китайцы жмотились на текстолит (хотя и использовали более качественный, нежели в Денди), а также имели неуемную тягу к бескорпусным микросхемам («кляксам»). Почти любая китайская консоль заката эпохи Денди – вторая половина 90-х годов века двадцатого, была сконструирована в виде однокристаллки подобной приведенной выше Dendy Junior II, но в бескорпусном варианте.


На картинке выше фотка центральной платы одной из китайских консолей, внезапно приказавшей долго жить (в далеком 1995-ом) и после почти 20-летнего ожидания в закромах – восстановленной и в настоящий момент вполне себе работоспособной ;-) Трабл был в отказавшем кварце, под замену которого был специально приобретен десяток идентичных ;-) Для удобства тестирования впаяны штыревые гребенки, поменяны резисторы, установлен транзистор …

Расскажу еще о более интересном - о многокорпусных консолях. В 2014 году вновь вспомнилась уже порядком подзабытая тематика о Денди и были куплены у япошек несколько б/у Фамикомов (обзорные материалы о данных консолях размещены отдельно). Здесь же коснемся архитектурной части. Логично, что Фамиком – т.е. NES , рассчитанная на японского потребителя, формирует сигнал в формате NTSC , а радиочастотный модулятор настроен на тамошюю частотную сетку (90 или 96 MHz ). Формат формируемого видео-сигнала определяется вариантом (экземпляром) видеопроцессора ( PPU ). Т.к. схемотехнически различные варианты микросхем PPU идентичны, есть возможность заменить PPU (в случае «многокорпусной» консоли) и тем самым изменить стандарт формируемого видео-сигнала. Так например можно за PAL ить Фамиком … Вместе с процессором нужно будет поменять и «кварц», а в ряде случаев и сам процессор ( CPU ). Варианты «наборов», позволяющих реализовать получение выходного сигнала того или иного формата представим в виде таблицы.

Интерфейс

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


Конечно же, здесь присутствуют и другие настройки. Они позволяют отключить демо — это когда спустя несколько минут по экрану начинает бегать Марио, самовольно запуская какие-то игры. Ещё в соответствующем разделе имеются пункты «Автоматическое выключение» и «Защита от выгорания». С первым мне всё понятно, а от второго я до сих пор в раздумьях. Как может сгореть приставка, которая во время работы почти не нагревается?


Другой интересной возможностью будет выбор режима отображения картинки. По умолчанию ставится 4:3 — такое соотношение сторон имели все кинескопные телевизоры. Но можно выбрать и оригинальное разрешение — в таком случае изображение будет чуть более узким. Отмечено, что раньше разработка игр велась именно с таким нестандартным соотношением сторон, ну а телевизоры уже растягивали картинку. Но наиболее интересным мне показался пункт «Ретро». Картинка при его выборе выводится с соотношением сторон 4:3, но при этом добавляются артефакты в виде двухцветных горизонтальных полос. Это привносит в игру ощущение построчной развертки, которая была в кинескопных телевизорах. Изображение в этом режиме теряет свою четкость, но это вызывает дополнительный приступ ностальгии!


Для сравнения взгляните на один и тот же игровой момент во всех трех режимах:




Само меню в этой приставке реализовано очень просто и красочно. В верхней части находятся иконки всяческих настроек. Туда вы будете заходить крайне редко. Чуть ниже находится название выделенной игры. Ну а ещё ниже находится строка с обложками всех игр, содержащихся в памяти NES Classic Mini. Выбор нужной игрушки осуществляется нажатиями клавиш «вправо» и «влево». Ещё чуть ниже все обложки уменьшены до такого размера, чтобы они поместились на одном экране. Так вы легко можете понять, насколько долго придется листать до, скажем, Super Mario Bros. 3. Под этой лентой из обложек находится строка с подсказками. Здесь можно понять, какие команды вызываются нажатиями разных кнопок. Ну а в самом низу экрана находится логотип NES, размещенный будто бы на крышке отсека для картриджа.


Обложка каждой игры здесь сопровождается дополнительными значками. Один из них свидетельствует о том, сколько человек могут играть в данную игру:

  • 1P — поддерживается только один игрок;
  • 2P белого цвета — поддерживаются два игрока, но играть они будут по очереди;
  • 2P оранжевого цвета — два человека могут играть вместе.

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

Подведение итогов

Многие люди считают NES Classic Mini ненужной игровой приставкой. Чаще всего такие люди недовольны стоимостью продукта. Но мне кажется, что $60 — это вполне приемлемо за такое симпатичное устройство. Также многие геймеры утверждают, что им комфортно играть при помощи эмуляторов. Мне же кажется, что Nintendo показала, что разработчикам таких программ ещё есть куда расти. Ни в одном эмуляторе нет такого прекрасного интерфейса. К эмулятору не получится подключить настоящий геймпад от NES. И я не говорю о том, что для запуска эмулятора требуется включить соответствующее устройство (например, компьютер) и запустить программу. На всё это требуется время. А в случае с NES Classic Mini играть можно спустя 10 секунд после нажатия на кнопку Power!

Мой вывод однозначен: консоль имеет право на жизнь. Более того, я с удовольствием купил бы SNES Classic Mini, если бы таковая была выпущена. И это при том, что у меня никогда не было оригинальной SNES. Приобрел бы я и аналогичный продукт от Sega. Словом, приставка у японцев получилась отличной! Но есть и одна оговорка. Если бы на консоль нельзя было бы так легко закинуть дополнительные игры — я бы покупку не рекомендовал ни в коем случае. Да и сам бы я вряд ли решил бы расстаться с ощутимой для меня суммой.

Обзор NES Classic Mini: не в графике счастье

Обзор NES Classic Mini: не в графике счастье

Общие сведения об архитектуре Денди.

Игровая приставка Денди является микро-ЭВМ для домашнего (игрового) применения (далее речь пойдет именно о Денди – как наиболее распространенной вариации консоли NES, а вернее ее японской версии Famicom, в России), ориентированная на использование телевизора в качестве дисплея. Подключение к телевизору может осуществляться одним из двух способов – «по низкой частоте» (двумя кабелями – звук и композитный видео) или «по высокой частоте» (при помощи «антенного» кабеля). Китайские совместимые поделки, представленные в нашей стране в большом разнообразии – архитектурно совместимы с Денди, однако зачастую имеют ряд схемотехнических «упрощений», не позволяющих полностью реализовать функционал оригинальных консолей (и даже стиплеровской «Денди»).

Денди и прочие клоны консолей NES / Famicom (как в общем-то и их оригиналы) сконструированы на базе микропроцессора (CPU), совместимого с MSC6502 (микросхемы: RP2A03, RP2A07, UM6527, HA 6827 и пр.) и видеопроцессора (PPU) (микросхемы: RP2C02, RP2C07, UM6538, UM6528, HA 6838 и пр.), которые работают в тесном взаимодействии (такая вот «двухпроцессорная» система). Пары CPU + PPU подбираются с учетом формата формируемого кадра – NTSC или PAL . У каждого процессора своё адресное пространство и своя оперативная память (не путать с адресным пространством). Адресные пространства CPU и PPU не пересекаются . Микросхема CPU, применяемая в Денди, имеет встроенный звуковой сопроцессор – pAPU (чего нет у базового процессора 6502), но при этом отсутствует блок двоично-десятичной арифметики. Помимо CPU и PPU, совместно со статической оперативной памятью, работу приставки обеспечивают так же прочие «мелкие» компоненты (регистры, логические элементы), сопрягающие работу всей системы. Архитектура Денди предусматривает хранение (и исполнение) программ со сменных модулей – «картриджей». Об архитектуре картриджа см. ниже – здесь лишь скажем, что часть картриджа адресует CPU, а часть PPU. Изначально плата приставки Денди содержала несколько корпусов микросхем (CPU и память, PPU и память, регистры логические элементы и прочее …) – как и оригинальные консоли. Последние ревизии моделей Денди (1996 год) собраны на заказной микросхеме (UM6561A) – которая совмещает на одном кристалле все «микросхемы» приставки (SoC – System on Chip). В ревизиях моделей Денди более ранних версий можно встретить «гибридный вариант» - память (оперативную и видео) установленную в виде двух отдельных микросхем (UM6516, UM6116 – аналог КР537РУ10), видимо, в центральный «SoC» (xx1818) её нет.

Вне зависимости от элементной базы, структурная схема Денди имеет вид, показанный на рисунке 1.

Из чего состоит приставка денди

Денди спроектирована так, что вся программа и все данные хранятся исключительно на картридже. Сама приставка не содержит никакой постоянной памяти. Картридж устанавливается в разъём, на который выведены как шины CPU, так и PPU (см. приложение 4). До сих пор мы, для простоты и наглядности, ссылались на модель картриджа, содержащую 32k PRG-ROM и 8k CHR-ROM без наличия маппера. Такие картриджи подходят для хранения небольших игр - их память полностью адресуется CPU и PPU. Для большинства же игр такой объём явно недостаточен – поэтому большинство картриджей имеют значительно больший объём памяти (до 1024k PRG-ROM и 1024k CHR-ROM). Понятно, что непосредственно процессор не может адресовать такой объём памяти. В Денди применяется метод «страничной адресации» памяти картриджа. Картриджи большого объёма содержат, помимо микросхем памяти, еще и переключатель страниц (маппер). Маппер («mapper») – комбинационная схема (или контроллер), состояние которого однозначно определяет блоки ПЗУ картриджа, отображаемые в данный момент в адресное пространство процессора, или знакогенератор PPU. Размер переключаемых окон адресного пространства CPU зависит от типа маппера, а с некоторыми мапперами может даже варьироваться, типичные конфигурации - 2*16k, 2*8k+16k, 4*8 k (возможны и иные конфигурации - причем, как правило, последнее окно непереключаемое).

Видов мапперов существует очень много (наиболее распространены около десяти) – каждый из них имеет свой функционал по управлению аппаратной частью картриджа: поддержка того или иного вида и объёма используемых в картридже микросхем памяти, возможность использования дополнительной памяти (ОЗУ), наличие других дополнительных функций (звукового процессора, таймеров и пр.). Мапперы имеют свои (отличные от других) «системы команды» управления их состоянием. Большим количеством модификаций «классических» мапперов мы обязаны «пиратам» - стремящимся либо с сэкономить на железе, любо запихнуть на один картридж много всего разного, а зачастую - и то и другое сразу ;-) Несмотря на все разнообразие (см. перечень мапперов), базовый функционал всех без исключения мапперов по большому счету идентичен – состояние регистров маппера определяет (управляет) старшими линиями адреса микросхем PRG-ROM и/или CHR-ROM (для которых не хватает адресных линий в разъеме картриджа).

И так, при наличии маппера, картридж Денди содержит:

PRG-ROM – микросхема ПЗУ, хранящая программу и данные (неотъемлемая часть любого картриджа). Подключается к шинам процессора. Старшие линии адреса микросхемы ПЗУ, а также управляющие входы подключаются к мапперу (если маппер предусматривает переключение страниц PRG-ROM).

CHR-ROM/ CHR -RAM – микросхема памяти, подключаемая к шинам PPU - возможен один из двух вариантов:

  • ПЗУ (CHR -ROM) – хранит заранее «прошитые» знакогенераторы PPU, которые могут переключаться, если это предусматривает маппер. Подключается к шинам PPU и мапперу (если маппер предусматривает переключение страниц знакогенератора).
  • ОЗУ (CHR -RAM) – статическая память, размером 8k (два знакогенератора). В этом случае «иконки» знакогенераторов должны храниться в PRG-ROM (или генерироваться алгоритмически) и программно (через регистры управления PPU) загружаться в CHR-RAM . Преимуществом такой организации является то, что есть возможность изменения одной иконки знакогенератора (или даже ее части), при сохранении всех остальных иконок неизменными. В предыдущем случае (CHR -ROM ) имелась возможность только выбирать заранее созданные и прошитые в ПЗУ пресеты знакогенераторов (если их несколько) – зато путем переключения можно намного быстрее изменить группу иконок, чем поштучно их подгружать.

Mapper – комбинационная схема (или контроллер), осуществляющие коммутацию блоков микросхем ПЗУ в адресные пространства CPU и/или PPU – т.е. фактически управляет старшими линиями адреса микросхем ПЗУ, для которых «не хватает» адресных линий в слоте картриджа и/или адресном пространстве процессора. Маппер находится на картридже и подключается к шинам CPU и/или PPU и соответствующим микросхемам памяти. Некоторые мапперы состоят из нескольких микросхем. Любая программа (игра) пишется под определенный тип маппера. Т.е., говоря современным языком: драйвер маппера «вшивается» в код программы, более того – он зачастую «размазан» по всему коду … Возможность адаптировать (модифицировать) программу (дамп игры) под другой маппер – задача довольно рутинная – нужно найти и откорректировать все места, где происходит управление маппером.

Также картридж (в редких случаях) может содержать:

SRAM (она же WRAM) - (Адресное пространство CPU $6000-$7FFF) – Статическое ОЗУ, может питаться от компактной батарейки, располагающейся на картридже. Предназначено для «сохранения» игр (если есть батарейка), или просто служит дополнительным ОЗУ (хорошее дополнение). Для него зарезервировано «окно» в адресном пространстве CPU размером 8k (в 4 раза больше встроенного в приставку ОЗУ, а скорость таже и прямая адресация) - существуют картриджи, несущие на борту до 32k ОЗУ (т.е. 4 страницы, переключаемые маппером в этом окне).

Expansion ROM\RAM - (Адресное пространство CPU $5000-$5FFF) – Дополнительные 4k памяти (для CPU). В целом аналогично SRAM (используется, как правило, с маппером MMC5).

VRAM - (Адресное пространство PPU $2800-$2FFF) – «Недостающие» 2k VRAM для двух экранных страниц PPU (3 и 4). Редкая фишка - используется очень немногими играми.

Звуковой процессор - предназначен для более качественного синтеза звука, нежели это реализуется встроенным pAPU (например, в мапперах VRC6, VRC7 и других).

Большинство аппаратных возможностей Денди могут быть использованы (дополнены), например, маппером MMC5 или MMC3 (большинство технологичных игр используют именно их). Разумеется, ничто не мешает разработать новый маппер самому (в архитектуре приставки ничего менять не придется! - всю логику управления маппером содержит программа на картридже), чем китайские разработчики («пираты») увлекаются больше других, а вместе с этим производят и совместимые аналоги «официальных» микросхем мапперов – наиболее популярные из которых следующие:

Программирование мапперов.

В адресном пространстве CPU - адреса $8000-$FFFF выделены для отражения на них памяти картриджа - PRG-ROM. Логически может быть организовано несколько окон, управляемых маппером. Размер и количество окон определяется архитектурой маппера, некоторые типы предусматривают переменный размер переключаемого окна (например, MMC 3). Наиболее распространенный вариант 2*16k, 2*8k+16k или 4*8k - в последнее окно ($xxxx-$FFFF) позиционируется или «хвост» ПЗУ, или его начало. Также, зачастую, последнее окно переключению не подлежит (в нем находятся вектора прерываний).

Каждый маппер имеет определенное количество регистров управления, доступных только для записи. Адресуются они через области, отведенные для PRG-ROM. То есть – чтение из памяти по адресам $8000-$FFFF приводит к чтению ПЗУ (PRG-ROM), а запись, по некоторым адресам из этого диапазона, приводит к записи управляющих слов в соответствующие регистры маппера.

Подробное описание разных мапперов – не цель данного материала, однако некоторые из них рассмотрим подробнее.

Маппер UNROM.

Для примера рассмотрим маппер UNROM – один из самых простейших мапперов, но весьма удобный для знакомства с программированием Денди и написания несложных программ. Он предусматривает работу с PRG-ROM объёмом 128k (17 линий адреса, 3-мя старшими линиями управляет маппер), в качестве CHR используется непосредственно ОЗУ размером 8k (без участия маппера). Маппер строится на базе двух микросхем (74HC161 и 74 HC 32) и программно представлен как один регистр, который отражается на всё пространство PRG - ROM ($8000-$ F FFF). То есть запись по любому адресу из этого диапазона приведет к записи в регистр маппера. Записываемый байт (а вернее 3 младших его бита) определяет блок микросхемы ПЗУ (16k), подключаемый в окно $8000-$BFFF (т.е. при A 14=0) - блоки нумеруются с нуля и с начала адресации микросхемы ПЗУ. В окно $C000-$FFFF (т.е. при A 14=1, вне зависимости от содержимого регистра маппера) всегда подключен последний блок (последние 16k) ПЗУ ( A 14= A 15= A 16=1 на адресных входах ПЗУ). Таким образом, возможен вариант (при « xxxxx 111» в регистре маппера) когда последний блок ПЗУ будет последовательно продублирован в адресном пространстве.

Знакогенератор CHR - RAM - заполняется программно, через регистры PPU ($2006,$2007) – запись должна производиться в адресное пространство PPU, отведенное под знакогенератор ($0000-$1FFF). Вид отражения экранных страниц определяется распайкой (коммутацией) перемычки на плате картриджа.

Принципиальная схема маппера UNROM такова:


Разумеется, на схеме выбор (из двух) логических входов элементов 2-ИЛИ может быть произвольным, как и выбор используемых 3 из 4 таких элементов 2-ИЛИ из микросхемы 74HC32 (аналог «ЛЛ1») – на рисунке изображен один из множества возможных вариантов (точная копия коммутации на примере реализации в картридже на плате HVC-UNROM-03). Счетчик 74HC161 (аналог «ИЕ10») в данной схеме используется фактически как регистр (а не счетчик).

Super Hik.

Маппер 49 (Super Hik 4-in-1).

Многие игры используют далеко не весь функционал, предоставляемый маппером MMC3, и в первую очередь в части размера PRG и CHR. Таким образом, выглядит вполне логичным (с технической точки зрения) создание мульти-игрового картриджа без микросхемы ОЗУ ( WRAM ), где под каждую из игр зарезервирован слот размером 128k (и в PRG и в CHR) – т.е. применение микросхем емкостью 4 мегабита (19 адресных линий). Игр, которым такой объем ресурсов совместно с маппером MMC3 (его аналогом AX5202) достаточен - предостаточно!

Рассмотрим механизм переключения слотов с играми такого мульти-игрового картриджа с точки зрения схемотехники и управления ей. Фактически мульти-игровой картридж « Super Hik» содержит в себе два маппера! ММС3 (полноценный, аппаратный) – именно с ним работают игры (выбранная в данный момент игра), и «маппер верхнего уровня» (этакий «гипервизор») – который обеспечивает выбор слота с игрой, которая и будет запущена … А так как для каждой из игр маппер верхнего уровня прозрачен (что логично), рассмотрим именное его принцип работы.

Маппер верхнего уровня представляет собой регистр «только для записи», доступный в диапазоне $6000-$7FFF. Т.к. за доступ к данному диапазону адресов отвечает MMC3, то необходимо сначала разрешить такой доступ (управляющая команда к MMC3). Конечно жаль, что из-за такого способа обращения к регистру маппера теряется возможность установки на картридж WRAM и стало быть запуска игр, требующих дополнительное ОЗУ по этим адресам, но сейчас не об этом.

Общая цель маппера верхнего уровня проста – обеспечить выбор (адресацию) старших адресных линий микросхем ПЗУ (PRG и CHR) за пределами 128 k , которыми управляет MMC 3. Т.е. должна быть возможность управления линиями A17 и A18 у обоих микросхем ПЗУ, хотя и изменять состояние этих линий предстоит вобщем то не часто: при включении/сбросе приставе на этапе выбора игры (слота с игрой внутри микросхем памяти).

Принципиальная схема «маппера верхнего уровня» внутри «маппера 49» такова:


Таким образом, в регистре маппера присутствуют только 5 бит. С программной точки зрения возможны два режима работы маппера (выбираемые битом D0) в части переключения страниц PRG-ROM.

«Основной режим» ( D 0=1) – в этом режиме слот с игрой (один из четырех) выбирается битами D6 и D7 (выполняют роль сигналов адресных линий A17 и A18 физических ПЗУ как PRG-ROM, так и CHR- ROM ); значение бит D4 и D5 в регистре - безразлично; адресными линиями A13-A16 PRG- ROM и A10-A16 CHR- ROM управляет маппер MMC 3. Игра не выходит за пределы своего слота и управляет только маппером MMC3.

«Альтернативный режим» ( D 0=0) – именно этот режим активируется при загрузке (сбросе), т.к. аналоговая часть схемотехники маппера верхнего уровня (RC-цепочка) сбрасывает весь регистр маппера в ноль. В этом режиме MMC3 не управляет адресными линиями PRG-ROM – ими управляет исключительно маппер верхнего уровня. Биты D6 и D7, как и прежде, подключены к линиям A17 и A18 как и PRG-ROM, так и CHR- ROM (т.е. для CHR-ROM оба режима абсолютно одинаковы) – а вот биты регистра маппера D4 и D5 теперь задают значения адресных линий A15 и A16 PRG-ROM соответственно, а линии A13 и A14 берутся непосредственно со слота картриджа. В этом режиме получается программная модель переключения страниц PRG-ROM, в некоторой степени, аналогичная мапперу UNROM – в данном случае 4 старших бита регистра маппера выбирают одну из 16 страниц размером 32k микросхемы PRG-ROM, подключаемую в окно $8000-$ FFFF (после сброса – самое начало ПЗУ). Повторюсь: переключение страниц CHR - ROM в «альтернативном режиме» происходит аналогично «основному режиму» - линии A 17 и A 18 выбираются маппером верхнего уровня (биты D6 и D7), более младшими битами CHR-ROM всегда управляет маппер MMC3.

В целом, для использования такого симбиоза мапперов в конечном решении, необходимо как минимум вносить изменение в дамп игры, помещаемый в первый слот. Т.е. искать игру у которой, хотя бы, хвост первых 32k дапма свободен для размещения векторов прерываний, а также в этом блоке есть место для размещения их обработчиков (в лучшем случае - кода для реализации меню выбора игр, или накрайняк – для переключения банков «альтернативным способом» на более свободный, где уже и разместить код меню). Не забываем, что картинку меню придется складывать из иконок выбранного блока CHR-ROM (что возможно повлечет необходимость или выбора одной из игр с подходящими символами в одной из страниц, которую нужно будет выбрать двумя мапперами, или поиск игры с неиспользуемыми ячейками CHR-ROM, в которые можно разместить нужные символы).

Комплект поставки

Вторая выпущенная приставка — это NES Classic Mini. Именно о ней пойдет речь в данном обзоре. Она поставляется и в Европу, и в США — отличаются лишь коробки. Слава российскому подразделению Nintendo, в нашей стране приобрести новинку можно в числе первых. По крайней мере, в торговой сети DNS. В США же наблюдается дефицит, там некоторые люди готовы платить на eBay удвоенную цену — в обычных же магазинах найти приставку практически невозможно, настолько быстро её смели с прилавков.


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


На задней стороне коробки находятся обложки и скриншоты 12 игр. Под ними — список остальных загруженных на приставку игрушек. Всё оформлено очень здорово — коробку интересно рассматривать по пути домой. Похоже, что Nintendo задумывала это устройство в качестве подарочного. И действительно, дарить NES Classic Mini можно не оборачивая в какую-то другую упаковку.

Вскрывается всё это дело без использования ножниц. Достаточно отклеить кусочек скотча, как можно достать всё содержимое. Сверху лежит инструкция по эксплуатации, написанная на нескольких языках. Впрочем, использование этой приставки настолько интуитивно понятно, что никакая инструкция не нужна! Не сравнить, например, с экшн-камерой от Sony, где нужно разбираться со значением некоторых пиктограмм в меню настроек.


Кроме всяких бумаг (помимо инструкции в пакетике лежит код на 300 платиновых баллов в Nintendo My Club) в коробке можно обнаружить следующее:

  • Саму приставку в виде уменьшенной NES;
  • HDMI-кабель с имеющимся на нём логотипом Nintendo — его длина составляет 1,5 м;
  • Один геймпад (в простонародии — джойстик);
  • Кабель USB-microUSB без каких-либо маркировок производителя — его длина составляет всё те же 1,5 м.


Итак, чего же не хватает? Пожалуй, только второго геймпада. Увы, его придется покупать отдельно. С этим, кстати говоря, могут возникнуть проблемы. В России подходящих для этой приставки джойстиков завезено очень мало. Не исключено, что придется идти на eBay и заказывать геймпад из-за рубежа.


Кого-то может огорчить отсутствие блока питания. Но производитель предупреждает о том, что его нет в комплекте. Поэтому придраться к данному решению невозможно — покупатель заранее предупрежден. К приставке подходит любое зарядное устройство на 5 В и с силой тока 1 А. Я же поступил ещё проще, подключив USB-кабель к соответствующему порту на телевизоре.

Архитектура и программирование Dendy.

Игровая приставка NES (Nintendo Entertainment System) - версия для Америки, известная также как Famicom (FAMily COMputer) - версия для Японии, в нашей стране, благодаря фирме Стиплер (Steepler), известна как Dendy. И не смотря на то, что в середине девяностых годов прошлого века Денди была действительно «народной» приставкой – со стремительным ростом технического прогресса она сейчас, как игровая система, отошла далеко-далеко на задний план (уступив место ПК и другим игровым консолям). Но именно в сегодняшние дни Денди более интересна не геймерам, а радиолюбителям – как простейшая микро-ЭВМ …

Вопросом программирования Денди заинтересовался и я.

В начале изучения и создания материала, который представлен вам ниже, а именно в 2003 году - разнообразной информацией Интернет не изобиловал (хотя кое-что и было) – вся документация англоязычная (хотя встречались и ее прямые переводы – безо всякого осмысления переводимого). Тогда же вышла даже книга и мультимедийный диск (разных издательств, но одинакового содержания – книга даже более полного) – в которых легко узнавались все теже англоязычные источники (а часть информации взята «с потолка» и абсолютно некорректна). Поэтому многое пришлось осмыслять на практике (весь текст исключительно мой, авторский).

Вторая итерация и второе существенное дополнение и переработка данного материала была в 2007 году … Всего и не вспомнить, некоторые несущественные дополнения и корректировки были и до и после. Также благодаря отзывам читателей были исправлены некоторые недочеты, однако не все изменения сразу публиковались на сайте.

И вот в 2016 году текст очередной, что называется «обновленной и дополненной», редакции перед вами …

Материал ориентирован на читателя, обладающего базовыми сведениями по организации ЭВМ.

Внешний вид

Сложно описать чувства, возникающие при вскрытии коробки. В голове крутится только одна мысль: «Так больше не делают». Действительно, устройство является миниатюрной копией настоящей Nintendo Entertainment System. А это значит, что оно представляет собой ящичек с острыми углами, выполненный из пластика светло-серого и темно-серого цветов. При этом пластик не является глянцевым, хотя и матовым его назвать сложно — это нечто среднее. А теперь вспомните другие электронные устройства, которые нас сейчас окружают. Чаще всего они окрашены в черный цвет, что некоторых уже начинает раздражать. Существуют гаджеты, имеющие белый окрас. Но другие цвета встречаются крайне редко. За счет этого NES Classic Mini кажется, что ли, мультяшной. Когда её вытаскиваешь из коробки — не веришь, что приставка существует в реальном мире. Словом, дивные возникают ощущения, которые в последнее время могут вызвать только очень дорогие устройства, к созданию которых приложили руку умелые дизайнеры.


Давайте пройдемся по разным сторонам приставки. Лицевая панель является пристанищем для светового индикатора, двух кнопок (Power и Reset) и такого же количества разъемов для геймпадов. У оригинальной NES в этом месте находится ещё и крышка отсека для картриджей. Здесь же никакого отсека нет, соответственно и крышка является декоративной — выступ имеется, но тянуть за него бессмысленно. Ещё одно отличие от настоящей NES заключается в форме разъемов для подключения геймпадов.



На задней панели располагаются разъемы HDMI и microUSB. Любопытно, что HDMI является полноразмерным, хотя на такой приставке вполне можно было бы разместить его уменьшенную версию. А ещё сзади есть большая надпись HDMI, которая немного портит впечатление. По всей видимости, её наличие обусловлено лицензионным соглашением по использованию разъема.


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

Словом, консоль получилась симпатичной и минималистичной. Что касается геймпада, то он вовсе не отличается от тех джойстиков, которые поставлялись вместе с NES. Те же размеры, такое же расположение кнопок, такая же расцветка… Не могу судить только о качестве пластика, так как оригинальной NES у меня нет, ориентируюсь только на фотографии. Изменился только провод. Во-первых, его длина укоротилась до жалких 75 см. Во-вторых, на его конце находится разъем, знакомый обладателям приставок Wii и Wii U.



Длина кабеля — это единственная беда геймпада. Придется держать саму приставку неподалеку, либо приобрести в каком-нибудь китайском интернет-магазине удлинитель. Что касается использования джойстика, то здесь нет никаких претензий. Крестовина и две основные кнопки являются пластиковыми. Start и Select выполнены из резины. Вот и все органы управления. Прямоугольная форма контроллера сначала кажется непривычной, но постепенно это чувство улетучивается. Не исключено, что проблемы могут возникнуть при длительной игре. Но мне кажется, что проводить несколько часов подряд за NES Classic Mini никто не будет.


Обратите внимание, к приставке можно подключить Wii Classic Controller. В таком случае у вас появится отдельная кнопка Reset, служащая для выхода в меню консоли.

Возможности приставки

Главное преимущество NES Classic Mini в том, что она позволяет вам поиграть в самые короткие моменты отдыха. Даже если у вас имеются всего 10 свободных минут — вам этого хватит. Когда какая-нибудь GTA V только загрузилась бы, здесь за это время вы уже наиграетесь! Запуск игр происходит одинаково. Вы включаете приставку, нажимая кнопку Power, выбираете игру, при необходимости выбираете точку приостановки, после чего остается лишь нажать кнопку Start или A. На всё это уходят примерно 10-15 секунд!

Возможность сохранения здесь позаимствована из традиционных эмуляторов. Но визуально она реализована гораздо лучше. Возможность сохранить процесс появляется после того, как вы нажали на кнопку Reset. В отобразившемся меню вы видите маленький скриншот из вашей последней игры. Если в этот момент нажать кнопку «Вниз», то вы увидите четыре окна. Это четыре слота сохранения. Далее остается лишь выбрать любой из слотов и нажать кнопку A, чтобы точка приостановки осталась в памяти устройства. Или зажать эту кнопку, если в слоте имеется другое сохранение — тогда оно будет вытеснено новым.


Получается, что к каждой игре можно создать до четырех точек сохранения. Это очень удобно, если игра имеет нелинейную структуру или же приставку использует большая семья. Любую точку приостановки можно заблокировать, чтобы случайно её не стереть. Единственное неудобство такого способа сохранения — нужно тянуться к приставке для нажатия кнопки Reset. В обычных эмуляторах этот процесс реализован проще, там можно задействовать специальное сочетание клавиш, после чего игровой процесс моментально сохраняется — при этом вы продолжаете играть, ни в какое меню вас не выбрасывает. Но зато в NES Classic Mini вы не будете сохраняться каждые 10 секунд, вас ждет более честный игровой процесс. Хотя это не сравнится с оригинальными NES, Famicom и Dendy, где возможность сохранения присутствовала лишь в очень и очень немногих картриджах.

Как ни странно, больше никаких возможностей данная приставка не предлагает. Это вам не мультимедиа-комбайн, которым можно назвать любую современную консоль. Но и стоит Nintendo Classic Mini: NES гораздо дешевле, чем PS4, PS3, Xbox One или даже PS Vita.

Как уже было сказано выше, устройство содержит в своей памяти лишь 30 игр. А всего их было выпущено в своё время более двух тысяч! Поэтому набор может показаться скудным. Наименования всех предустановленных игрушек я писать не буду — этот список легко можно найти на страничке с кратким описанием приставки. Скажу лишь, что здесь нет «Танчиков» и некоторых других популярных в нашей стране игр. Но самое страшное то, что по умолчанию их добавить никак нельзя! Подключение к компьютеру ничего не даст, нужный драйвер не установится, а внутренняя память останется зашифрованной. Но Nintendo неспроста не пишет на коробке, что сюда невозможно загрузить дополнительные игры. Похоже, что в японской компании понимали, что хакеры обязательно сломают не особо сложную защиту. И действительно, спустя примерно месяц после релиза NES Classic Mini в сети появились первые программы, позволяющие загрузить на приставку самые обычные ромы.

На моей приставке сейчас находятся примерно 75 игр. Например, я добавил Contra, Chip `n Dale Rescue Rangers, Flying Hero и многие другие игры, которые я очень любил в детстве. Скажу честно, я нахожусь сейчас в диком восторге. Игра на эмуляторе у меня подобных чувств никогда не вызывала! Кстати, после взлома появился ещё один способ выхода в меню — для этого нужно на короткий промежуток времени одновременно зажать клавиши «Вниз» и Select. Это сделало использование консоли ещё более удобным, теперь действительно есть повод обзавестись удлинителем для геймпада.

Предистория

Компания Nintendo была основана задолго до выпуска NES. Но именно эта приставка позволила японцам выйти на новый уровень. Об их игровых консолях узнали во всём мире. Также именно во времена Nintendo Entertainment System были придуманы Марио, Боевые жабы, Линк и многие другие персонажи, игры с присутствием которых выходят до сих пор.

В США приставка вышла в октябре 1985 года. Специально для этого рынка был произведен редизайн консоли и картриджей. Да и название сменилось на NES. Если устройства под названием Famicom затем клонировались китайцами, после чего они попадали на наш рынок, то коробку серого цвета с внутренним отсеком для картриджей в России никто и никогда не видел. И это несмотря на то, что релиз NES позже произошел и на территории цивилизованной Европы.

Читайте также: