TRDtool by Shiru ([email protected]) Official site: https://shiru.untergrund.net/software.shtml
Current version: v2.22 - 09'18
Утилита предназначена для:
- Извлечения отдельных файлов (без лишних заголовков - в том виде, как они есть) из образов диска TRD, SCL и Hobeta;
- Добавления файлов и Hobeta-файлов в образы TRD, SCL;
- Конвертации отдельных файлов в Hobeta-файлы;
- Некоторых других операций.
Утилита представляет собой консольное Win32 приложение. Работает через командную строку, может использоваться при автоматизации через bat-файл. Изначально была написана для упрощения процесса сборки при портировании игры Time Gal под ATM Turbo2 + CD. Впоследствии была дополнена рядом функций и по просьбе Alone Coder'а выброшена в народ в 2006 году.
Внимание: возможны ошибки. Не забывайте про своевременный бэкап образов, к которым применяются деструктивные операции (удаление файлов из образа, добавление файлов в образ).
Входные параметры:
- Без параметров выдаёт страничку помощи;
- С параметрами filename.trd или filename.scl выводит каталог образа;
- С параметром filename.$x (любой Hobeta-файл) сохраняет его без заголовка;
- С параметрами filename.trd или filename.scl и перечислением имён файлов внутри образа извлекает эти файлы из образа;
- С параметром filename.ext (любое расширение, кроме .trd, .scl и .$**) создаёт Hobeta-файл из указанного файла, с тем же именем, но расширением .$*, где * - первая буква оригинального расширения;
- С параметрами ! filename.trd или filename.scl и перечислением имён файлов внутри образа удаляет эти файлы из образа (файлы удаляются полностью, образ перезаписывается поверх старого!);
- С параметрами + filename.trd или filename.scl и перечислением имён файлов добавляет перечисленные файлы в образ;
- С параметрами # filename.trd или filename.scl создаёт пустой образ (640K для .trd). Именем диска будут первые 8 символов имени образа;
- С параметрами @ filename.trd или filename.scl производит операцию move;
- С параметрами $ filename.trd производит 'обрезку' trd-образа.
Особенности:
- В операциях извлечения и удаления файлов регистр букв в именах внутри образов игнорируется;
- При наличии в образе двух и более файлов с полностью одинаковыми именами операция проводится только с первым из них;
- Удалённые файлы в образе можно извлекать, используя в качестве первого символа их имен знак ~ (тильда);
- Если длина в байтах в каталоге образа указана нулевой, извлеченный файл будет иметь размер 'длина в секторах*256', иначе тот, что указан;
- Незначащие пробелы в именах файлов внутри образов (до расширения) можно не указывать. Значащие пробелы можно указать, заключив имя в кавычки;
- При ошибке извлечения или удаления одного из файлов (например, не найден в образе) процесс не прерывается, остальные файлы будут извлечены/удалены;
- При конвертации файла в Hobeta и при добавлении файлов в образ имена обрезаются до 8 символов. Регистр имени при этом не изменяется;
- Поддерживаются трёхсимвольные расширения, но при указании файла внутри образов (для извлечения или удаления) учитывается только первый символ расширения.
- При удалении файлов из образов производится операция move, но ранее удалённые файлы она не затрагивает.
- При добавлении Hobeta-файлов в образ диска информация о файле берётся из заголовка, сам заголовок не добавляется.
- При добавлении файлов в образ не проверяется наличие одноимённых файлов в образе, файл добавляется в любом случае (если в образе достаточно места для него).
- Поддерживаются 'укороченные' (менее 640K) trd-образы. В случае, если такой образ будет указан для любой операции, изменяющей образ, он будет сохранён как укороченный.