Просмотр полной версии : Тул для конвертации образов носителей
Alex Rider
19.04.2012, 22:23
Всем привет!
Хочется поиметь тул, который позволял бы работать с образами различных носителей для спека, при это мпозволял бы однообразно-безобразно выполнять операции с файлами независимо от формата образа (источника-приемника). Хочется поддерждки таких форматов образов:
trd;
scl;
tap;
Помимо этого хочется такие источники файлов из файловой системы PC:
двоичный файл;
hobeta;
Хочется такие операции:
создание образа;
каталог образа;
копирование файлов между образами;
правка параметров файла в образе;
удаление файлов из образа;
добавление файлов из файловой системы PC;
извлечение файла из образа на PC;
полная пофайловая конвертация форматов образов;
MOVE для образа диска;
склейка файлов (?)
упаковка файлов (?)
Еще такие требования:
тула коммандлайновая;
для операций, добавляющих в "каталог" образа-приемника стандартные файлы Спектрума, должно быть предусмотрено переопределение параметров;
тула не тащит за собой .NET;
отстутствие багов;
Вопросы ко всем:
1) Есть ли такая тула в реальности?
2) Нужна ли такая тула кому-нибудь, кроме меня?
3) Если предыдущий ответ "да", то чего бы еще от нее хотелось (требования, форматы, операции)?
Если такой тулы (хотя бы на 50%) нет, я бы, вероятно, написал бы ее.
SoftLight
19.04.2012, 22:33
Да, почти все это уже есть: ZX-Blockeditor 2.0 (http://www.zxmodules.de/). Но альтернатива бы не помешала.
Как-то давно писал модель для работы с TRD+SCL. Если сильно надо, то могу продолжить дело. Самое сложное здесь - упаковка и перепаковка образов - можно легко наломать дров, что-то не изменив ;)
PS: Моя прога писалась для слежения за базой образов и удаления дублей файлов в ее образах (не более, но остальное реализуется на этой основе проще простого).
Alex Rider
19.04.2012, 23:37
Да, почти все это уже есть: ZX-Blockeditor 2.0.
Самое главное, чего там не хватает - command line. Я хочу сделать тул для post build event'а, чтобы скомпиленные SjASM'ом бинари можно было убрать в образ, годный для показа честным людям. Плюс - мечта идиота - конвертилка tap -> trd, чтобы без копировщиков.
за базой образов и удаления дублей файлов в ее образах
Поделишься? Образами.
Shadow Maker
20.04.2012, 13:03
Самое главное, чего там не хватает - command line. Я хочу сделать тул для post build event'а, чтобы скомпиленные SjASM'ом бинари можно было убрать в образ, годный для показа честным людям. Плюс - мечта идиота - конвертилка tap -> trd, чтобы без копировщиков.
Я чет не понял, нафига? У меня например после компиляции в sjasm создается trd со всеми файлами, как раз годный для показа людям. Ты чтоли не знаешь команду SAVETRD?
Alex Rider
20.04.2012, 13:14
Я чет не понял, нафига? У меня например после компиляции в sjasm создается trd со всеми файлами, как раз годный для показа людям. Ты чтоли не знаешь команду SAVETRD?
Знаю, отказался. Помимо того, что в моей версии SjASM (последняя версия у меня не работает) она не позволяет рулить параметрами BASIC-файла (строка автозапуска, положение переменных в BASIC-файле), есть еще одна проблема. Мне надо собирать разный набор TRD-файлов в образ, в том числе, результаты компиляции разных проектов; при этом сборка должна быть параметризированной. bat-файлы для этого подходят чуть более, чем, но нет тулы для сборки и "тюнинга" образа. Для архивирования и и склейки, вероятно, надо писать еще один хитрый проект, который будет делать только INСBIN и SAVETRD. Все это не гуд.
Shadow Maker
20.04.2012, 14:02
Параметрами басика да, не дает рулить. Но все же не вижу особой разницы между параметрами внутри асм-файла и параметрами в bat-файле.
Alex Rider
20.04.2012, 14:41
Параметрами басика да, не дает рулить. Но все же не вижу особой разницы между параметрами внутри асм-файла и параметрами в bat-файле.
В принципе, да. bat идеологически правильнее (а-ля post build event в MSVS), да и хотелось иметь просто тул для делания чего угодно с образами без эмулятора. Плюс, из ассемблера не получится паковать файлы. Думаю, что без серьезной необходимости, наверно, нет смысла это писать - трудозатраты серьезные. С другой стороны, надумаю - может, сделаю. Хотелось больше узнать тут, если делать - то что, чтобы было полезно общественности.
было полезно общественности.
Нужен удобный инструмент, могущий импортировать-экспортировать файлы между хобетой и TAP/TRD.
То есть из функций только создание образа, копирование файлов, удаление файлов.
Все остальное либо решается малой кровью через скрипты, либо вообще непонятно зачем нужно. MOVE для trd-файла, например, я не вижу ни одного случая, когда бы он мог понадобиться именно для целей автоматизации сборки чего-нибудь.
Поделишься? Образами.
Делал не для себя + так и не доделал, косяки остались :(
А проект до сих пор висит на диске - если надо, могу выложить, может поправите косяки (если остались, уже не помню, давно дело было. По-хорошему надо все переписать, ибо тогда я в программировании был новичком).
Alex Rider, если что, никого не слушай, делай! в свое время была нужна такая же утиль за этим же. особенно если маленькая, консольная (и еще лучше, если под линукс будет собираться).
* правка параметров файла в образе - это start/len/sec? если да, то очень нужно.
* склейка файлов - если это склейка соседних файлов по секторам - нужно.
Нужен удобный инструмент, могущий импортировать-экспортировать файлы между хобетой и TAP/TRD.
То есть из функций только создание образа, копирование файлов, удаление файлов.
http://zx.pk.ru/showthread.php?t=13524
Alex Rider
25.04.2012, 16:34
и еще лучше, если под линукс будет собираться
Гм... Если засяду писать, планировал на Delphi, на нем скорее всего пишется. Ибо .NET не хочу, а C++ мне не родной + руки переточились с него. Если общественности очень надо, сделаю на C++, тока подольше. Али для Linux можно Delphi Console Application собрать? Не в курсе просто.
Лас, Мне надо консольно для post build event'а SjASM'а. Ибо ассеблерный файл наполовину из IFDEF'ов для сборки разных конфигураций коробит.
http://zx.pk.ru/showthread.php?t=13524
Ага, плюс inTRD, inSCL. Это все, конечно, пользую. Но хочется коммандлайна, и да, кроссплатформенного.
для Linux можно Delphi Console Application собрать? Не в курсе просто.
да никаких проблем
lazarus (http://www.lazarus.freepascal.org/)
хм... ну раз делфи... (вот за это я его и не люблю)
можно на линукс забить:) линуксоиды ССЗБ :)
хм... ну раз делфи... (вот за это я его и не люблю)
можно на линукс забить:) линуксоиды ССЗБ :)
Если не использовать функций из win32 api (а их незачем использовать, файловые операции в паскале встроенные), то код на дельфи должен компиляться фрипаскалем вообще без каких-либо изменений
в этом смысле сишник, не удержавшийся от соблазна написать #include <windows.h> и заюзать пару функций оттуда, напишет гораздо менее кроссплатформенный код
тула не тащит за собой .NET;
Господи, неужто кто-то еще на win95 сидит!?
в моей версии SjASM (последняя версия у меня не работает)
А чего неработает-то? win95 таки!?
Alex Rider
05.05.2012, 11:44
Господи, неужто кто-то еще на win95 сидит!?
.NET не нужен по другим причинам. Например, сборка пол *nix или необходимость писать под старые .NET'ы, чтобы работало у всех.
А чего неработает-то? win95 таки!?
Нет, Win7 x64. Развал во время компиляции. Обнаружено давно и не исследовано. RC7 вполне хватает.
.NET не нужен по другим причинам. Например, сборка пол *nix или необходимость писать под старые .NET'ы, чтобы работало у всех.
Под никсы есть моно. Пиши под .net 2.0: там более чем достаточно функционала, а работает и на маках и на андроидах и на чертовой туче еще чего.
.Нет, Win7 x64. Развал во время компиляции. Обнаружено давно и не исследовано. RC7 вполне хватает.
Круто. Интересно было бы поиметь сэмпл некомпилируемого. Хотелось бы пофиксить.
Alex Rider
05.05.2012, 15:20
Под никсы есть моно. Пиши под .net 2.0: там более чем достаточно функционала, а работает и на маках и на андроидах и на чертовой туче еще чего.
Меня тут на форуме съедят за такое. Да и надо оно кому - возиться с mono? В принципе, можно сразу написать во FreePascal или Lazaurus. Или на C. Я еще не определился, буду ли писать. С одной стороны, хотелось бы такой тул, с другой - хочется еще много чего написать, а со временем не хорошо.
Круто. Интересно было бы поиметь сэмпл некомпилируемого. Хотелось бы пофиксить.
После праздников поисследую. Либо воспроизведу и отправлю баг-репорт, либо просто отпишусь, что все равботает.
.NET не нужен по другим причинам. Например, сборка пол *nix
комманд-лайновые тулзы отлично под mono работают, даже без перекомпиляции
---------- Post added at 18:25 ---------- Previous post was at 18:24 ----------
Да и надо оно кому - возиться с mono?
не надо с ним возиться, поставил из репов и все, есть во всех популярных дистрибутивых
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot