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

User Tag List

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 13

Тема: Смартовый дебаггер-это возможно?

  1. #1
    Member Аватар для yashcher
    Регистрация
    14.11.2011
    Адрес
    Волковыск, Беларусь
    Сообщений
    49
    Спасибо Благодарностей отдано 
    34
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    8 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Смартовый дебаггер-это возможно?

    Изучаю ассемблер, пытаюсь понять как устроены игры, как работает код. Перепробовал разные эмуляторы, увы...

    Есть ли дебаггер..?

    1)который во время трассировки автоматически отделял бы команды ассемблера от данных (текста, ячеек памяти для хранения переменных, и т.п.), заменяя их хотя бы DEFB (и затем вручную можно было бы поправлять, группировать блоки по типу данных как в ZX Spin), чтобы в итоге получался практически исходник игры. А так получается всё намешано - всё выглядит как команды ассемблера, хотя это не так.

    2)где автоматически подкрашиваются строки с исполняемым кодом при трассировке - чтобы видеть какая часть кода уже исполнялась и выполняется сейчас, а какая ещё нет (чтобы видеть логическую структуру всех блоков из которых например составлена игра). Затем при следующей трассировке уже другим цветом - если началась выполняться новая часть.

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

  3. #2
    goblinish
    Гость

    По умолчанию

    Цитата Сообщение от yashcher Посмотреть сообщение
    1)который во время трассировки автоматически отделял бы команды ассемблера от данных (текста, ячеек памяти для хранения переменных, и т.п.), заменяя их хотя бы DEFB (и затем вручную можно было бы поправлять, группировать блоки по типу данных как в ZX Spin), чтобы в итоге получался практически исходник игры. А так получается всё намешано - всё выглядит как команды ассемблера, хотя это не так.
    IDA удобна, хотя и не отладчик.

  4. #3
    --- Аватар для Shadow Maker
    Регистрация
    01.03.2005
    Адрес
    Саранск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    235
    Поблагодарили
    100 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от yashcher Посмотреть сообщение
    2)где автоматически подкрашиваются строки с исполняемым кодом при трассировке - чтобы видеть какая часть кода уже исполнялась и выполняется сейчас, а какая ещё нет (чтобы видеть логическую структуру всех блоков из которых например составлена игра). Затем при следующей трассировке уже другим цветом - если началась выполняться новая часть.
    Ты такое вообще где-нибудь видел, хоть в каком отладчике? Или это у тебя фантазии такие. Я это даже теоретически слабо представляю как можно такое реализовать.
    Свирепый агрессивно-депрессивный мордовец!
    Не уверен - не напрягай!

    Не сдавайся. Дыши?

    Virtual TR-DOS

  5. #4
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,115
    Спасибо Благодарностей отдано 
    792
    Спасибо Благодарностей получено 
    655
    Поблагодарили
    402 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Не видел еще не значит невозможно. В некоторых эмуляторах есть счетчики доступа к памяти. В каком-то эмуляторе C64 есть визуальная карта памяти. А в VirtualVector-е есть счетчики исполнения, чтения и записи каждой ячейки. Если сделать для этого визуализацию, то будет похоже на то, чего хочет yashcher. Это не даст автоматом логической структуры, но будет видно, что меняется и исполняется каждый кадр, что раз в секунду, а что изредка.
    Больше игр нет

  6. #5

  7. #6
    Member Аватар для yashcher
    Регистрация
    14.11.2011
    Адрес
    Волковыск, Беларусь
    Сообщений
    49
    Спасибо Благодарностей отдано 
    34
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    8 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Shadow Maker Посмотреть сообщение
    Ты такое вообще где-нибудь видел, хоть в каком отладчике? Или это у тебя фантазии такие. Я это даже теоретически слабо представляю как можно такое реализовать.
    Я не видел, поэтому и спрашиваю у более опытных и мастеровитых участников форума. И хочу просто узнать возможно ли это, и что уже есть похожее. Поэтому и заголовок соответствующий. Может эта идея натолкнёт кого-нибудь из разработчиков эмуляторов на развитие возможностей дебаггера. Мне новичку, который знакомится с ассемблером сейчас при анализе кода этого не хватает.

    Если эмулятор может выстраивать весь код целиком наперёд по всем адресам и выполнять его, мне не понятно почему он не может, если нужно, выделить цветом все ячейки памяти, которые были задействованы, и те команды, что он выполнил и выполняет в данный момент времени, если мне это нужно засечь по нажатию какого-нибудь "Ctrl+..." и затем сравнить с тем, что будет дальше. Возьмём, например, Saboteur_Avenging Angel. Игра загрузилась, появляется меню с предупреждением о подделке и играет музыка, ждёт нажатие клавиши - всё это идёт в цикле - выделился одним цветом весь исполнимый код. Затем нажимаю клавишу, игра идёт дальше: появляется меню выбора управления, играет музыка, опять ждёт нажатие клавиши - это новая часть - другим цветом. Теперь видно какой код работал, какие подпрограммы вызывались, какие ячейки памяти (типа DEFB) вызывались, а что ещё нет. Итак блок за блоком разбираться, что к чему. Разве это фантазии?

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

    По умолчанию

    yashcher, ЧИСТОЙ воды фантазии
    никому не требовалось потому и не сделали
    С уважением,
    Jerri / Red Triangle.

  9. #8
    goblinish
    Гость

    По умолчанию

    Цитата Сообщение от jerri Посмотреть сообщение
    yashcher, ЧИСТОЙ воды фантазии
    никому не требовалось потому и не сделали
    Отладка вместе с Interactive IDA хватит.

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

    По умолчанию

    Одно время пытался написать такой дизассемблер в виде плагина к TotalCommander. Он брал кодовый блок и пытался его исполнить с разных адресов для вычисления исполняемых частей и адреса расположения блока. Потом это дело забросил.

  11. #10
    Member Аватар для yashcher
    Регистрация
    14.11.2011
    Адрес
    Волковыск, Беларусь
    Сообщений
    49
    Спасибо Благодарностей отдано 
    34
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    8 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vitamin Посмотреть сообщение
    Одно время пытался написать такой дизассемблер в виде плагина к TotalCommander. Он брал кодовый блок и пытался его исполнить с разных адресов для вычисления исполняемых частей и адреса расположения блока. Потом это дело забросил.
    Что-нибудь получилось или совсем нет?

Страница 1 из 2 12 ПоследняяПоследняя

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

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

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

Похожие темы

  1. ДЕБАГГЕР?! в Мортал Комбате?
    от murgatroid_79 в разделе SEGA
    Ответов: 35
    Последнее: 02.06.2010, 06:45
  2. Возможно ли TRD переделать в TAP или TZX ?
    от ALKO в разделе Для начинающих
    Ответов: 11
    Последнее: 24.02.2010, 04:09
  3. Хардварый дебаггер
    от breeze в разделе Несортированное железо
    Ответов: 12
    Последнее: 22.09.2008, 22:32
  4. Возможно ли это сделать ?
    от AAA в разделе Музыка
    Ответов: 23
    Последнее: 13.11.2005, 12:18

Ваши права

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