ZX Turbo Disassembler v2.04 - изменения:
Не много изменена структура программы и дизассемблирование DEFS - то есть INSERT
Подробности наверное не интересны, но раньше INSERT файл собирался в странице 0, и была возможна ошибка - вылет,
если DEFS был больше размера страницы (#4000).
Сейчас файл открывается на запись и по-байтово можно записать сколько угодно.
Главное, что теперь можно использовать эту страницу [0] для собственных нужд и уже используется. Часть пп. перенесена туда и OPTIONS доступен всегда.
Похоже это не последняя версия, так как хочу:
Spaces Compressor - счетчик пробелов - вывести в настройки и возможность заменить на пробелы, что бы не только ZAsm понимал.
PHASE - UNPHASE - что бы отмеченный блок дизассемблировался как будто он находится в других адресах. Вот только как это сделать пока не знаю, так как с самим дизассемблером еще не разобрался.
По мере работы в программе появляются всякие идеи по улучшению, PHASE-UNPHASE из этой оперы.
Открытым остается вопрос со шрифтом (2048), самому дизасму он как пятое колесо, но интерфейс бы оживил и место под него сейчас есть. И наличие исходных текстов в архиве с программой.
з.ы. у нас сегодня праздник, как какой - "День Республики", а я еще .., надо исправлять.
Дмитрий(19.01.2021)
Собственно - да...
Через команду - Import...
Исходная софтина - дизассемблер от Иноземцева -
работает нормально...
Последний раз редактировалось Stl75; 30.07.2020 в 21:44.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Значит это не исходная софтина. Есть пару версий, оригинальной .. версии, отличается тем что на выходе текст/файл в формате обычного текста. Оригинальная, от автора (не меня) отличается наличием SPaces Compressor`а (6, число пробелов+#80), то есть в формате ZAsm v2.4/2.5 где программа похоже и писалась. Я в этом отношении ничего не менял, так как ZAsm отлично загружает дизассемблированные файлы, правда все же нужно Import`ировать. Вариант с обычным текстом .., меня и так устраивает, а другого никто и не просил. Похоже скоро вернусь к ZX Spectrum`у вообще и ZX Turbo Disassembler`у v2.x в частности. Оказалось полный шрифт все же нужен, пришлось ковы..., исследовать программу написанную "нашими" и там тексты, в общем их хочется видеть, а не просто DEFB #.
Поскольку когда это произойдет я не знаю, сейчас можно просто загрузить полученные тексты в ZAsm и сделать Export в обычный текст. Это не совсем удобно, но как уже говорил - другого не просили.
ZX Turbo Disassembler v2.06 - Главное изменение - полный шрифт, но пока толку от него не много, так сказать разницу можно увидеть только при просмотре HEX-Дампа. Здесь можно увидеть символы как с кодом меньше #20 (32), так и с кодом больше #80 (128), переключаются:
[!] SS+1 - char code <#20 char или символ превдографики
[@] SS+2 - char code >#80 char или символ превдографики.
Получить символы >#80 (128) в defb пока не получается. Внутренняя программа дизассемблирования использует свою токенизацию, думаю для ускорения процесса и коды >#80 заняты под токены.
Я еще во всех этих подпрограммах не очень разбирался.
Небольшое изменение по поиску:
[f] - Find, окно ввода данных и т.д.
[n] - Find Next, от последнего поиска
Новое:
[N] - Find Next, от текущего адреса
[F] - Find Again - от начала файла.
ZX Turbo Disassembler v1.0 написан в ZAsm v2.4/5/3, во всех версиях ZAsm используется упаковка пробелов.
Код 6, число пробелов+#80.
В этой версии упаковка пробелов отключена, возможно позже будет вынесено в настройки.
Пока все, тестировал не очень, w-work файлы от 'старой' версии принял нормально.
p.s. найдете глюки - пишите сюда.
Evgeny Muchkin(07.09.2020), Urguk(23.01.2021), Дмитрий(19.01.2021)
ZX Turbo Disassembler v2.06 Source Code - по просьбам трудящихся, :-), в общем собирался отправить лично, но затем подумал - почему и нет.
Пару слов, все мои изменения коснулись в первую очередь интерфейса программы, собственно он переписан с нуля.
Так же были добавлены некоторые полезные, с моей точки зрения, вещи, такие как:
1. Поиск
2. Закладки
3. Стек/вложенность при переходе на адрес под курсором.
4. что то еще, не важно, а важно то, что сам дизассемблер не изменился никак.
Поэтому остались две важные вещи, два буфера, в одном (192 байта) храниться информация о каждом адресе, определялся он
как DEF? или ASM (1-4) один адрес-один бит и второй - массив на каждый адрес-два бита (0-3), (DEFB,DEFW,DISASM,DEFS/INSERT).
В общем какие бы изменения не вносили в программу заходить дальше #8FAA - не стоит, более того, здесь лучше всего
оставить как есть, для совместимости версий, что бы wrk-файл созданный в любой версии в любой же и открылся.
В остальном - все что угодно.
Собственно (ц) по прежнему принадлежит Иноземцеву Алексею.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)