Автор Тема: Можно ли заставить сегу читать ром с разных епром?  (Прочитано 1077 раз)

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

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
Друзья, всем снова привет. После сборки себе программатора, решил поковыряться в своих складах микросхем с разбора. Среди всего обнаружил кучу разных микросхем (am29f010b, sst39sf010 и тд). Посмотрел дата шиты на них, все они епром память 5 вольтовой логики. И тут я подумал, а что если попробовать на них зашить сеговский какой нибудь ром и скормить реальному железу. Под опыт пошли следующие пациенты: am29f010b, sst39sf010, m29f010. Памяти у них очень мало, но в интернете нашел тестовый ром памяти, который как раз полностью на них влазит, даже место чуть чуть остаётся. Посмотрел распиновку порта сеги, распиновку микросхем, взял свой картридж от первого проекта (всё равно он не заработал) и начал паять. Все контакты на текстолите отделил, чтоб на них напаять проводки, а другие концы на колоду для микросхемы. Контакты подключал следующим образом (контакт микросхемы - контакт слота сеги): vss - земля, vcc - +5в, a0 - a1 ... a16 - a17, do - do ... d7 - d7, oe - oе, ce - cs. Сделал для Рома фикс контрольных сумм, записал ром на микросхему, не забыв перевернуть местами байты. Вставил в сегу и получил чёрный экран. Пол ночи проводил эксперименты, но успеха не получил. И вот интересно, а вообще возможно ли подсунуть сеге рандомную микросхему епром памяти?
« Последнее редактирование: 02 Апрель 2023, 08:33:11 от valera0141 »

Оффлайн rgz

  • Пользователь
  • Сообщений: 816
  • Пол: Мужской
    • Просмотр профиля
Цитата
Посмотрел дата шиты на них
Вы точно внимательно прочитали даташиты? Ничего в даташитах не смущает? Все эти микросхемы (am29f010b, sst39sf010, m29f010) работают по шине 8-bit, а сеговский картридж работает в 16-bit. То есть, чтобы сделать сеговский картридж нужно применить 2 микросхемы по 8-bit или искать 1 микросхему которая может работать в 16-bit.
https://www.emu-land.net/forum/index.php?topic=65742.0
« Последнее редактирование: 02 Апрель 2023, 09:36:45 от rgz »

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 388
  • Пол: Мужской
    • Просмотр профиля
...  do - do ... d7 - d7, oe - oе, ce - cs. Сделал для Рома фикс контрольных сумм, записал ром на микросхему, не забыв перевернуть местами байты. Вставил в сегу и получил чёрный экран. Пол ночи проводил эксперименты, но успеха не получил.

  А как же старший байт шины данных ? А где вторая микросхема? У сеги шина данных D0...D15...Младший байт D0...D7 на одну микросхему,старший байт  D8...D15 на вторую . Шина адреса параллельно на обе микросхемы.
 И в этом случае не байтсвап нужно делать,а ROM распилить на чётную часть-(старшие байты) и нечётную часть-(младшие байты) . Каждую часть прошить в соответствующую микросхему  ;)
  Должно всё получиться :)

 
                     

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 388
  • Пол: Мужской
    • Просмотр профиля
  Ну и я фрагмент со своих зарисовок приложу  :D
261919-0

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
Точно, не учёл, что тут микросхемы 8 битные. Попробую припаять вторую микросхему для опытов. Только остаётся вопрос, а чем можно ром распилить? Я бы мог накатать на с++ распиливатель, но вдруг есть готовое решение.

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 24640
    • Просмотр профиля
но вдруг есть готовое решение.
Hex-редактор называется.

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
Hex-редактор называется.

А можно подсказать, как это сделать? Скачал hex editor neo. Но вот как разбить, не понятно пока. Всё протыкал в программе, ничего не нашёл, где можно было бы задать скрипт или область выделения

Добавлено позже:
Написал короче на c++ консольное приложение, которое делит ром на 2 файла с младшими и старшими байтами. Припаял вторую колодку с микросхемой. Сверился по схеме выше от murgatroid_79. Всё зашил. Но ничего не работает. Или моё приложение не так ром делит (хотя вроде все ок получается), или я что то не так сделал.
« Последнее редактирование: 02 Апрель 2023, 14:57:36 от valera0141 »

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 388
  • Пол: Мужской
    • Просмотр профиля
  ROM в студию  :) И  обе половинки ROM-а сюда же   
А вообще почитай вот эту тему: https://www.emu-land.net/forum/index.php/topic,77807.msg1288673.html#msg1288673   
 Там камрад   supremacy выкладывал свою утилиту для распиливания/склеивания чётных и нечётных байтов  ;)                   

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
  ROM в студию  :) И  обе половинки ROM-а сюда же   
А вообще почитай вот эту тему: https://www.emu-land.net/forum/index.php/topic,77807.msg1288673.html#msg1288673   
 Там камрад   supremacy выкладывал свою утилиту для распиливания/склеивания чётных и нечётных байтов  ;)                 
Вот архив с файлами. Ром file (исходный). А и B файлы уже распиленные через мою программку

Добавлено позже:
  ROM в студию  :) И  обе половинки ROM-а сюда же   
А вообще почитай вот эту тему: https://www.emu-land.net/forum/index.php/topic,77807.msg1288673.html#msg1288673   
 Там камрад   supremacy выкладывал свою утилиту для распиливания/склеивания чётных и нечётных байтов  ;)                 
Попробовал программу товарища. С ней всё заработало. Мой шайтан колхоз завёлся на реальном железе. Потом сделаю фото своего картриджа на проводах. Теперь можно развести будет плату нормальную.
« Последнее редактирование: 02 Апрель 2023, 18:26:03 от valera0141 »

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 388
  • Пол: Мужской
    • Просмотр профиля
valera0141, поздравляю  :wow:

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
valera0141, поздравляю  :wow:
Спасибо. С меня сок (пиво не пью) всем)
 :drinks:

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
А вот и рабочий протатип

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 24640
    • Просмотр профиля
Тоже прототип, но на 30 лет раньше :)



Добавлено позже:
Если интересно, там стоят D27C020. И они не впаяны. Там специальные низкопрофильные цанги.
« Последнее редактирование: 03 Апрель 2023, 01:17:41 от Rumata »

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
Если интересно, там стоят D27C020. И они не впаяны. Там специальные низкопрофильные цанги.
У меня есть колодки низкопрофильные. Я в один картридж поставил. В корпус плотненько, но влезло

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 24640
    • Просмотр профиля
Это не колодки, у них нет корпуса. Поставляются в ленте, которая после установки удаляется. В итоге выступают над платой где-то на 1 мм. Но и отверстия под них нужны достаточно большие.
Но суть не в этом. Файл можно невозбранно резать и вдоль и поперёк.

Вот ещё один прототип, тоже 8 Мбит, но микросхемы более мелкие. Ну речь об установке в корпус тут не шла в принципе.

261940-0

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
Это не колодки, у них нет корпуса. Поставляются в ленте, которая после установки удаляется. В итоге выступают над платой где-то на 1 мм. Но и отверстия под них нужны достаточно большие.
Но суть не в этом. Файл можно невозбранно резать и вдоль и поперёк.

Вот ещё один прототип, тоже 8 Мбит, но микросхемы более мелкие. Ну речь об установке в корпус тут не шла в принципе.

(Ссылка на вложение)

Вот это бандура. Забавно конечно, но такое уже слишком

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 24640
    • Просмотр профиля
Это для разработчиков, там не критично

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
Я свою программу доделал. Собрал её, всё работает. Даже на вин хр запускается. Могу скинуть сюда, если будет интересно кому то

Оффлайн JRBVZ

  • Пользователь
  • Сообщений: 308
    • Просмотр профиля
Кидай, может кому пригодится.

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
Вот программка. Работает просто. Берём ром игры и кладём рядом с exe файлом. Переименовываем его в "file.bin" (программа предупредит об этом, если не найдёт его) и запускаем. На выходе получится 2 файла: "A.bin" и "B.bin". На этом всё, можно зашивать. Заводится даже на win xp без каких либо проблем.

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 388
  • Пол: Мужской
    • Просмотр профиля
 Спасибо,опробуем  :)

Оффлайн Yoti

  • Пользователь
  • Сообщений: 4416
  • Пол: Мужской
  • Не тро-гай ме-ня
    • Steam
    • Просмотр профиля
Переименовываем его в "file.bin" (программа предупредит об этом, если не найдёт его)
Кошмар какой...

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
Кошмар какой...
А почему кашмар? Типо, что нет окошка с выбором файла или чего то подобного? Если да, то это в планах сделать

Оффлайн Yoti

  • Пользователь
  • Сообщений: 4416
  • Пол: Мужской
  • Не тро-гай ме-ня
    • Steam
    • Просмотр профиля
valera0141,
потому, что есть первый аргумент для таких случаев.

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
Обновил свою программку. Теперь достаточно просто перетянуть файл с ромом на exe файл. Теперь переименовывать и класть рядом не обязательно. А дальше как и раньше, в папке появятся два файла для зашивки в микросхемы.
« Последнее редактирование: 05 Апрель 2023, 09:56:57 от valera0141 »

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
Вдруг кому пригодится. Сделал свой лай платки картриджа. Всё работает. На плате обозначены микросхемы как А и B. При разбивке рома через мою программу получаются файлы с названиями A и B. Не трудно догадаться, что к чему. Нашёл у себя какие то низкопрофильные панельки для микросхем и впаял. Вместе с ними спокойно входит в корпус картриджа, при этом микросхемы можно менять без пайки  :D

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 388
  • Пол: Мужской
    • Просмотр профиля
valera0141, красиво получилось  :)
  А какой максимальный объём получился?
 

Оффлайн valera0141

  • Пользователь
  • Сообщений: 214
    • Просмотр профиля
valera0141, красиво получилось  :)
  А какой максимальный объём получился?
У меня под рукой целая пачка разных микросхем, но все на 128кб. На один картридж идёт 2 микросхемы, то есть у меня максимум 256кб игра влезет. Можно поставить какие нибудь Am29F040B к примеру, тогда суммарно можно записать ром размером до 8 Megabit. Вроде ещё есть 29F080 серия, тогда можно будет записать уже до 16 Megabit ром. В теории можно любые подходящие микросхемы любого объёма поставить, лишь бы по ногам совпали, и программатор их осилил.