| Приставки > Картриджи / диски |
| Конструктор многоигровых ROM'ов для картриджей COOLBOY |
| << < (44/46) > >> |
| Cluster:
Обновление тут. Наконец-то я довёл до ума и выложил в паблик свой конструктор многоигровых ROM'ов для картриджей COOLBOY (и клонов): Исходники: https://github.com/ClusterM/coolboy-multirom-builder Вот тут можно скачать релизы: https://github.com/ClusterM/coolboy-multirom-builder/releases Пожалуйста, поправьте там мой корявый английский в документации, если кому не сложно. Возможности: * Умеет собирать ROM'ы-многоигровки вмещающие до 768 игр, которые потом можно записать на дешёвые китайские картриджи COOLBOY * Автоматически создаёт меню для выбора игр * Может автоматически сортировать игры в меню по алфавиту, если нужно * Позволяет использовать свою собственную картинку в меню сверху * На новых картриджах, которые перезаписываются без пайки, меню сохраняет последнюю выбранную игру и до 15 отдельных батареечных сохранений * Поддерживается много разных версий картриджей * Меню имеет встроенные аппаратные тесты * Меню может показывать информацию о сборке и железе, если при включении зажать SELECT * Позволяет добавлять несколько скрытых ROM'ов для запуска комбинациями кнопок или через Konami Code Принцип работы: * Создаём текстовый файл с именами файлов и/или директориями, содержащими ROM'ы. При желании можно указать там же, как игры будут называться в меню. * Запускаем утилиту CoolboyCombiner.exe с опцией "prepare", она автоматически распределит данные игр наилучшим способом и создаст файлы "games.asm" и "offsets.xml" (имена могут отличаться). Первый содержит данные для запуска игр, а второй адреса этих игр в итоговом ROM'е. * Компилируем "menu.asm", используя nesasm. Я использую свою собственную модификацию nesasm: https://github.com/ClusterM/nesasm. Он создаст .nes файл с меню для выбора игр. * После этого нужно совместить меню и сами игры на основе данных из XML файла сгенерированного выше, для этого запускаем "CoolboyCombiner.exe" уже с опцией "combine". * Всё. Рядовому пользователю не нужно сильно в это всё вникать, т.к. набор сопровождается файлом Makefile для утилиты Make и файлом "!build_rom.bat", они автоматизируют процесс. Просто отредактируйте файл "games.list" и запустите "!build_rom.bat" (для пользователей Windows). Подробнее можно почитать на английском по ссылке выше. Если кому не жалко, можете поддержать меня донатом: http://clusterrr.com/donation/ А то я кучу времени на всё это убил. PS А заливать в CoolBoy можно вот этим дампером. |
| Sharpnull:
--- Цитата: woddy от 02 Июнь 2025, 16:18:32 ---отпаял и прочитал программатором --- Конец цитаты --- Работает как 268.3 в NintendulatorNRS, FCEUX. Заголовок рома вставил 4E 45 53 1A 00 00 C2 08 31 02 70 0C 00 00 00 2A. |
| woddy:
спасибо. и правда в FCEUX работает. У меня стоял Mesen в нем только меню, но после выбора игры краш. осталось понять как это перезаписывать. Из интереса припаял флешку am29f016b (2мбайт 5 вольт), её дампер не распознает. может потому что бут кода для маппера нет |
| JRBVZ:
Похоже дампер не хочет работать с флэшками объемом меньше 128мбит, во всяком случае на запись. Добавлено позже: --- Цитата: woddy от 02 Июнь 2025, 17:26:49 ---осталось понять как это перезаписывать. Из интереса припаял флешку am29f016b (2мбайт 5 вольт), её дампер не распознает. может потому что бут кода для маппера нет --- Конец цитаты --- А какую команду вводил для записи? По идее должно быть типа этого: famicom-dumper write-coolboy --mapper 268.3 --prg-size 2M --file coolboy.nes |
| mutabor:
--- Цитата: woddy от 02 Июнь 2025, 17:26:49 ---осталось понять как это перезаписывать. --- Конец цитаты --- Сравнил все дампы - и тут что-то совсем странное. В дампах как SMD133 дублируются 8КБ блоки, т.е. размер страницы MMC3, что намекает на некорректную работу с маппером - страницы не переключается или маппер ресетается. Но в дампе как MMC3 дублируются вообще блоки по 512 байт и это совсем какая-то хрень, т.к. маппер просто не адресует такие блоки - этот адрес идет напрямую со слота на память. И тут как бы можно подумать что этот адрес в дампере отгнил, но тогда почему при дампе как SMD133 оно нормально дампится? Мб был плохой контакт в слоте когда дампил как MMC3? Короче тут всё сложно и непонятно, надо вдумчиво разбираться с исходниками и желательно с осциллом. Там потом будет веселье с erase секторами и побайтовой записью, но это потом. Но блин дампиться то он должен. Если даже сдампить не получается - о перепрошивке дампером точно можно забыть. Если уж отпаяли флешку - шейте программатором. Сборник собирать под маппер 268.3. И кстати сделайте качественные фото платы без флешки. |
| woddy:
а это может быть. перечитал mmc3, crc отличается (читаю со второго карика, но они якобы идентичные, куплены вместе) Добавлено позже: --- Цитата: JRBVZ от 02 Июнь 2025, 18:27:58 ---А какую команду вводил для записи? --- Конец цитаты --- до записи не дошло --- Код: --->famicom-dumper.exe info-coolboy Famicom Dumper Client v3.4 (c) Alexey 'Cluster' Avdyukhin / https://clusterrr.com / clusterrr@clusterrr.com Autodetected virtual serial port: COM7 Dumper initialization... OK Dumper hardware version: 3.2 Dumper firmware version: 3.4 Reset... OK ERROR: Can't enter CFI mode. Invalid flash memory? Broken cartridge? Is it inserted? --- Конец кода --- |
| JRBVZ:
Дампер точно рабочий? Если взять другой кулбой и сдампить несколько раз, crc должны быть одинаковые. Если разные, значит дампер мозги компостирует, могут быть виноваты бу шифтеры. |
| woddy:
Других кулбоев нет. Оригинальные фамики и самодельные unrom, mmc1 (честные 5 вольт) читает корректно. Повторно читать CRC совпадает. Потому склоняюсь что прошлый раз когда читал ммс3 был плохой контакт. Перечитал в режиме MMC3 несколько раз, картирдж доставал вставлял. crc файла разный из-за мусора в CHR RAM. но CRC блока PRG совпадает. шифтеры да, с помойки прислал али. Но вроде отобрал живые |
| woddy:
добрался еще раз. купил другой кулбой SMD173C_L4 из соседней темы итого если дампить в режиме --mapper 268.3 то оба картриджа дампятся корректно. дамп получается 32мб (не смотря на то что флешка 8мб). запускаются на эмуляторе fceux64 собирается и шьется тоже корректно на SMD173C_L4 . на первый картридж не шьется, ошибка очистки UPD пересадил флешку с SMD173C_L4 на старый SMD168L8 - стал прошиваться в программаторе как положено UPD2 На картридже флешка запитана через диод встроенный в sm133. Можно запитать нормально через линейник 1117-3.3. Для этого достаточно перерезать перемычку под надписью u1 с обратной стороны и запаять линейник так |
| Nikooone:
Ага.. судя из последних постов мне что-то подобное попалось SMD168L7 от 2023.11.28 по внешнему виду очень похоже по расположению сопротивлений как у автора из постов выше, он с разницей раслоложения PRG ОЗУ, у меня оно с обратной стороны. Изначально это просто 3х игровка из серии марио/2/3. Приколы начались когда собрал старой версией сборщика файл где еще "МНОГОИГРОВКА", прошил ПЗУ (программатором с отпайкой, предварительно сняв дамп, прикрепил в архиве). Включаю - есть меню :nyam: выбираю игру :-\ всё повисло.. Выкл/вкл консоль - битая графика, выбираю что либо, пишет - несовместимая игра... Выбрал еще что-то наугад вовсе повисло и картридж окирипичился. Почитал тут и нашел подобное поведение и начал искать свежую версию мейкера, нашел... поправил в файле Makefile строчку с субмаппером исправив 0 на 3, собрал ром, отпаял флешку, прошил, припаял, включаю :jumpy: есть меню :shifty: выбираю любую игру :facepalm: а происходит условно сброс :wall: Чо делать люди добрые!??? :surrender: И что за загадочные R2(J2) J4 J1? Есть какое либо описание понятным языком, кроме как "J2" - регистры.... (кого чего... :neznayu:) |
| Yoti:
--- Цитата: Nikooone от 13 Июль 2025, 19:52:59 ---И что за загадочные R2(J2) J4 J1? Есть какое либо описание понятным языком, кроме как "J2" - регистры.... (кого чего... ) --- Конец цитаты --- Внятное описание есть в учебнике радиоэлектроники. Ну или в каких-нибудь статьях в Интернете. Первая буква радиоэлемента (Резистор, ДЖампер и т.д.) и его порядковый номер. |
| Nikooone:
--- Цитата: Yoti от 13 Июль 2025, 20:49:05 ---Внятное описание есть в учебнике радиоэлектроники. Ну или в каких-нибудь статьях в Интернете. Первая буква радиоэлемента (Резистор, ДЖампер и т.д.) и его порядковый номер. --- Конец цитаты --- Ну да)) прям и не поспоришь :biggrin: |
| mutabor:
--- Цитата: Nikooone от 13 Июль 2025, 19:52:59 ---прошил, припаял, включаю :jumpy: есть меню :shifty: выбираю любую игру :facepalm: а происходит условно сброс :wall: --- Конец цитаты --- А оригинальный ром то запускался? Дамп запускается как mapper268.3, т.е. вроде как должно работать, т.е. надо фиксить сборщик. Для начала попробуй отключить сейвы. --- Цитата: Nikooone от 13 Июль 2025, 19:52:59 ---И что за загадочные R2(J2) J4 J1? --- Конец цитаты --- Даташит на smd133 есть в инете, можешь посмотреть куда идут дорожки на плате. Но по идее должно работать, если конечно ничего не перепаивал. |
| Nikooone:
--- Цитата: mutabor от 14 Июль 2025, 00:09:26 ---А оригинальный ром то запускался? --- Конец цитаты --- Да залил обратно его, работает. Ну закинул его до вдохновения, была мысль всёж старым сборщиком собрать ром, и отцепить WE от маппера и посмотреть что получится, но опять таки каждый раз монтаж демонтаж пзу уже поднадоел. Про сохран - гляну, но кажется он и так откл. Добавлено позже: --- Цитата: mutabor от 14 Июль 2025, 00:09:26 ---Дамп запускается как mapper268.3 --- Конец цитаты --- Вот это кстати странно)) вставлял заголовок из постов выше - у мне не поехало) ваше исправление не открывал пока хексом, позже гляну))) |
| JRBVZ:
На днях решил попробовать нынче модный вайб-кодинг :biggrin: В результате мучения чатгпт родилась небольшая программа-оболочка для Makefile. Работает как с Coolboy Builder так и Coolgirl Builder. Для работы требуются установленные .NET 6.0 https://dotnet.microsoft.com/ru-ru/download/dotnet/6.0 и MSYS2 https://www.msys2.org/docs/installer/ |
| Nikooone:
Прям с языка снял, какой день вынашиваю закинуть идею автору о графическом интерфейсе ПО, с возможностью выбора сабмаппера, выбора файлов на выходе, а то не очень то уж и удобно как мне показалось заставить собрать bin, т.к прошиваю обычным программатором. Ну а про конвертер картинок в заголовок у меня вовсе оперативка кончилась :D Добавлено позже: --- Цитата: JRBVZ от 17 Июль 2025, 18:01:50 ---оболочка для Makefile. --- Конец цитаты --- Ну неплохо :thumbup: |
| ded_rubyroid:
Подскажите по вот такому картриджу - SMD173C_L4. Я так понимаю что это coolboy. Читается и пишется дампером от Кластера хорошо. На сколько я знаю coolboy поддерживает только mmc3 маппер. Кластер на гитхабе писал - "COOLBOY supports games with NROM (mapper #0) and MMC3 (mapper #4) mappers only". Но я вижу что на нём китайцы записали такие игры как Jackal, Contra и т.д, котрые требуют других мапперов. Вопрос, это китайцы пропатчили игры и записали, или сам картридж поддреживает больше мапперов? Дамп и фото приложил. Дампил вот так - --- Код: ---famicom-dumper dump --mapper mappers/AA6023Sub3.cs --prg-size 32M --file coolboy.nes --prg-nvram-size 8K --chr-ram-size 256K --- Конец кода --- |
| Sharpnull:
--- Цитата: ded_rubyroid от 11 Октябрь 2025, 23:49:01 ---это китайцы пропатчили игры и записали --- Конец цитаты --- Contra и Jackal в этом дампе на MMC3. Скорее всего все на MMC3. |
| ded_rubyroid:
--- Цитата: Sharpnull от 12 Октябрь 2025, 00:32:29 ---Contra и Jackal в этом дампе на MMC3. Скорее всего все на MMC3. --- Конец цитаты --- Благодарю! :thumbup: |
| MS_Logging:
--- Цитата: JRBVZ от 17 Июль 2025, 18:01:50 ---На днях решил попробовать нынче модный вайб-кодинг :biggrin: В результате мучения чатгпт родилась небольшая программа-оболочка для Makefile. Работает как с Coolboy Builder так и Coolgirl Builder. (Ссылка на вложение) Для работы требуются установленные .NET 6.0 https://dotnet.microsoft.com/ru-ru/download/dotnet/6.0 и MSYS2 https://www.msys2.org/docs/installer/ --- Конец цитаты --- ⚠️ Ошибки: /usr/bin/bash: line 1: make: command not found ❌ Код выхода: 127 вот такой результат. ) |
| JRBVZ:
Программа не может найти make.exe, посмотри есть ли такой файл в msys64\usr\bin. Если нет, то косяк с установкой msys2 |
| Навигация |
| Главная страница сообщений |
| Следующая страница |
| Предыдущая страница |