Multi ROM Linker

Проєкти учасників, ретрозбірки, відновлення
Відповісти
Аватар користувача
alk0v
Адміністратор
Повідомлень: 202
З нами з: 05 квітня 2023, 19:04
Дякував (ла): 80 разів
Подякували: 155 разів

Multi ROM Linker

Повідомлення alk0v »

Проект вечора пятниці. Написав програму - лінкер для склеювання декількох ROM-дампів в один великий ROM образ. Зазвичай використовується в мультикартріджах з програмним або апаратним перемиканням банок памяті. Колись я вже писав таку для Vectrex, але, нажаль, похідні файли не зберіглися, тому довелось робити заново.

Ідея дуже проста, треба вибрати розмір банки (це оригінальний образ), та розмір ПЗУ в яке це все треба зашити. Далі просто закидуєте потрібну кількість файлів в список, можна переміщювати їх по списку змінюючи порядок.

Якщо розмір файла більше розміру банки, буде помилка та прогама підсвітить де проблема.

Також є перевірка, якщо ви додали замало або забагато файлів в список.

Коли додана правильна кількість файлів, програма сформує з них загальний бінарний файл розпихавши дані з файлів по масиву з кроком, що дорівнює розміру банки, та запише це все у вказаний файл.

Параметри розмірів банок та EPROM зашиті в програму. Розмір банки від 8 до 512 кБ, розмір EPROM від 128 кБ до 1 Мб, якщо ще шось треба додати - пишіть.
rom_linker.png
Проект написано на C# під .NET Framework v.3.5, тобто працювати мусить навіть на Windows XP.
MultiROM Linker v.1.1.zip
MultiROM Linker SRC.zip
Посилання на Github: MultiROM-Linker
У вас недостатньо прав для перегляду приєднаних до цього повідомлення файлів.
Співзасновник Software & Computer Museum
Аватар користувача
semack
Адміністратор
Повідомлень: 36
З нами з: 03 квітня 2023, 09:41
Звідки: Кременчук
Дякував (ла): 123 рази
Подякували: 20 разів
Контактна інформація:

Re: Multi ROM Linker

Повідомлення semack »

Думаю, що краще такі речі на github.
nice guys finish last
Аватар користувача
alk0v
Адміністратор
Повідомлень: 202
З нами з: 05 квітня 2023, 19:04
Дякував (ла): 80 разів
Подякували: 155 разів

Re: Multi ROM Linker

Повідомлення alk0v »

semack писав: 19 серпня 2023, 08:29 Думаю, що краще такі речі на github.
Додав :)
https://github.com/alk0v/MultiROM-Linker
Співзасновник Software & Computer Museum
val_dp
Повідомлень: 138
З нами з: 06 квітня 2023, 18:41
Звідки: Дніпро
Дякував (ла): 73 рази
Подякували: 186 разів

Re: Multi ROM Linker

Повідомлення val_dp »

Вважаю, раз мінімальний розмір банки 8 кБ, тому розмір EPROM варто починати від 16 кБ. (можна, звісно, і безпосередньо в процесі програмування ПЗУ "позклеювати" файли, але, якщо є такий інструмент...)
alvis
Модератор 8 bit
Повідомлень: 19
З нами з: 07 квітня 2023, 16:27
Дякував (ла): 5 разів
Подякували: 7 разів

Re: Multi ROM Linker

Повідомлення alvis »

alk0v писав: 19 серпня 2023, 02:33 Параметри розмірів банок та EPROM зашиті в програму. Розмір банки від 8 до 512 кБ, розмір EPROM від 128 кБ до 1 Мб,
Я так понимаю, софтина просто клеит банки с заданным смещением (размер банки)? Тогда предложение. Понятно, что рассчитывал под картриджи, но может не стоит ограничивать нижний размер восемью килобайтами? а сделать например 128-256-512-1024-2048-... ? Или иметь возможность еще и мануально задать размер банки и ПЗУ? Это позволит более широко использовать софтину, например клеить части епромок (РЕ, РТ). Так же если добавить возможность разбиения на две и более ПЗУ (четную и нечетную), было бы вообще здорово.

А в перспективе (можно же пофантазировать? :) ), можно было бы добавить окно с ascii/hex просмотром и редактированием, и возможность прошивать ПЗУ (например формировать строку для консольной версии программатора)...
Аватар користувача
alk0v
Адміністратор
Повідомлень: 202
З нами з: 05 квітня 2023, 19:04
Дякував (ла): 80 разів
Подякували: 155 разів

Re: Multi ROM Linker

Повідомлення alk0v »

Размеры банок и епромов добавить не сложно, буду еще мелкие изменения вносить, добавлю.
можно было бы добавить окно с ascii/hex просмотром и редактированием
А чем существующие HEX-редакторы не устраивают?
добавить возможность разбиения на две и более ПЗУ (четную и нечетную)
Нужно описание алгоритма. Разбивать результирующую склееную? Или что именно разбивать?
Співзасновник Software & Computer Museum
alvis
Модератор 8 bit
Повідомлень: 19
З нами з: 07 квітня 2023, 16:27
Дякував (ла): 5 разів
Подякували: 7 разів

Re: Multi ROM Linker

Повідомлення alvis »

Да, разбить результирующую. Четные байты в одну микросхему, нечетные в другую. Разумеется без пропусков. Т.е. 0-2-4-6... байты результирующей прошивки, станут 0-1-2-3... байтами четной ПЗУ. То же самое с нечетными.

P.S. И обратный процесс. Собрать четную и нечетную в один файл.
Аватар користувача
alk0v
Адміністратор
Повідомлень: 202
З нами з: 05 квітня 2023, 19:04
Дякував (ла): 80 разів
Подякували: 155 разів

Re: Multi ROM Linker

Повідомлення alk0v »

Додав версію 1.1 (посилання в першому пості)
  • Банки від 1к до 512к
  • EPROM від 2716 (2к) до 27с080 (1Mb)
  • Кнопка Reset Index щоб перерахувати номер банки
Співзасновник Software & Computer Museum
Відповісти

Повернутись до “Проєкти”