Автор Тема: Вертикальные точки Dendy многоигровка  (Прочитано 3131 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Друзья, кто нибудь по памяти может сказать, неконтакт какой из шин данных приводит к вертикальным точкам (на фото). Также не работают 2 из 4х игр (Adventure Island и Galaxian). Если бы дело только в играх - предположил бы что накрылась одна из капель (GoldStar gd74ls161a - это логика типа КxxxИЕ10, gd74ls32 тоже логика).

PS: Контакты чистил и спиртом и стеркой и окисел снимал - без разницы.

Оффлайн Rumata

  • Emu-Land Team
  • Сообщений: 21448
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #1 : 09 Февраль 2019, 23:50:01 »
Да тут никакой памяти не надо. Все проблемы с графикой на шине CHR. И совершенно не обязательно, что не контакт

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #2 : 10 Февраль 2019, 00:34:50 »
Да это понятно, думал на глаз кто-то вспомнит конкретный пин. Прозвонил,  D0 и A12 , буду смотреть завтра что не так с ними.

Странно почему две игры не открывает, возвращает в меню.

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #3 : 11 Февраль 2019, 14:07:25 »
Часть артефактов убралось пропайкой разъема для картриджа и проца. Теперь выглядит одинаково на новоделе и старой приставке.
Контакты все на ПЗУ звонятся - видимо что-то в памяти. Так как капля - ковырять смысла нет.

Осталось понять почему выкидывает в меню при входе в две из 4х игр. К сожалению логики аналогов, которая тут используется нет под руками. Вопрос, имеет ли смысл искать аналоги GoldStar логические элементы или проблема скорее всего в ПЗУ также?

Оффлайн supremacy

  • Пользователь
  • Сообщений: 1966
  • Пол: Мужской
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #4 : 11 Февраль 2019, 15:30:14 »
выкидывает в меню при входе в две из 4х игр.
нужно понимать как работает переключение игр в меню: после выбора игры меню пытается выставить на защёлке нужный банк после чего переходит по адресу сброса игры, соответственно, если переключения банков памяти не произошло то переход происходит по адресу сброса меню.
причины тут могут быть такие: неисправна цепочка сброса картриджа, но т.к. другие игры работают, то врядли.
может быть неисправна логика, могут быть оборваны дорожки адресов этих банков.

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #5 : 11 Февраль 2019, 15:44:11 »
Кстати игра тут странная есть. Называется в меню Human. Похожа на Heavy barrel (Chip and Dale 3) и Gun Smoke. Но из нашего детства такую не помню. Может кто знает что это.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 3339
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #6 : 11 Февраль 2019, 15:57:46 »
NStormX, по иероглифам легко находится: Adventures of Dino Riki / Shin Jinrui: The New Type (新人類 THE NEW TYPE).

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3586
    • Twitter
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #7 : 11 Февраль 2019, 19:16:34 »
вторая нерабочая игра не галаксиан, а градиус

161 - счетчик на 4 бита. он скорее всего не работает. замени на любой 74LS161.

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

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #8 : 12 Февраль 2019, 00:02:53 »
вторая нерабочая игра не галаксиан, а градиус

161 - счетчик на 4 бита. он скорее всего не работает. замени на любой 74LS161.

Спрашивал уже в радиотоварах сегодня. Такого увы нет. Поищу еще, если что на али есть но ждать долго. В чип и дип еще попробую https://www.chipdip.ru/product/k555ie10 Отпишу. Спасибо за информацию!

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

Вот это не посмотрел, возможно они переделали под другой маппер. Кода там не много в сравнении с duck tales например.

Фото прилагаю.


Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #9 : 12 Февраль 2019, 07:58:35 »
NStormX, по иероглифам легко находится: Adventures of Dino Riki / Shin Jinrui: The New Type (新人類 THE NEW TYPE).

Я в иероглифах не силен :) Благодарю. Игра кстати реальная жесть, смотрел лонгплей - такое только в слоумоушн играть.

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #10 : 12 Февраль 2019, 12:54:48 »
CaH4e3, увы чуда не случилось :( Поставил панельку и пробовал две разные к555ие10.

Если только еще К555ЛЛ1 вместо второй подкинуть микросхемы. Но боюсь перегреть, так как снимается дип корпус тяжко  -до 400 градусов приходится греть :( И если рядом с первым нет ПЗУ, то второй рядом.
« Последнее редактирование: 12 Февраль 2019, 20:31:35 от NStormX »

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3586
    • Twitter
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #11 : 12 Февраль 2019, 20:38:45 »
космосольцы не ищут легких путей. греть дип16 корпус феном до 400? а оловоотсос не?

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #12 : 12 Февраль 2019, 20:43:19 »
космосольцы не ищут легких путей. греть дип16 корпус феном до 400? а оловоотсос не?

Начинал с него - все равно внутри метализации остается припой. Естественно есть все.

Оффлайн Rumata

  • Emu-Land Team
  • Сообщений: 21448
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #13 : 12 Февраль 2019, 21:12:00 »
Какой, нафиг, отсос? В чём смысл корячиться за копеечную микросхему? Ладно бы речь шла о разборе на детали с целью добыть именно эту микросхему. Так ведь нет. Выкуси её выводы сверху, а потом спокойно выдёргивай ножки пинцетом.

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #14 : 12 Февраль 2019, 21:42:09 »
Какой, нафиг, отсос? В чём смысл корячиться за копеечную микросхему? Ладно бы речь шла о разборе на детали с целью добыть именно эту микросхему. Так ведь нет. Выкуси её выводы сверху, а потом спокойно выдёргивай ножки пинцетом.

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

Тут все прикола ради в свободное от работы и быта время. Жалко оригинальный голдстар (он уже лет 20 как лыжи), первую сохранил - сейчас на место поставил.
Повторюсь - все делается just for fun :)

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3586
    • Twitter
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #15 : 12 Февраль 2019, 22:40:03 »
как же я до сих пор доволен, что купил у китайцов вакуумный пистолет-паяльник лол (дада, в третий раз уже сообщаю). прислоняешь, нажимаешь курок - "буль буль буль" - и отпаяно и засосано начисто, никаких остатков припоя в каналах.

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #16 : 12 Февраль 2019, 23:09:44 »
как же я до сих пор доволен, что купил у китайцов вакуумный пистолет-паяльник лол (дада, в третий раз уже сообщаю). прислоняешь, нажимаешь курок - "буль буль буль" - и отпаяно и засосано начисто, никаких остатков припоя в каналах.
Давно такой лежит в шкафу, надо опробовать. С трудом верю что лучше обычного отсоса, но проверим.

Оффлайн godun

  • Пользователь
  • Сообщений: 3606
  • Пол: Мужской
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #17 : 12 Февраль 2019, 23:21:37 »
Жалко оригинальный голдстар (он уже лет 20 как лыжи),
блин,у меня 161 от Шарпа сгорела. поехал на рнок, такую же шарповскую дали. Или ты думаешь, что у них теперь они от Лыж  только продаются?

Оффлайн Rumata

  • Emu-Land Team
  • Сообщений: 21448
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #18 : 12 Февраль 2019, 23:22:33 »
ну если так рассуждать - нафиг это г из 90х, если проще взять эмулятор с сейвами и геймпад по блютусу от PS4.
Сам-то понял, чё сказал? Я тебе про реальную технологию ремонта, а ты мне какое-то сферическое дерьмо в вакууме про эмуляторы. :-\


Добавлено позже:
Жалко оригинальный голдстар
у меня 161 от Шарпа сгорела
Ребята, вы тут умом не тронулись, часом? 0_0 "оригинал" от GoldStar, "оригинал" от Sharp...
Вам чё, Супонев весь мозгЪ вынес напрочь?
« Последнее редактирование: 12 Февраль 2019, 23:29:26 от Rumata »

Оффлайн SAMael

  • Пользователь
  • Сообщений: 6074
  • Пол: Мужской
  • SAMuel Alpian Warrior Glegleddore Gleglezavr
    • Facebook
    • Twitter
    • ВКонтакте
    • Steam
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #19 : 12 Февраль 2019, 23:33:25 »
Давно такой лежит в шкафу, надо опробовать. С трудом верю что лучше обычного отсоса, но проверим.
Вакуумный олово отсос и ручной электро олово отсос - это две разные вещи в общем то!
Вакуумный олово отсос хоть видал?
ну посмотри что ли:

Оффлайн Rumata

  • Emu-Land Team
  • Сообщений: 21448
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #20 : 12 Февраль 2019, 23:49:42 »
 :facepalm: Ещё один просветлённый прибыл.... Чё, я одни в школе учился? А остальные в это время на базаре семечками торговали?
Вакуум - это, если кто не знает, отсутствие атмосферного давления. И все эти "Отсосы Петровичи" работают исключительно на разнице давления. Ручной, ножной, электрический, механический, ТЕРМОЯДЕРНЫЙ, блядь :skull:

Оффлайн godun

  • Пользователь
  • Сообщений: 3606
  • Пол: Мужской
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #21 : 13 Февраль 2019, 00:21:23 »
 :lol:.   
Rumata, ну а я то что не так сказал. Ну делали эти микры разные конторы. И голдствры и шарпы. Я просто  привел ему пример, что смысла нет дорожить голдстаром. Да и на рынках их еще в запасах вагон

Оффлайн SAMael

  • Пользователь
  • Сообщений: 6074
  • Пол: Мужской
  • SAMuel Alpian Warrior Glegleddore Gleglezavr
    • Facebook
    • Twitter
    • ВКонтакте
    • Steam
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #22 : 13 Февраль 2019, 00:33:57 »
Rumata, ну тут больше подразумевалось что механическое а не ручное девайсо )))

Онлайн HardWareMan

  • Модератор
  • Сообщений: 6781
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #23 : 13 Февраль 2019, 06:28:42 »
космосольцы не ищут легких путей. греть дип16 корпус феном до 400? а оловоотсос не?
В китайских фенах обычно попугаи. Для сравнения: свинец это 235, а бессвинцовка - 255 соответственно. Но это на паялке с ИК подогревом и контролем температуры. А на фене температура измеряется внутри, а при выходе воздуха он - ТА-ДА! - остывает. И если держать дальше, включить поток сильнее то из честных 250 останется в лучшем случае 220. А если еще и холодно в помещении то вообще. Поэтому, когда я грею бессвинцовку, я ставлю 360 (опять же китайских градуса), минимальный поток воздуха и закрываю окна. Минут 5 терпеливо греешь и всё нормально снимается, даже пластик не плавится. Так ЧЯДНТ?
Какой, нафиг, отсос? В чём смысл корячиться за копеечную микросхему? Ладно бы речь шла о разборе на детали с целью добыть именно эту микросхему. Так ведь нет. Выкуси её выводы сверху, а потом спокойно выдёргивай ножки пинцетом.
Когда время дороже деталек, либо требуется сохранить плату любой ценой - именно так и следует поступать. Без вариантов. Но бывают и исключения.
Ручной, ножной, электрический, механический, ТЕРМОЯДЕРНЫЙ, блядь :skull:
Ну давай для начала успокоимся, ладно. Было бы за что нервничать, тем более супермодератору - у них же нервы железные должны быть. Вроде как, иначе никак.

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #24 : 13 Февраль 2019, 09:56:30 »
Ребята, вы тут умом не тронулись, часом?  "оригинал" от GoldStar, "оригинал" от Sharp...

А в чем смысл старых картриджей, если там будет все новодел? Игры с этого картриджа лично мне пофиг. Скучные и простенькие. Был бы сборник в стиле большинства Super HIK - да. К слову большинство интересных мне игр с Dendy/Sega/PSX я перепрошел еще в 2001-2002 годах на геймпаде от PSX, подключенном по LPT к ПК и еще во времена эмуляторов Bleem и Connectix VGS. Последний к слову я еще в те года русифицировал в Restorator'е.

Сейчас основная цель покупки того или иного картриджа - исключительно воспоминания. Берешь его в руки и вспоминаешь события 20-25 лет назад которые были связаны с тем или иным сборником. Когда рабочий день не нормирован и дел разных много - иногда полезно просто переключиться. Отвлечь мозг какой нибудь фигней. Вот в этом и цель восстановления данного картриджа. А не тупо сделать. Если бы задача стояла "тупо сделать" - нашел бы аналогичный на авито у коллекционеров и купил бы, в любом случае это на порядок дешевле, чем мои два дня ремонта этого куска текстолита :) Тут чисто по приколу и для души все. А К155/176/555 мне напоминает исключительно о курсовике где я использовал 176 серию в проекте надстройки для мултиметра (тогда их называли еще тестерами). Не те воспоминания :))

Оффлайн godun

  • Пользователь
  • Сообщений: 3606
  • Пол: Мужской
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #25 : 13 Февраль 2019, 11:45:49 »
А в чем смысл старых картриджей, если там будет новодел
:wall: наша песня хороша, начинай сначала
Какой нахрен новодел?? Теже микры голдстаровские продаются из дивиностых ваших

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Re: Вертикальные точки Dendy многоигровка
« Ответ #26 : 13 Февраль 2019, 13:36:01 »
Поменял обе микросхемы. Результата никакого. Все также.

По поводу покупки GoldStar оригинала - одна микросхема стоит втрое дороже чем вся эта плата. Плате цена 50 рублей, смысла на не покупать чип за 180 рублей - ноль.

Оффлайн godun

  • Пользователь
  • Сообщений: 3606
  • Пол: Мужской
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #27 : 13 Февраль 2019, 14:53:40 »
Поменял обе микросхемы. Результата никакого. Все также.

По поводу покупки GoldStar оригинала - одна микросхема стоит втрое дороже чем вся эта плата. Плате цена 50 рублей, смысла на не покупать чип за 180 рублей - ноль.
Чет у вас цены не правильные, я по 20 руб покупал

Оффлайн KykyPyky

  • Пользователь
  • Сообщений: 458
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #28 : 13 Февраль 2019, 15:07:38 »
На плате 1 вывод (/Rasyn) у 161 висит в воздухе что ли?

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3586
    • Twitter
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #29 : 13 Февраль 2019, 17:21:09 »
он с обратной стороны скорее всего подключен, под чипом все равно не видно

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #30 : 13 Февраль 2019, 18:04:24 »
Чет у вас цены не правильные, я по 20 руб покупал

Не Москва у нас :( Тут к555 по 20. Взял две таких, две других и две панельки. Итого 100 рублей.

Добавлено позже:
На плате 1 вывод (/Rasyn) у 161 висит в воздухе что ли?

С обратной стороны по металлизации идет. Там видно на фото от него дорожка вбок. Звонится.

Мне вот интересно что за элементы там предусмотрены, но не распаяны. Тут 5 в идет на капли, которые типа 3,3, хотя развязка предусмотрена. И так далее. Хотя раз так было изначально, значит картридж работал... Но ко мне он попал такой уже.
« Последнее редактирование: 13 Февраль 2019, 18:13:44 от NStormX »

Оффлайн SAMael

  • Пользователь
  • Сообщений: 6074
  • Пол: Мужской
  • SAMuel Alpian Warrior Glegleddore Gleglezavr
    • Facebook
    • Twitter
    • ВКонтакте
    • Steam
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #31 : 13 Февраль 2019, 19:50:06 »
NStormX, 100руб, это 50гр, хм, "танунафиг", я микры по 1гр беру = 2руб.
А вообще мне кажется там дело в CHR части, капля.

Оффлайн KykyPyky

  • Пользователь
  • Сообщений: 458
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #32 : 13 Февраль 2019, 19:59:34 »
Мне вот интересно что за элементы там предусмотрены, но не распаяны.
Стандартная цепочка сброса: диод, конденсатор и резистор. Они подписаны на плате.
С ней выйти в меню можно путем нажатия сброса на приставке, без них - только передернув питание.

Тут 5 в идет на капли, которые типа 3,3
Откуда такая инфа? Когда делался этот карик, питание 3.3в было только в проектах.

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #33 : 13 Февраль 2019, 20:10:33 »
Стандартная цепочка сброса: диод, конденсатор и резистор. Они подписаны на плате.
С ней выйти в меню можно путем нажатия сброса на приставке, без них - только передернув питание.

Выходит по резету в главное меню.

Оффлайн KykyPyky

  • Пользователь
  • Сообщений: 458
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #34 : 13 Февраль 2019, 21:49:41 »
Выходит по резету в главное меню.
Это потому что счетчик не переключается, а указывает на один и тот же банк. Вот когда переключишь, через сброс в меню не выйдешь.


Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #35 : 09 Март 2019, 21:58:30 »
Сделал дамп этого картриджа. Маппера не знаю, потому дампил как без него.

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 1729
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #36 : 10 Март 2019, 01:18:11 »
Графика меню взята из тетриса:


Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #37 : 10 Март 2019, 12:30:42 »
Guyver(X.B.M.), прикольно, но тут бы знать что за маппер, а лучше скрипт для дампера Кластера, я бы сдампил корректно и выложил. Так то все равно кроме меню и бомбермэна ничего не работает (а по факту еще Dino Richi запускается).

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 1729
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #38 : 10 Март 2019, 15:21:22 »
Скорее всего, графику ты не сдампишь, будет она у тебя вся битая. Но главное это код, так как графика обычно в таких многоигровках не отличается от оригинала...

Оффлайн megavolt85

  • Пользователь
  • Сообщений: 1465
  • Пол: Мужской
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #39 : 10 Март 2019, 22:25:59 »
Guyver(X.B.M.), ну от чего же, если знать маппер, то сдампить можно и СС 300 без бедов  :lol:

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #40 : 10 Март 2019, 22:29:11 »
megavolt85, шутки шутками, но как можно заметить - в дампе работает только бомбермэн, а на картридже на реальном железе работают две игры. Плюс к слову проблемы с графикой на реальном железе на порядок меньше чем в дампе. Никто и не пытается сдампить то, что не работает на реальном железе. Идея лишь сдампить то, что работает, а для этого нужно сэмулировать маппер.

Оффлайн supremacy

  • Пользователь
  • Сообщений: 1966
  • Пол: Мужской
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #41 : 11 Март 2019, 08:07:45 »
NStormX, начнём с того, что не все многоигровки можно сдампить дампером Кластера. На некоторых будет срабатывать сброс, и ты не сможешь выбрать другие банки.
А технология дампа не особо сложная - нужно сначала сдампить nrom, загрузить в эмулятор, поставить брэйкпоинты на запись в 6000-ffff и запустить игру из меню. Программа остановится на переключении банка, по коду смотришь по какому адресу и какими битами переключаются банки и дописываешь в свой скрипт соответствующие команды.

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #42 : 11 Март 2019, 11:19:36 »
supremacy, благодарю за помощь! Так как ранее этим не занимался просьба по возможности ответить на нубские вопросы.
Отладил я это меню. Переключение производится следующим образом (для удобства сделал таблицу):
Адрес записи    Записываемое значение    Адрес перехода    Игра
$AF08    $A0    $8003    HUMAN
$AF0C    $A0    $8000    ISLAND
$AF01    $F0    $C000    BOMBERMAN (main bank)
$AF04    $A0    $8010    GRADIUS
Насколько я понимаю у нас переключение банки производится записью в (0xAF00+(bank*4)) байта 0xA0. Но остаются вопросы: откуда начинается PRG и откуда CHR в данном конкретном картридже и какова их длина.

Допустим получился такой скрипт (ниже). Но во первых непонятно как проверять (кроме как писать свой обработчик в эмулятор хотя уверен он уже есть), так как я не знаю что за маппер и в wiki.nesdev.com мапперов с записью в эти адреса не нашел (возможно плохо искал). В общем вопросов пока больше чем ответов. Заранее благодарю за терпение :)

MapperName = "New1"
MapperNumber = 255
DefaultPrgSize = 4 * 32 * 1024 // 4x от nrom, сколько в реале - хз
DefaultChrSize = 4 * 8 * 1024 // 4x от nrom, сколько в реале - хз

function DumpPrg(size)
  print("Reading main PRG bank...")
  ReadAddPrg(0x8000, size / 4) // а с 8000 ли начинается? и какова длина блока PRG
local banks = 4
for b = 1, banks-1, 1 do
print("Reading PRG bank #" .. tostring(b+1) .. "...")
WriteCpu(0xAF00+4*b, {0xA0})
ReadAddPrg(0x8000, size / 4)
end
end

function DumpChr(size)
  print("Reading main CHR...")
  ReadAddChr(0x0000, size / 4) // а с 0 ли начинается? и какова длина блока CHR
local banks = 4
for b = 1, banks-1, 1 do
print("Reading CHR #" .. tostring(b+1) .. "...")
WriteCpu(0xAF00+4*b, {0xA0})
ReadAddChr(0x0000, size / 4)
end
end

function EnablePrgRam(size)
print("Warning: SRAM is not supported by this mapper")
end

Оффлайн supremacy

  • Пользователь
  • Сообщений: 1966
  • Пол: Мужской
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #43 : 11 Март 2019, 15:20:18 »
Смотришь на каком маппере оригинальные игры, в данном случае CNROM. Меню, как правило, переключает старшие адреса, а саму игру дампишь уже используя команды её оригинального маппера (если китайцы её не перехачили).

PRG всегда бери 32KB, CHR тоже бери по 32КБ, итоговый размер 128+128

Но в конце концов ты захочешь запустить свой дамп в эмуляторе и тут тебе придётся либо найти уже реализованный такой же маппер, либо доработать эмулятор.
А если ты найдёшь уже готовый дамп то, наверное, нет смысла дампить твой картридж 8)

P.S. Записываемое значение в твоей табличке не правильное, ты записал что по этому адресу находится, а не то что в регистре A сейчас, у маппера есть защита от конфликтов на шине, поэтому значения не совпадают.
« Последнее редактирование: 11 Март 2019, 20:51:04 от supremacy »

Оффлайн KykyPyky

  • Пользователь
  • Сообщений: 458
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #44 : 12 Март 2019, 16:09:10 »
Отладка меню довольно трудоемкая операция. Китайцы воровали и хачили меню друг у друга, писали меню сразу под несколько мапперов.
Вроде понятно как работает, написал lua скрипт, а оно не дампится :neznayu:
Подобным мозгоебством можно заниматься только из-за большой любви к конкретному рому. :lol:

Лучше начинать исследование с осмотра карика и микросхем его составляющих.
Нам повезло, маппер не на капле, а на стандартной логике.
Две микрухи ls161 и ls32. Сохранять данные, а значит переключать банки может только одна из них - ls161.
Качаем даташит на нее или ищем распиновку в интернете:


На входы 3,4,5,6 подается сигнал, запоминается и с выводов 14,13,12,11 снимается.
Вооружимся распиновкой карика https://wiki.nesdev.com/w/index.php/Cartridge_connector, острым зрением и/или тестером,
отследим подается сигнал и куда уходит.
Сигнал подается с выводов 10,11,12,13 карика, это адресные линии процессора.
Уходит на адреса капель prg и chr. Какие именно адреса мы не знаем.
CPU A0 -> P0 161 -> CHR
CPU A1 -> P1 161 -> CHR
CPU A2 -> P2 161 -> CHR + PRG
CPU A3 -> P3 161 -> PRG
Получается что бы сдампить chr нам нужно в карик записать 2^3=8 значений по адресам с разными битами A0-A2.
Остальные биты значение не имеют. Как и записываемые данные. Переключение происходит только на основании адреса.
Данные которые надо записать мы прочитаем из этой же ячейки адреса, что бы избежать конфликта шин.
Получается на lua вот так:
WriteCpu(0x8000 + bank, ReadPrg(0x8000 + bank, 1))
Для дампа prg нужно записать 2^2=4 значений по адресам с разными битами A2-A3.
В lua нет битовых операций сдвига, но можно биты сдвинуть влево умножением на число 2 нужное количество раз.
WriteCpu(0x8000 + bank*2*2, ReadPrg(0x8000 + bank*2*2, 1))
Теперь разберемся с номером маппера.
Что бы преобразовать любой адрес в номер банка chr, нужно обнулить все биты кроме последних трех.
Для этого подходит логическое И над адресом и числом 7 или 0x07 или 0b00000111
A & 0x07Для prg нужно обнулить биты кроме 2 и 3, а потом сдвинуть вправо на 3 бита.
(A & 0x0f) >> 2
или
(A >> 2) & 0x03

Скачиваем исходники fceux.
Все простенькие мапперы которые переключаются адресом собраны в файле fceux-2.2.2/src/boards/addrlatch.cpp.
Открываем его и ищем что-то подобное на математику выше.
Ура! Кажется такой маппер уже реализован :wow:
static void M217Sync(void) {
setprg32(0x8000, (latche >> 2) & 3);
setchr8(latche & 7);
}
Т.к. игры у нас на 32к prg то выбираем маппер 217, а не 214.

Еще можно поискать маппер на вики несдева, начинать копать вот отсюда http://wiki.nesdev.com/w/index.php/Mapper
Но некоторые мапперы там не описаны, например наш http://wiki.nesdev.com/w/index.php/INES_Mapper_217

Итоговый lua файл:
--
-- Mapper # 217
-- addr latch: 74-161, 74-32


MapperName = "Mapper #217"
MapperNumber = 217
DefaultPrgSize = 4*0x8000
DefaultChrSize = 8*0x2000

function DumpPrg(size)
        for b = 0, banks-1 do
            WriteCpu(0x8000 + bank*2*2, ReadPrg(0x8000 + bank*2*2, 1))
            print("Reading PRG bank #" .. tostring(b) .. "...")
            ReadAddPrg(0x8000, 0x8000)
        end
end

function DumpChr(size)
        for b = 0, banks-1 do
            WriteCpu(0x8000 + bank, ReadPrg(0x8000 + bank, 1))
            print("Reading CHR bank #" .. tostring(b) .. "...")
            ReadAddChr(0x0000, 0x2000)
        end
end

function EnablePrgRam(size)
end
Файл нуждается в проверке, я его даже не запускал.

Оффлайн NStormX

  • Пользователь
  • Сообщений: 215
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Вертикальные точки Dendy многоигровка
« Ответ #45 : 12 Март 2019, 19:29:25 »
KykyPyky, искренне благодарю за ликбез! С этим как и с другими картриджами разбираюсь чисто just for fun. Никакой практической цели кроме как изучить работу железа и ПО приставок - нет. Сами игры не нужны от слова совсем - тут чисто интересна задача.
Скрипт поправил, правда CHR в отличии от приставки криво дампится (Dino Richi с побитым CHR, на приставке все корректно). Bomberman зависает на первом уровне, причем если не писать в Cpu скриптом на этапе дампинга CHR - не зависает, но соответственно кривая графика.

Исправленный скрипт прилагаю.

supremacy, также благодарю за советы.
« Последнее редактирование: 12 Март 2019, 21:48:09 от NStormX »