Важная информация

User Tag List

Страница 2 из 4 ПерваяПервая 1234 ПоследняяПоследняя
Показано с 11 по 20 из 33

Тема: Новый дизассемблер для ZX

  1. #11
    Member Аватар для Strunov
    Регистрация
    19.08.2005
    Адрес
    Харьков
    Сообщений
    111
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Jukov
    С какой целью интересуешься, если не секрет?
    Дизассемблер хочу написать..

  2. #12
    Guru Аватар для SAM style
    Регистрация
    28.02.2005
    Адрес
    Великий Новгород
    Сообщений
    2,055
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    218
    Поблагодарили
    92 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    проверять назад только 4 байта - это мало. Пример...

    ld de,#FD00
    ld hl,#FFFF
    (x)

    если проверять назад от точки (х) - на 4 байта назад будет LD IY,#FFFF
    ИМХО, дизасм с отступом назад байт в 16 - самое то.
    Все любят гипножабу

  3. #13
    Veteran Аватар для SMT
    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    в общем случае нельзя. например, данные перед курсором 21 21 21 3E FF
    можно дизасмить как
    Код:
    some_byte db 21
    my_procedure ld hl,#3E21
    rst #38
    cursor:
    или как
    Код:
    my_procedure ld hl,#2121
    ld a,#FF
    cursor:
    зависит от того, будет ли когда-либо передано управление первому байту в цепочке или второму

  4. #14
    Vitamin C++ Аватар для Vitamin
    Регистрация
    14.01.2005
    Адрес
    Таганрог, Россия
    Сообщений
    4,254
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    34 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Кстати о птичках. Есть ли хоть один дизасм, который корректно декодирует команды калькулятора?

  5. #15
    Activist Аватар для Jukov
    Регистрация
    03.12.2005
    Адрес
    Серов
    Сообщений
    491
    Спасибо Благодарностей отдано 
    13
    Спасибо Благодарностей получено 
    38
    Поблагодарили
    13 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Ответ: Требуется помощь Гуру..

    Цитата Сообщение от Strunov Посмотреть сообщение
    Дизассемблер хочу написать..
    А STS чем не устраивает?
    Кворум-192, Кворум-128 CP/M, Кворум-64, ZS-Scorpion 256 Turbo+&Caro ZX_MC, Мастер48К

  6. #16
    Veteran
    Регистрация
    22.02.2005
    Адрес
    Украина, Харьков
    Сообщений
    1,527
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Jukov Посмотреть сообщение
    А STS чем не устраивает?
    А кто сказал что STS дизассемблер? Это очень хороший отладчик, но с предельно примитивной функцией дизасма. Если есть желание понять что такое настоящий дизасм, то посмотрите например на ZXD (был в приложении к ZX-Power, кажется #2). Еще лучше IDA Pro, но он увы PC-шный.
    А вообще идею с дизассемблером поддерживаю обеими руками. Будет желание активно заняться написанием такого есть куча идей, ибо сам пытался сделать такое. В частности дизасм мог бы иметь таблицу стандартных точек (#5800, #5B00, #C000, #3D13, #3D2F и др.) по которым в 99% можно определить правильно ли установлен PC (ProgrammCounter) для процедур. Кроме того можно отсеивать явные массивы данных (это когда коды команд изменяются по инкрименту или когда присутстует большые участки команд LD *,*).

  7. #16
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #17
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,751
    Спасибо Благодарностей отдано 
    256
    Спасибо Благодарностей получено 
    266
    Поблагодарили
    200 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а кстати я не знаю как сделано в сервис мониторе на Скорпе
    но помню одну ситуацию
    когда я никак не мог сделать шаг на одну команду назад
    он дисасемблил неправильно и упорно возвращал н ту ячейку что уже была
    С уважением,
    Jerri / Red Triangle.

  9. #18
    Activist
    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    437
    Спасибо Благодарностей отдано 
    23
    Спасибо Благодарностей получено 
    88
    Поблагодарили
    54 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Когда выдаеш листинг строиш таблицу адресов инструкций. При движении за листинг вверх
    1 - отступаеш на 4-е байта
    2 - дизассемблиш инструкцию
    3 - проверяеш адрес за инструкцией с адресом в вершине таблицы
    4 - совпало - ок, нет отступаеш на 3 ( 2, 1 ) и п2.
    В Засм мониторе я так делал. Впрочем я же тебе исходники послал.
    Получил?

    Добавлено через 3 минуты
    Vitamin, Mon2
    Последний раз редактировалось Rubts0FF; 11.03.2007 в 06:19. Причина: Добавлено сообщение

  10. #19
    Member Аватар для Strunov
    Регистрация
    19.08.2005
    Адрес
    Харьков
    Сообщений
    111
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Rubts0FF Посмотреть сообщение
    Когда выдаеш листинг строиш таблицу адресов инструкций. При движении за листинг вверх
    1 - отступаеш на 4-е байта
    2 - дизассемблиш инструкцию
    3 - проверяеш адрес за инструкцией с адресом в вершине таблицы
    4 - совпало - ок, нет отступаеш на 3 ( 2, 1 ) и п2.
    В Засм мониторе я так делал. Впрочем я же тебе исходники послал.
    Получил?

    Добавлено через 3 минуты
    Vitamin, Mon2
    Да получил, спасибо. Многое что там сделано, я уже сделал сам, но кое что подсмотрел. По поводу отступания на 4-е байта я понял. Но если посмотреть как он работает, то видно, что при скроле вверх иногда передизассемблируется вся страница. По какому условию??

  11. #20
    Member Аватар для Strunov
    Регистрация
    19.08.2005
    Адрес
    Харьков
    Сообщений
    111
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Question

    Вот еще проблема... НУжны подпрограммы работы с диском для того же самого дизасма... Понятные и простые. Загрузка каталога, создание таблицы файлов для селектора, загрузка и т.д. Вообще мой малый опыт программирования на асме показывает, что 80% времени уходит на создание интерфейса...., а времени мало... Чтобы не прослыть болтуном прилагаю скриншоты и один Снэпшот.

    P.S. Пробел не жмите... там ret в асм... Висяк..
    P.P.S Выход в меню Q. Там правда кроме поиска меток и HELP-a ничего не работает пока....
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	sshot002.jpg 
Просмотров:	353 
Размер:	14.9 Кб 
ID:	5051   Нажмите на изображение для увеличения. 

Название:	sshot005.jpg 
Просмотров:	345 
Размер:	25.2 Кб 
ID:	5052   Нажмите на изображение для увеличения. 

Название:	sshot006.jpg 
Просмотров:	335 
Размер:	21.9 Кб 
ID:	5054   Нажмите на изображение для увеличения. 

Название:	sshot003.jpg 
Просмотров:	357 
Размер:	17.2 Кб 
ID:	5055  
    Последний раз редактировалось Strunov; 10.05.2007 в 11:07.

Страница 2 из 4 ПерваяПервая 1234 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. новый сайт
    от alone в разделе События
    Ответов: 8
    Последнее: 23.10.2006, 10:32
  2. Дизассемблер TR-DOS
    от Sonic в разделе Оси
    Ответов: 5
    Последнее: 23.10.2006, 09:42
  3. Новый софт
    от Vitamin в разделе Софт
    Ответов: 0
    Последнее: 25.01.2005, 00:35

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •