Конвертер формата

Тема в разделе "WASM.BEGINNERS", создана пользователем ivanches, 8 дек 2009.

  1. ivanches

    ivanches New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2009
    Сообщения:
    25
    Помогите советом/ссылкой новичку.
    Появилось непреодолимое желание :) написать програмку на FASM'е, програмку конвертер из неизвестного формата в формат ZIP.
    Большинство "игроделов" запаковывают файлы в обычный формат ZIP, меняя только сигнатуру на свою , индивидуальную, поэтому обычными архиваторами их не распаковать. У меня есть куча разных программ кои конвертят, но немного бесит ,что программы заточены под определённые (известные) форматы игровых файлов и нет возможности внести изменения, а кучу барахла на компе держать - запутаешься! Хочу универсализма :) , да и просто интересно....
    Подскажите люди добрые, есть ли где исходники подобного конвертера , желательно для FASM'а ?!
     
  2. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    ivanches
    Гребанный экибастуз!

    плохое начало. Одним словом под описанную задачу думаю следует сделать так. Взять архиватор zip и научить его работать не зависимо от сигнатуры.

    тогда зачем сразу сорцы

    зачем сорцы если вам надо инструмент? поменять в эбаут на "ivanches"?

    PS про исходник могу очень уверено сказать что его нету, да еще и на фасме
     
  3. ivanches

    ivanches New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2009
    Сообщения:
    25
    Вчера сидел день вручную редактировал два файла, тупо заменял 0xFBFCD4AF на 0x04034B50, 0xF9FAB4AF на 0x06054B50 и 0xFDFEB4AF на 0x02014B50 . Может как-то можно реализовать сей алгоритм на ассме? В какой нить ини файл записать строки кои нужно менять.... в кваке одно, в готике другое....
     
  4. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    ivanches
    у меня несколько вопросов
    1. почему именно на асме?
    2. Может научишься программировать( к асму близко не подходи, си луше учи)? или нам за тебя писать?

    а так можно, и даже просто.
     
  5. ivanches

    ivanches New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2009
    Сообщения:
    25
    P.S. Хочу добавить, что нет задачи разархивировать! Есть задача переконвертить быстро не копируя файлы, т.е. изменения вноить непосретственно в байт код.... некоторые объёмы достигают 20ГБ. важна скорость щёта/замены.
     
  6. ivanches

    ivanches New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2009
    Сообщения:
    25
    1. ХЗ :) понравился, да и форум по ассму же !
    2. Хотелось бы, вот и буду учиться на примерах :) Но если примеров/скелетов нет, писать их за меня конечно не стоит...
     
  7. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    ну так пиши, раз понравилось. Задача тривиальная.

    еще раз повторяю задача тривиальная
     
  8. CyberManiac

    CyberManiac New Member

    Публикаций:
    0
    Регистрация:
    2 сен 2003
    Сообщения:
    2.473
    Адрес:
    Russia
    ivanches, всё что тебе надо, это:
    0. раздобыть консольный разархиватор
    1. снять копию с файла
    2. заменить в копии первые 4 байта на сигнатуру зипа
    3. натравить на него разархиватор (распаковывать необязательно, можно просто запросить список файлов в архиве или тест на целостность), дождаться окончания его работы и посмотреть результат (GetExitCodeProcess)
    4. удалить копию
     
  9. ivanches

    ivanches New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2009
    Сообщения:
    25
    См. пост номер 3 :)
     
  10. ivanches

    ivanches New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2009
    Сообщения:
    25
    P.S. и номер пять...
    Или я недопонял, "всё что мне надо" ??????
     
  11. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    в них используется не зип, а злиб. используйте и вы ее
     
  12. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    ivanches
    1) Если цель именно распаковщик написать, то проще все-таки действительно zlib или другую библиотеку использовать.
    2) Если цель научится программировать, то не надо каждый шаг свой выверять на форумах. Пока вы в голове не научитесь скелет алгоритма видеть и все биты, слова и т.д. - никакой супер-гуру вас этому не научит. Если это не получается, бросьте "низкое" программирование - программирование интерфейсов тоже хорошо кормит некоторых.
     
  13. ivanches

    ivanches New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2009
    Сообщения:
    25
    Спс , за пояснение, посмеялсо :) простите за каламбур, но и в зипе тож изпользуется злиб :lol: т.е. масло маслянное получается....
     
  14. ivanches

    ivanches New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2009
    Сообщения:
    25
    Предыдущий пост 2qqwe
    ................................
    2valterg
    3) Есть желание кое описано в начале топика, достаточно подробно и ясно, примеров увы нет, ссылок тож.
     
  15. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    кто бы говорил про мыслете... вам советуют БИБЛИОТЕКУ, просто используйте ее, насколько я помню у нее вообще нету не каких сигнатур те вам просто надо будет пропускать пару байт
     
  16. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Если ты думаешь, что это четкое желание или то, что написано там еще, то ошибаешься. Это просто от незнания. Не все пакуют через zip, в zip есть два разных типа алгоритмов и т.д и т.п.
    Поэтому я конкретно и спросил : тебе несколько игр или универсальный комбайн.
    Абсолютно универсальный это голова+руки и другого никогда не будет. Годный для старых игрушек - STUNS. Он кстати с исходниками и там кроме zip еще два алгоритма зашито.
    Тут недавно заказали ресурсы из игры вытащить, там вообще все в открытую лежит. Единственно, что пришлось сделать - это найти и "расшифровать" каталог.