Разработка и ромхакинг > Ромхакинг и программирование
Программа для записи и извлечения блоков файлов
(1/1)
yur:
Всем нуждающимся посвящаю.
Итак, в программе всё тупо как в паровозе:
Есть поддержка drug n drop (каждая область открывает свои файлы с требуемым расширением).
Диапазоны извлечения и записи в формате hex
Диапазоны извлечения и записи можно сохранять
paul_met:
Не совсем понятно, как работает запись при несовпадении размера блока и диапазона. Блок обрезается, если он больше диапазона? А если меньше - начинает дублироваться?
yur:
В программе присутствует необходимая обработка ошибок - блоки не обрезаются и не изменяются
Mefistotel:
Это, наверное, для тех, кому не нравятся hex редакторы)
Yoti:
Ага. Только вот без редактора диапазон (почему-то в программе обозванный во множественном числе) не узнать.
MetalliC:

--- Цитата: yur от 05 Декабрь 2016, 02:24:48 ---Есть поддержка drug n drop
--- Конец цитаты ---
улыбнуло, закинулся - и айда блоки извлекать :biggrin:
paul_met:
В общем, попробовал прогу. У меня так и не получилось ни корректно извлечь блок, ни записать. Извлекаются только нули. А при записи ругается, что размер файла меньше размера блока. Ну а расширения блоков из кириллицы - это, честно говоря, немного дикость.
yur:

--- Цитата: paul_met от 07 Декабрь 2016, 08:40:16 ---В общем, попробовал прогу. У меня так и не получилось ни корректно извлечь блок, ни записать. Извлекаются только нули. А при записи ругается, что размер файла меньше размера блока

--- Конец цитаты ---

такс - ошибки исправил )

Добавлено позже:

--- Цитата: MetalliC от 07 Декабрь 2016, 00:22:51 ---улыбнуло, закинулся - и айда блоки извлекать :biggrin:


--- Конец цитаты ---
ну тип того )))

исправленное вложение вверху

Добавлено позже:

--- Цитата: Mefistotel от 06 Декабрь 2016, 23:52:18 ---Это, наверное, для тех, кому не нравятся hex редакторы)

--- Конец цитаты ---
не - эт для удобства )
Глупый:
Aльтернекромикропост.

P.S. Мотороллер не мой... (Ц)

Известные баги и фичи:
Это пара Splitter+Insertеr с управлением из файллиста.
Filelist не может содержать нечётные размеры смещения(только 2,4,6 или 8 разрядов) иначе crash, но вполне допускает 5байтовый(10разрядов) указатель, что для 32битных программ как-то слишком. Следовательно файлы за пределами 4Gb будут забиты мусором.
Файл-контейнер не может иметь нулевой размер и не будет увеличен\уменьшен.
Bonus: Python кодек YAY, YAZ, MIO от Zoinkity и его форк на C#.
Глупый:
Новые версии.

Больше утилитки не занимаются непотребством за гранью 4Gb.
Кто бы ещё, кроме меня, догадался там подобные 32-битные утилитки применять, ога.
Смещения и размеры соответственно теперь могут эти самые 4Gb превышать.

Возможности: грабить корованы интернет-архивы(типа warc), жечь 5G-вышки SSD и прочие "плешки", любить гусей HDD. Паддинг стал необязательным параметром и теперь Rewriter может байтить: в прилоге, навскидку и в лёт.  Т.е. теперь доступно не только "обнуление"(см. Example), но и весь остальной спектр забайчивания, можно попробовать 80, например.   Остальной функционал, вероятно, будет доведён в части касающейся, когда придёт время... Тык.
Файлик(временная ссылка) же из Exampl'a содержал, как несложно заметить, 473 653 элемента в 10,8Gb.
Ограничения: по 8байт(16 разрядов) на указатели и на размеры элементов в файле-контейнере, 2Gb на размер файллиста. Файл-контейнер не может иметь нулевой размер и не будет увеличен\уменьшен.

Музыка
Весь набор функций и приёмов работы с данными утилитками неизвестен, мне столько не отрефлексировать.
Но...
Полагаю, что каждого ребёнка, в школе, важно научить самостоятельно решать задачи о трубах и бассейне, и различать их в проявлениях иллюзии. (Ц) Моё

Ну вы поняли: тык.
Или не поняли: тык.


--- Код: ---i7 2630QM
8Gb DDR3 PC3-10700 dual
Hitachi_HTS547564A9E384
Win7x64 Home_Basic
warc-файл 10.8 Gb

473 653 мелких файла.
~ 40 минут на извлечение.
~ 48 минут на вставку.
~ 25 минут понадобилось тоталу на удаление.
~ 23 минуты cравнение.

4 файла (3 больших и хвостик, см. example)
~ 8 минут на извлечение.
~ 12 минут на вставку.
~ 2 секунды понадобилось тоталу на удаление.
~ 27 минут сравнение.

Забайчивание (аналог fill из HeX-редакторов)
~ 5-7 минут

--- Конец кода ---

P.S.
Мумуленд - родина Муми-троллей!
"Но как же они попали на стол к Туве Янсен, да ещё и когда?" - резонно заметите вы.
А я вам отвечу: "Быть может как-нибудь так..."

P.P.S.
Заело твою музыку...
Yoti:
Прога умеет что-то, что не может сделать Swiss File Knife?
Глупый:

--- Цитата: Yoti от 21 Август 2020, 02:14:18 ---Прога умеет что-то, что не может сделать Swiss File Knife?
--- Конец цитаты ---

Без понятия. Split (cut), concat (join) в никсах всегда вроде были. По крайней мере помню их со слаквари.
В винде же дело обстояло несколько иначе, до миграции в неё никсового софта...
Сплиттер здесь - это урезанная до bin\skip версия функционала вот этой утилитки Zoinkity и файллисты соответственно тоже оттуда.
Красота идеи файллистов и лежит в основе данной пары утилит.
Собиралка появилась, только чтобы пользоваться тем же самым файллистом, что и Midwaydec, а когда стало ясно насколько это хорошо, то появился и сплиттер (до того хватало FileCutter'а).

Если будет понятна идея утилитки Midwaydec - будет ясно и то, чем эта пара утилиток отличается от всех остальных сплиттеров-конкатенаторов.

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

Перейти к полной версии