Page 10 of 10

Re: MTDBG - отладчик пользовательского уровня

Posted: Sat Feb 13, 2021 12:14 am
by macgub
Very nice. Your screenshot looks charming... :D

Re: MTDBG - отладчик пользовательского уровня

Posted: Sat Feb 13, 2021 8:23 am
by Kenshin
macgub wrote:Very nice. Your screenshot looks charming... :D
That was a screenshot of how the mentioned bug looked like :) Now labels ain't cropped like that.

Re: MTDBG - отладчик пользовательского уровня

Posted: Sat Apr 24, 2021 11:31 am
by macgub
I noticed labels now arent present at all. (Version from 18 april 2021) :(

Re: MTDBG - отладчик пользовательского уровня

Posted: Sat Apr 24, 2021 4:00 pm
by Coldy
Kenshin wrote:SVN rev. 8591:
  • исправлен баг с отображением меток, загруженных из отладочного файла; вот так он выглядел:
  • история команд (прокручивается с помощью стрелок вверх/вниз)
  • слегка освежил документацию к программе
Tnx, good work!
Everything is very useful.

Re: MTDBG - отладчик пользовательского уровня

Posted: Wed Apr 28, 2021 7:09 pm
by macgub
I beg yours pardon. Labels work OK. Again sorry, I'm mistaken.

Re: MTDBG - отладчик пользовательского уровня

Posted: Wed Sep 29, 2021 10:51 pm
by Jurgen
При отладке своих программ в MTDBG, у меня отладчик регулярно падал по непонятной причине. Даже ранее писал в багрепорт.
Так как использование MTDBG в среде Колибри ОС мне удобнее, чем со встроенным отладчиком в Виртуалбоксе, то решил отреверсить отладчик MTDBG в самом отладчике MTDBG.

Выяснилось следующее:
В MTDBG есть баг с дизассемблированием инструкций, работающих с данными в WORD.
Например, если скомпилировать в FASMе файл .asm с командой repne scasw / repnz stosw и скормить его отладчику, то отладчик молча падает.
Проблема в том, что отладчик ожидает стандартный набор опкодов типа 66 F2 AF для команды repne scasw.
Однако FASM компилирует эту команду немного по другому: - в F2 66 AF.
В данной ситуации отладчик воспринимает опкод 66, после опкода F2, как "неизвестный".
В принципе, пусть отладчик и обрабатывает этот опкод как «неизвестный». Однако, процедура обработки «неизвестного опкода» имеет ошибку, что приводит к падению отладчика.

В итоге мной сделаны соответствующие изменения в исходнике отладчика MTDBG: disasm.inc
1. Строка 266 (устранена причина паления отладчика при обработке неизвестного опкода)
2. Строка 332 (добавлен код для корректной обработки не стандартных опкодов ассемблерных инструкции в WORD)

У меня нет доступа к изменению файлов в SVN, поэтому выкладываю исправленный исходник отладчика «disasm.inc” здесь.

Re: MTDBG - отладчик пользовательского уровня

Posted: Thu Sep 30, 2021 7:37 pm
by hidnplayr
Good find!
Merged #9209