NES и NES Classic Mini

В Metro седня сфоткал:
IMAG1419.jpg

500р всё удовольствие + рядом ещё такая же сега за 900р лежала)
 

Вложения

  • IMAG1419.jpg
    IMAG1419.jpg
    536,3 КБ · Просмотры: 1.082
  • Like
Реакции: dimm
вроде у этих с совместимостью проблемы на уровне железа, т.е. не победить.

Да я вообще крайне скептически отношусь ко всем этим девайсам - оригинальные консоли стоят не так дорого, а играть на них гораздо приятнее и аутентичнее. Хотя там тоже есть свои подводные камни - например оригинальную сегу неговняной ревизии (с норм чипом на видео и звук) за вменяемые деньги найти не так и просто.
 
Новых фоток вам:
_1874803.png

_1874823.png

_1874793.png

_1874693.png

_1876123.png
 
Madmonkey (с GBX.ru) сделал нехилый ресёч и написал гайд по добавлению своих ромов в библиотеку NES Classic. Он успешно добавлял 5 игр, все работало. Метод чисто софтовый, никаких разборок и подпаек:
Гайд для винды(уарт не нужен!):
1. Берем драйвер отсюда http://linux-sunxi.org/FEL/USBBoot#Using_s...-fel_on_Windows
ставим с помощью zadig.
включаем FEL режим - http://linux-sunxi.org/FEL
, втыкаем юсб в комп, зажимаем ресет, держим, включаем повер, держим ресет еще пару секунд, отпускаем.

2. Качаем тулзу отсюда https://github.com/madmonkey1907/hakchi/releases
Дампим uboot и kernel. uboot md5 должен быть b13b538f6b7c86623ceea69c456d4eb5, если нет, загрузчик наверное лучше не переписывать.

Тулза обновлена до версии v1.0.1!

3. Готовим ром. Ром - директория, не файл. Тулза для ромов с примером тут:
https://www.dropbox.com/s/3t3wrkhw26shro0/n...omtool.zip?dl=0


4. Ромы кидаем сюда:
mod/hakchi/transfer/rootfs/usr/share/games/nes/kachikachi/
если выскакивает ошибка с lzop, правим
bin/extractimg.bat
lzop -d "%inpath%\%infile%-ramdisk.gz" -o "%inpath%\initramfs.cpio" <nul
bin/makeimg.bat
lzop --best -f -o "%inpath%\%infile%-ramdisk.gz" "%inpath%\initramfs.cpio" <nul
нужно добавить <nul в конец строки


5. В тулзе unpack kernel + repack kernel

6. В тулзе же memboot, неска получит файлы и выключится

7. Снова включаем FEl, в тулзе flash kernel

1. Как удалить ромы которые сам зашил?
2. Можно ли на главном экране изменять в описании игры что игра не на одного, а на 2 игроков.
3. В названии игр на главном экране отображается расширение файла *.nes можно ли убрать?


1. нужно запомнить сгенеренное имя директории
mod/hakchi/transfer/transfer
CODE
rm -rf $rootfs/usr/share/games/nes/kachikachi/ИМЯРОМА
docopy=y

rebuild kernel.img и сделать memboot
2 и 3 да. после того как тулза для ромов отработала, нужно подредактировать файл *.desktop. это текстовый файл.
тулзу обновил, теперь можно кидать конфиг вместе с картинкой и ромом, то что в конфиге не заполнено, тулза заполнит.

еще забыл сказать - kernel нужно прошить только один раз, в дальнейшем только memboot. не стоит флеш без надобности дергать!

А максимум сколько памяти есть? Ну в смысле сколько ромов влезет.
nandc раздел 384мб вроде, попозже посмотрю поточнее. метров 20 из них съедает установка. + там же хранятся все сейвы. мне больше интересно сколько оболочка выдержит. я сам еще не успел это проверить. максимум что я добавлял - 5 ромов, до общего количества 35. пару сотен сразу заливать не рекомендую.

(Demonyx @ Среда, 04 января 2017, 18:27)
Кто-нибудь тестировал на максимальное количество впихиваемых игр?
вчера залил себе 47, всего 77 в списке - пока работает. но все-таки есть вероятность что при определенном количестве оболочка перестанет запускаться. тогда нужно будет часть удалить.
(antioh @ Среда, 04 января 2017, 19:20)
возможно ли в тулзе сделать чек на kernel, чтобы он сам проверял нужно перезалить его или он уже нужный?
можно, но сложно, и в конечном итоге все равно нельзя просто так отказать в перезаписи, один фиг мессаджбокс выводить.
(Cluster @ Среда, 04 января 2017, 20:00)
Во всём этом меня поражает то, что официальный эмулятор запускает ромы в iNES формате, который разработан пиратами. Интересно, какие мапперы поддерживаются. Проверил MMC5 - работает! А вот VRC2 и VRC6 - нет
sad.gif
Возможно, они поддерживаются в Famicom mini, всё-таки эти мапперы были только в Японии.
69й маппер тоже не работает. Похоже, поддерживаются только самые популярные: NROM, MMC1, MMC2, MMC3, MMC4, MMC5, UxROM, CNROM и AxROM - их все я проверил.
fds то проверил? вот это меня реально поразило.
(Cluster @ Среда, 04 января 2017, 20:00)
Вообще хотелось бы узнать - за что отвечает kernel, за что memboot?
kernel - переписать загрузчик с нашим модом, чтобы не делать каждый раз мембут, в остальном все один в один. почти, кроме notx.
(Cluster @ Среда, 04 января 2017, 20:00)
Почему перед прошивкой kernel вызывается makeimg.bat с параметром "notx", что генерирует образ без игр, как я понял?
без директории transfer. там не только игры можно переносить, а все что угодно. но, запись этой директории в загрузчик приведет к тому что файлы из transfer будут перезаписываться на каждом старте. у нанд количество циклов перезаписи все таки ограничено, 10^5 вроде, надо даташит посмотреть чтобы поточнее сказать.
(Cluster @ Среда, 04 января 2017, 20:00)
Почему rebuild kernel из программы и запуск makeimg.bat вручную дают kernel.img разного размера? В последнем случае он явно больше, и только так у меня появляются новые игры.
здесь явно какой-то косяк. такого не должно быть.
(Cluster @ Среда, 04 января 2017, 20:00)
По какому принципу работает мод? Все модификации производятся же в ramfs, но не затрагивают NAND?
Почему если я удаляю из сборки игры, пересобираю kernel и делаю memboot, то удалённые игры остаются?
модификации затрагивают nand. изначально на нанд есть два раздела; nandb - squashfs (~20mb) c операционкой, и nandc (~384mb) где хранятся сейвы. маунтится примерно так
nandb -> /
nandc -> /var/lib/
мы это оставляем без изменений, но дополнительно создаем mkdir -p /var/lib/hakchi/rootfs/{bin,etc,usr} маунтим сверху
/bin/ -> /var/lib/hakchi/rootfs/bin/
/etc/ -> /var/lib/hakchi/rootfs/etc/
/usr/share/games/nes/kachikachi/ -> /var/lib/hakchi/rootfs//usr/share/games/nes/kachikachi/
таким образом все что нужно в принципе можно перезаписать.
(Cluster @ Среда, 04 января 2017, 20:00)
Как можно сдампить весь NAND?
есть два способа. можно в тулзу добавить функцию прочитать весь флеш от начала и до конца, но полученный таким образом дамп надо будет еще обработать. вот тут две ссылки с кодомhttps://www.reddit.com/r/nesclassicmods/com...o_and_shuffle2/ но эти ребята дампили именно сам чип физически, не из убута или кернела, поэтому 1в1 код работать не будет. ну и плюс я не понял зачем там аес декриптер, это все прекрасно просто маунтится под линуксом.
второй способ тупо задампить через уарт логические разделы.
minicom -C
dd if=/dev/nandb bs=128K | gzip | hexdump -v -e '64/1 "%02x""\n"'
и в репе есть тулза которая это обработает обратно в файл. c xxd у меня не получилось подружится.
(Cluster @ Среда, 04 января 2017, 20:00)
По какому принципу генерируется имя CLV-H-xxxxx? Это может быть любой набор букв?
насколько я понял, евр/юса использует формат CLV-P-NAXXE а япония CLV-P-НAXXE, но оболочке по всей видимости на это вообще пофигу, все что ей нужно, чтобы testid в desktop был меньше 999. нужно еще посмотреть, может testid не только за это отвечает. я сделал чтоб генерилось похоже, вычисляется crc32 рома, и дальше генерятся символы тупо crc32 mod 26. рандомности должно хватить. если проверить что действительно пофиг на имя директории, можно поменять конечно.

(Aleksey Osipenkov @ Четверг, 05 января 2017, 00:48)
Проделал всё на XP и машине с другим железом, всё 1в1 повторилось. Пока на паузу ставлю, до выяснения
smile.gif
вот это вот хорошо, ибо хп у меня есть, а вот семерки нет до конца праздников. проверю.

Добавлено спустя 2 минуты:
и тут я дошел до лимитов движка форума
smile.gif


(antioh @ Четверг, 05 января 2017, 00:50)
при сборке тулзы под лин в 3rdparty залил git`ы mkbootimg и sunxi-tools изменил ссылку на busybox
а зачем ссылку менять? за 2 дня то она не должна была помереть.
git submodule init запускался? если нет, то rm -rf 3rdparty;git checkout .;git submodule init;make
если не поможет find . -type f в директории с репой, мне кажется какие-то пути где-то неправильные.

Добаловался С8:An error has occurred
Создал файл transfer без расширения в директории mod/hakchi/transfer/
туда вбил
rm -rf $rootfs/usr/share/games/nes/kachikachi/CLV-H-GVPJE
docopy=y
затем rebuild kernel.img
затем memboot
И ВСЕ С8:An error has occurred
консоль включается черный экран
Что делать или все конец?

конец вы таким путем не получите даже при желании.
попробуйте туда же забить:
rm -rf $rootfs/etc/preinit
rebuild и memboot

это переустановить и удалить все добавленые ромы.

Помогло
Слава богу спасибо
Так а теперь чтобы по новой залить надо все сначала или только
rebuild и memboot ?
только rebuild и memboot
перепрошивать kernel больше не нужно. собственно, опасность что-то убить только на этом шаге и есть
 
Все, процесс полностью автоматизирован. Cluster с GBX.ru написал утилиту Hakchi2 с GUI для максимального упрощения процесса добавления, удаления, систематизации ромов, а также прошивки консоли:
LREOWeZ.png


Требования: Windows 7 и выше (на XP не проверял), .NET Framework 3.5

Установки не требует, просто распакуйте в удобное место. В два клика добавляем игры, при необходимости меняем их параметры и жмём кнопку. Программа понятно объяснит, что надо делать с консолью, поможет легко установить драйвер, сама сдампит ядро, сама его пропатчит, сама зашьёт.

Что умеет:
  • Позволяет легко добавлять игры и держать в порядке библиотеку игр

  • Позволяет легко менять параметры игр - количество игроков, дату выхода и пр.

  • Для продвинутых пользователей позволяет менять параметры запуска игр

  • Умеет автоматически гуглить обложки для игр

  • Автоматически исправляет неверные заголовки ромов по своей базе

  • При добавлении игр проверяет, поддерживаются ли их мапперы

  • Позволяет убирать стандартные 30 игр при необходимости

  • Интерфейс на русском и английском языках
Это бета-версия, замечания и предложения приветствуются.

Огромное спасибо madmonkey за идею и помощь. Мои скрипты без проблем ставятся поверх его, но программа ругнётся на неизвестный MD5 ядра.
 
Есть какое-то преимущество перед Paspberry PI с RetroPie/RecallBox, кроме того, что железо от китайцев Nintendo?
 
Теоретически на NES Mini можно эмули MD и SNES запустить. Не знаю, будут ли с этим заморачиваться. Железо в принципе позволяет:
Mini NES in any way, then it includes a dual-core Mali-400 GPU which could be powerful enough to pump out as many as 55 million triangles per second (in its 28nm 500MHz variant). There's also a quad-core ARM Cortex-A7 CPU, which has been clocked at 1.2GHz in smartphones, as well as 256MB of DDR3 RAM and 512MB of NAND flash storage.
 
Вообщем использовал метод из этого диммовского поста и опробовал ~30 ромов

IMG_20170107_164143.jpg IMG_20170107_164140.jpg


Снимок.JPG


Во все вышеупомянутые игры поиграл примерно по 5 минут - проблем обнаружено не было. Micro Machines не запустилась, но она и не лицензированна нинтендой была. Хотя Тетрис от тенген запустился. Руссифицированный Митсуме Га Тору тоже. Как и ещё несколько фамиконовских ромов которые я успел опробовать (Karateka, Battle city). В меню консоли иногда случаются фризы, но уменьшив до минимума обложки некоторых игр вроде удалось побороть эту проблему.

Если у кого есть вопросы по работоспособности определенных ромов - задавайте, протестирую. Также, позже, запощу работоспособную сборку маст-хэвов.
 

Вложения

  • IMG_20170107_164143.jpg
    IMG_20170107_164143.jpg
    201,9 КБ · Просмотры: 650
  • IMG_20170107_164140.jpg
    IMG_20170107_164140.jpg
    130,9 КБ · Просмотры: 645
  • Снимок.JPG
    Снимок.JPG
    47,9 КБ · Просмотры: 558
Последнее редактирование:
Видеогайд по установке мода с помощью проги от Cluster:

Большое спасибо madmonkey за сам мод и рисёч вообще, и Кластеру за его великолепную софтину!

P.S. Утилиту он кстати обновил, находится там же: http://clusterrr.com/soft/hakchi2.zip
Some bugfixes and now you can select two players game type - simultaneously or not.
Достаточно заменить exe-файл из архива.
 
Вообщем использовал метод из этого диммовского поста и опробовал ~30 ромов
А можно потом как-нибудь в текстовом виде списочек игр, желательно с указанием региона, там где (Е), (U) или (J). Чтобы искать проще было и именно то, что нужно. А то шибко много версий одной игры может быть. Кластер вроде говорит про ограничение в 128 ромов. Сама оболочка NES mini на большее не рассчитана. Я считаю этого вполне достаточно, тем более всегда поменять можно список.
 
Залез в свой шкапчик, в котором хранятся сотни дисков с образами PS2/GameCube/Dreamcast и обнаружил банку с болванками ромов для MAME/MD/SNES и прочих NEO-GEO. Среди всего этого богатства обнаружил диск с архивом NES, в котором около 9000 ромов =) Там половина понятно, что всякий хлам типа хаков и многоигровок, но игры согласно списка Свайна и еще кое-что уже выудил оттуда. И не нужно мудохаться выкачивать по одному с емулэнда.
 
А можно потом как-нибудь в текстовом виде списочек игр, желательно с указанием региона, там где (Е), (U) или (J). Чтобы искать проще было и именно то, что нужно. А то шибко много версий одной игры может быть. Кластер вроде говорит про ограничение в 128 ромов. Сама оболочка NES mini на большее не рассчитана. Я считаю этого вполне достаточно, тем более всегда поменять можно список.

Сделаю завтра-послезавтра, а ещё я ромы прям архивом подвешу уже с обложками. Проверил ещё 10 ромов кстати. Есть проблемы - Battletoads виснет на втором уровне. Mr. Gimmick не запускается из-за неподдерживаемого мэппера.
 
Сделаю завтра-послезавтра, а ещё я ромы прям архивом подвешу уже с обложками. Проверил ещё 10 ромов кстати. Есть проблемы - Battletoads виснет на втором уровне. Mr. Gimmick не запускается из-за неподдерживаемого мэппера.
можешь blaster master проверить?
e536fc31d3ecf86c6bd203fa5533e221.jpg
 
Кластер обновил свою прогу до версии 2.05 и как он пишет она имеет поддержку FDS! Это все конечно еще в стадии эксперимента, но пробуйте в любом случае. Находится там же http://clusterrr.com/soft/hakchi2.zip.
Напоминаю что для апгрейда проги нужно заменить только hakchi.exe и папку ru-RU. Если вы все папки замените, то у вас не сохранятся настройки и прога с каждой новой версией будет перепрошивать ваше модифицированное ядро (а оно вам надо?).
Кстати, Кластер рекомендует использовать амерские версии игорей - с меткой (U) в названии. Они даже в европейских миниках записаны.
 
можешь blaster master проверить?
e536fc31d3ecf86c6bd203fa5533e221.jpg

Работает, но не без визуал-багов. Чем больше на экране "пола" - тем ярче картинка. Стоит подпрыгнуть немного вверх и части пола уйти из кадра - ка общая яркость начинает немного падать. В режиме пешехода с видом сверху всё ок. Для игры не особо критично, но всё же.

Кластер обновил свою прогу до версии 2.05 и как он пишет она имеет поддержку FDS! Это все конечно еще в стадии эксперимента, но пробуйте в любом случае. Находится там же http://clusterrr.com/soft/hakchi2.zip.
Напоминаю что для апгрейда проги нужно заменить только hakchi.exe и папку ru-RU. Если вы все папки замените, то у вас не сохранятся настройки и прога с каждой новой версией будет перепрошивать ваше модифицированное ядро (а оно вам надо?).
Кстати, Кластер рекомендует использовать амерские версии игорей - с меткой (U) в названии. Они даже в европейских миниках записаны.

Кстати все ромы которые я тестил либо американские, либо японские (если в америке не выпускали)
 
Еще не все известили о русских хакерах :)
 
Назад
Сверху