Форум Magic Team

Разное => Программирование => Тема начата: TrickZter от 15 Марта 2011, 13:09:21

Название: Magic File Resizer
Отправлено: TrickZter от 15 Марта 2011, 13:09:21
Выкладываю для теста простенькую, но иногда необходимую тулзу  ;D
Что она делает? Она меняет размеры файлов, в любую сторону: уменьшения/увеличения. Выглядит она вот так:
(http://img848.imageshack.us/img848/6366/61919004.jpg)

В поле "File name" отображается имя изменяемого файла. При открытии файла в поле "Size in bytes" вносится текущий размер файла. Чтобы изменить размер файла нужно в этом поле ввести новый размер или же ввести величину изменения файла с соответствующим знаком, после чего нажать кнопку "Resize". Перед тем как окончательно изменить размер файла программа выдаст сообщение с текущим и будущим размером файла. Если вы заметите, что допустили ошибку, то можно будет просто нажать кнопку "No" и размер файла не изменится.

У тулзы три основные фишки: 1) она понимает 16-ричные размеры, 2) можно в конце добавлять kb/mb/gb/кб/мб/гб (без разницы в верхнем или нижнем регистре), 3) можно задавать не только итоговый размер, но и изменение размера файла. Примеры:
$10000 - размер файла станет 65536 байт
10mb - размер файла станет 10485760 байт
-33 Кб - размер файла уменьшится на 33792 байт
+$10 гБ - размер файла увеличится на 17179869184 байт (16 ГБ)
Примечание: наличие или отсутствие пробелов (где бы то ни было) не имеет никакого значения. Можно даже так записать: - 3 3 к     б

Если есть какие-то предложения по усовершенствованию тулзы, то говорите их здесь :)

Сама тулза во вложении:

EDIT:
Тулза теперь там: http://magicteam.net/utils.htm#MFR
Название: Magic File Resizer
Отправлено: nikita600 от 15 Марта 2011, 16:51:54
Забираю :)
Может пригодится... ...когда-нибудь  :)
Название: Magic File Resizer
Отправлено: Delex от 15 Марта 2011, 19:14:08
VK, не пали контору LOL
Название: Magic File Resizer
Отправлено: TrickZter от 15 Марта 2011, 19:20:54
VK, не пали контору LOL
Понял, исправил :)
Название: Magic File Resizer
Отправлено: TrickZter от 22 Марта 2011, 13:24:39
Новая версия тулзы теперь поддерживает drag and drop (перетаскивание файлов на окно программы) :) Тулза зарелизена:
http://magicteam.net/utils.htm#MFR
Название: Magic File Resizer
Отправлено: JurasskPark от 22 Марта 2011, 15:17:13
Я одного понять не могу. А РОМ'ы после таких изменений работают?
Название: Magic File Resizer
Отправлено: SN.ap от 22 Марта 2011, 17:33:32
Расскажите тёмному - зачем это делать? В смысле размер изменять. Знаю что иной раз разработчики дутые файлы делают, и для уменьшения сия программка поможет. Но вот увеличение... Зачем?
Название: Magic File Resizer
Отправлено: Delex от 22 Марта 2011, 18:03:57
Чтобы все уместить в ром. Например переведенный текст. Если пойнтеры 4-байтные - идеальный вариант все кинуть в конец рома на это самое расширенное место
Название: Magic File Resizer
Отправлено: TrickZter от 22 Марта 2011, 18:05:13
А РОМ'ы после таких изменений работают?
Работают. Правда на родном железе (да и в эмуляторах) есть ограничения на размер файла, так что за его пределы лучше не вылезать. Например на Сеге-Меге максимально допустимый размер файла - 4 МБ, хотя на эмуляторах можно и до 8 расширить.
Расскажите тёмному - зачем это делать? В смысле размер изменять. Знаю что иной раз разработчики дутые файлы делают, и для уменьшения сия программка поможет. Но вот увеличение... Зачем?
Например, если текст не влезает. Английский и особенно японский текст занимает меньше места, чем русский, поэтому не всегда удаётся запихнуть текст в его изначальные рамки. Аналогичные проблемы бывают со шрифтами и другой графикой.
Название: Magic File Resizer
Отправлено: SN.ap от 23 Марта 2011, 17:49:58
А, ясно, спасибо. :)
Название: Magic File Resizer
Отправлено: greengh0st от 23 Марта 2011, 21:56:56
молодец TrickZter, еще бы как мы говорили, хекс редактор типа goldFinger ))) было бы вообще кул, а то на семерке ты сам знаешь в голде не влезает один байт в строчку)))
Название: Magic File Resizer
Отправлено: Вячеслав от 09 Ноября 2020, 12:50:51
Здравствуйте.
Столкнулся с проблемой недостатка места в РОМе для вставки текста.
Размер РОМа 00040000, с помощью программы увеличить возможно, однако смущает момент, что максимальное смещение которое встречается в РОМе составляет 24010, пойнтеры 2 байтовые, даже при максимальном значении пойнтера FFFF + 24010 = 3400F получается адрес, который меньше размера РОМа. Правильно ли я понимаю, что увеличение РОМа в данном случае бесполезно и нужно создавать свой словарь для того, чтобы текст уместился в существующие границы ?
Название: Magic File Resizer
Отправлено: Griever от 09 Ноября 2020, 20:32:24
А под какую платформу игра?
Название: Magic File Resizer
Отправлено: Вячеслав от 09 Ноября 2020, 21:53:14
NES
Название: Magic File Resizer
Отправлено: Griever от 10 Ноября 2020, 20:49:49
Расширение ромов NES - очень обширная тема. Сложности связаны, в основном, с мапперами. Вот здесь (http://www.romhacking.net/forum/index.php?topic=19026.0) попытались объяснить основы.
Название: Magic File Resizer
Отправлено: Вячеслав от 11 Ноября 2020, 10:01:44
Спасибо, почитаю

[Дата добавления: 11 Ноября 2020, 22:51:38]
Почитал, но без примеров это довольно сложный технический документ и как это реализовать не понятно
Название: Magic File Resizer
Отправлено: Вячеслав от 14 Ноября 2020, 08:40:29

Расширение ромов NES - очень обширная тема. Сложности связаны, в основном, с мапперами. Вот здесь (http://www.romhacking.net/forum/index.php?topic=19026.0) попытались объяснить основы.
Здравствуйте.
В продолжение темы: выяснил что у моего РОМа MMC1 маппер, а PRG-ROM 16x16 Кб (256 Кб).
Если я правильно понял, для увеличения доступного размера в РОМе неообходимо сделать его 512 Кб ?
В статье указывается, что данный маппер имеет какую-то свою особенность переключения банков памяти, не такую как описано в статье. Есть ли где-то информация по данному случаю ?
Название: Magic File Resizer
Отправлено: Griever от 14 Ноября 2020, 20:50:39
Да, MMC1 можно расширить до 512. Удваиваешь количество банков, и добавленные можно использовать как захочешь. Но чтобы использовать их в игре нужно делать свою ассемблерную вставку, которая переключит нужный тебе добавленный банк, потом использует его данные (распакует/скопирует текст или графику), а затем переключится обратно и вернется к исходному коду игры.
Название: Magic File Resizer
Отправлено: Вячеслав от 14 Ноября 2020, 22:06:58
Да, MMC1 можно расширить до 512. Удваиваешь количество банков, и добавленные можно использовать как захочешь. Но чтобы использовать их в игре нужно делать свою ассемблерную вставку, которая переключит нужный тебе добавленный банк, потом использует его данные (распакует/скопирует текст или графику), а затем переключится обратно и вернется к исходному коду игры.
А хоть где-то можно посмотреть образец этого чуда или путь только один ... погружаться в азы ассемблера ? :)
Название: Magic File Resizer
Отправлено: Griever от 15 Ноября 2020, 22:36:08
Ну да, без ассемблера ты не сможешь использовать добавленные банки. Начать чтение можно вот с этого (https://wiki.nesdev.com/w/index.php/MMC1).