Forums Logo

Здравствуйте Гость ( Вход | Регистрация )

Доступ из России

Для сохранения достпа из России к сайту и форуму GBX

используйте VPN или расширение к браузеру Firefox - FastProxy.

[ Каскадный ] · Стандартный · Линейный

> Флэш картридж для Dendy

thrash'em_all
post Понедельник, 15 сентября 2008, 19:03
Отправлено #1


Продвинутый
**

Группа: Пользователи
Сообщений: 63
Регистрация: 02 мар. 2008
Из: Уфа
Пользователь №: 25 858





Нашел в нете флэш карик на мегадрайв и вот хотелось бы узнать, а где бы найти для денди, кто в курсе?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
 
Reply to this topicStart new topicStart Poll
Ответов
X-user
post Понедельник, 25 октября 2010, 19:18
Отправлено #2


Новичок
*

Группа: Пользователи
Сообщений: 25
Регистрация: 07 окт. 2010
Пользователь №: 38 524





http://www.raphnet.net/electronique/nes_cart/nes_cart_en.php
такое вот нашел и перевел для вас (думаю хорошо бы было в стики запихнуть):

user posted image
У меня есть NES (Nintendo Entertainment System) в очень хорошем состоянии. К несчастью, у меня немного игр, а некоторые довольно трудно найти (например: Bubble Bubble). Поэтому решил поковыряться в картридже, чтобы научиться самому записывать на него софт по своему выбору, будь это игры, демки, самопальные игры или возможно, когда нибудь, мои собственные программы.

user posted image
Я использовал два флеш-чипа AT49F002 (256K). Прошивал я их универсальным eprom-програматором. Чипы и сокеты такие толстые, что я не смог закрыть картридж. Поэтому я прорезал отверстие в корпусе. Таким способом будет проще заменить чипы (не надо будет открывать картридж).

Картридж для nes обычно состоит из двух ромов (rom). Один ром используется CPU и содержит программу, а другой ром используется PPU (Picture Processing Unit) и содержит графику. Эти два рома располагаются на отдельных шинах. NES CPU может адресовать только 16 бит, что означает 65536 байт памяти. Память разделяется на две половины: первые 32K для ОЗУ и ввода/вывода, а вторые 32K отводятся под ром из картриджа. PPU имеет схожие ограничения. Чтобы использовать больше памяти, на картридже ставят специальне чипы. Они называются "мапперами" и делают возможным переключение банков памяти. При помощи переключения банков памяти можно указать диапазон адресов (для CPU) в каком либо месте рома. например: Диапазон адресов $C000-$FFFF который обычно указывает на диапазон $4000-7FFF в роме может указывать на $8000-$C000. С точки зрения CPU это прозрачно. (кроме самой операции переключения банка).

Существует много разных чипов-мапперов, и некоторые из них очень сложны. Маппер в моем картридже - MMC1 от Nintendo. Здесь есть немного документации по нему: mmc1.txt.

Так как я хотел поиграть в Bubble Bobble, а эта игра использует MMC1, то пришлось использовать картридж игры Motor City Patrol который так же использует MMC1.

В картридже также есть чип защиты (CIC). Чип CIC соединяется с таким же чипом внутри приставки. Если соединение успешно, то чип приставки перестает выполнять постоянный сброс и игра запуститься. Я просто оставил чип на своем месте.

Я выбрал флеш-память Atmel AT49F0002 (256K) потому что у меня завалялось немного. Контакты ромов от Nintendo и моей флеш-памяти различаются. Пришлось вырезать дорожки на плате и подпаять немного проводов. К счастью, было немного различий. Здесь документ, из которого я узнал распиновку ромов от Nintendo: NES_ROM_Pinouts.txt.
А здесь другой документ, в котором я нашел распиновку маппера MMC1: rom.txt.

В интернете, обычно ромы распространяют в формате ".nes". Файл ".nes" содержит данные из двух ромов картриджа (PRG и CHR) и заголовок с обозначением использованного маппера, типа перенаправления, и размеры ромов. Мне понадобился инструмент для извлечения этих двух ромов, который будет работать под Linux, поэтому я написал свой собственный.

Я написал 3 простых инструмента: readnes, nesgg и patchnes.
Исходники на C: nesutils-1.0.tar.gz
Исходники на C + бинарники DOS: nesutils-1.0.rar


readnes:

./readnes rom.nes [num repeats prg] [num repeats chr]

readnes считывает заголовок .nes, пишет использованный маппер, мирроринг, пишет количество банков prg и chr и создает 2 файла: один с данными рома PRG и другой файл, содержащий данные CHR.

Содержимое рома PRG или CHR может быть записано в файл PRG или CHR более одного раза. Для меня это было полезно когда надо было записать 128К-игру в 256К-картридж. Из за способа использования MMC1, линия A14 менялась и считывались непрограммированные данные. После повторения одинаковых данных по 2 раза в PRG состояние линии A14 перестало быть важным.

Пример:
$ ./readnes BUBBLE.NES 2 1
File length :262288 Bytes
NES PRG: 08 CHR: 10 MAPPER: 11 44
Nintendo MMC1
Flags: 01
V
PRG 8 pages of 16kb (131072 bytes)
CHR 16 pages of 8kb (131072 bytes)
End at 262160
Remaining bytes: 128
BUBBLE BOBBLE From MINDRAPE and EFX

Writing BUBBLE.prg
.
Writing BUBBLE.chr
..
Все, что осталось сделать - это записать .prg и .chr в Flash/ROM.

Чтобы прошить флешки, я использую старый универсальный программатор от xeltek. Возможно купить универсальный программатор с E-bay примерно за $50. Но возможно собрать и свой программатор, так как в даташитах на флешки написано как их прошить.

Здесь мы видим SL-ROM-6 pcb от картриджа Motor City Patrol. Я заменил ромы двумя 32-пиновыми сокетами. Я также изменил плату таким образом, чтобы распиновки сокетов и флешек AT49F002 совпали. Это трудновато увидеть на картинке, но чипы на самом деле в сокетах.
user posted image

Вот некоторые фото моих картриджей, запрограммированых и работающих:
user posted imageuser posted image

Несколько дней спустя, я понял что могу записать две 128K-игры в мои 256К-чипы. Выбор игры(или банка) для использования так же просто, как поставить высокий или низкий уровень на самый значящий адресный бит (Правый переключатель). Для сохранения поддержки 256Kb-игр, я просто соединяю сигнал от маппера к самому значащему биту, как это было до этого (Левый переключатель).
user posted image

Пришлось вырезать больше дорожек, чтобы перенаправить сигналы. Фото проводки: user posted image

Ссылки:
Лучший сайт с информацией о NES из найденных мной: http://nesdev.parodius.com/
Даташит AT49F002: doc1017.pdf
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Posts in this topic
thrash'em_all   Флэш картридж для Dendy   Понедельник, 15 сентября 2008, 19:03
MaD   http://www.retrousb.com/index.php?productID=133   Понедельник, 15 сентября 2008, 19:07
thrash'em_all   ух ты) а он только на НЕС или на денди тоже будет ...   Понедельник, 15 сентября 2008, 19:11
MaD   Через переходник думаю будет.   Понедельник, 15 сентября 2008, 19:18
thrash'em_all   ясно даже есть лайт за 35 багсоу) но только вот ни...   Понедельник, 15 сентября 2008, 19:39
sergi   Говорят что сей девайс купить нельзя, автор сказал...   Понедельник, 15 сентября 2008, 20:05
MaD   Раньше продавались, даже пару человек знаю кто их ...   Понедельник, 15 сентября 2008, 20:12
svk   Ещё есть флешка в проекте у неофлеш, скоро должен...   Понедельник, 15 сентября 2008, 20:41
thrash'em_all   это было бы здорово)   Понедельник, 15 сентября 2008, 20:54
Kacceta   Флеш-Картридж для Денди будет поддерживать игры то...   Понедельник, 15 сентября 2008, 22:16
MaD   Практически все мапперы можно эмулировать на одном...   Понедельник, 15 сентября 2008, 22:55
thrash'em_all   одна уже появилась в продаже http://www.retrousb.c...   Среда, 17 сентября 2008, 17:46
sergi   Чет шняга по характеристикам какаято - как раз на ...   Среда, 17 сентября 2008, 17:54
Kacceta   У меня есть нечто подобное, но без Turtles 2. Да и...   Среда, 17 сентября 2008, 19:36
sergi   А тут чисто штатовские игры, все на инглише, логот...   Среда, 17 сентября 2008, 20:08
VIK   tav себе сделал такой и на другие консоли, я вот т...   Четверг, 18 сентября 2008, 12:38
falconpunch   Полцарства за такую флешку! :)   Четверг, 18 сентября 2008, 13:23
sergi   Да полноценной флешки не может быть на денди - кар...   Четверг, 18 сентября 2008, 13:33
Ashen   Почему бы и нет? У меня где-то дома валяется нача...   Четверг, 18 сентября 2008, 15:53
sergi   Да никто не говорит что это невозможно, я даже зна...   Четверг, 18 сентября 2008, 15:57
Ashen   Про первую штуку слышал. Но это всё же не то. Ког...   Четверг, 18 сентября 2008, 16:47
sergi   Да дело не в железе, насамом деле дело в игре, есл...   Четверг, 18 сентября 2008, 17:03
Ashen   Дело не только и не столько в платформе, сколько в...   Четверг, 18 сентября 2008, 21:20
sergi   И много воссоздал? :+   Четверг, 18 сентября 2008, 23:12
Ashen   Лично я нет. Я пока только набираюсь опыта в VHDL...   Пятница, 19 сентября 2008, 08:25
sergi   Лучше бы MMC1 маппер и MMC3 маппер разобрался как ...   Пятница, 19 сентября 2008, 14:56
Ashen   Можно попробовать^_^ Главное схемку добыть включе...   Суббота, 20 сентября 2008, 00:13
sergi   В инете есть и распиновки мапперов и включение их ...   Суббота, 20 сентября 2008, 07:17
Ashen   О, всё знаешь, всё имеешь, а мне боевую задачу ст...   Суббота, 20 сентября 2008, 11:25
sergi   Я нео-гео интересуюсь и тем более вопрос в сборк...   Суббота, 20 сентября 2008, 12:48
6814tav   Боюсь, что тогда твоя плата, с маппером на логике...   Понедельник, 22 сентября 2008, 21:21
sergi   У меня есть PV-Backup уже готовый вместе с плис мо...   Понедельник, 22 сентября 2008, 23:23
Ashen   http://n64.icequake.net/mirror/valeryia/html/pvba...   Вторник, 23 сентября 2008, 09:28
6814tav   Спасибо :E Я уже просил тебя поделиться инфой по...   Вторник, 23 сентября 2008, 08:28
Gashik   :D sergi, а какая цена, если не секрет, можешь озв...   Вторник, 23 сентября 2008, 08:39
sergi   Помоему я 3000 гдето просил, ну собственно себесто...   Вторник, 23 сентября 2008, 08:43
Ashen   Т.е ты просил 3k рублей за полную инфу? С прошивк...   Вторник, 23 сентября 2008, 09:01
sergi   Ну я ясно-понятно что полностью плата с запчастями...   Вторник, 23 сентября 2008, 09:10
sergi   Да, только там ни плат ни деталей бесплатно не рас...   Вторник, 23 сентября 2008, 09:31
Ashen   А кто мешает это всё самому собрать? К тому же ту...   Вторник, 23 сентября 2008, 09:38
Страниц: 4  1 2 3 > » 


Reply to this topicStart new topic
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
 

Упрощённая версия Сейчас: Вс., 25 окт. 2026, 06:51
Skin Designed (c) by Rooq.net, All Rights Reserved.