OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Воскресенье, 08 Декабрь, 2019 05:44

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 31 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Отладчик под А2
СообщениеДобавлено: Четверг, 19 Март, 2009 15:03 
Аватара пользователя

Зарегистрирован: Суббота, 15 Март, 2008 20:00
Сообщения: 297
Откуда: Київ, Україна
Теперь могу уверенно сказать, что отладчик под А2 сделать не очень сложно :lol:


Вложения:
Debug1.jpg
Debug1.jpg [ 114.11 КБ | Просмотров: 3821 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Четверг, 10 Январь, 2019 15:17 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
А скачать можно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Понедельник, 14 Январь, 2019 09:25 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
У кого-нибудь есть связь с автором?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Понедельник, 24 Июнь, 2019 18:17 

Зарегистрирован: Пятница, 11 Январь, 2019 21:33
Сообщения: 36
BohdanT писал(а):
отладчик под А2
budden писал(а):
А скачать можно?



См.
https://github.com/metacore/A2Community

в подкаталоге:
Work\Debugger\

debugger.doc
DebuggerBase.Mod
DebugInfo.Mod
I386.Debugger.Mod
WMHexEditor.Mod


viewtopic.php?f=61&t=6372&p=107141#p107139
BohdanT писал(а):
Так оно работало, у меня на старой версии WinAos и сейчас работает.


Возможно, для Debugger потребуется

A2OS 6599
https://github.com/metacore/A2OS/tree/9 ... 5d93589c6c

или

http://sage.com.ua/ru.shtml?e1l0
Ярослав Романченко писал(а):
WinAosMini
Revision 6599 from 05/01/16 - the latest revision in old object file format


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Вторник, 25 Июнь, 2019 17:54 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
Спасибо!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Суббота, 20 Июль, 2019 22:16 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
Богдан прислал мне архив следующего содержания:
Цитата:
BtDbgPanel.Mod
BtDecoder.Mod
BtDTraps.Mod
BtMenus.Mod
FoxAMDBackend.Mod
FoxAMDBackend1.Mod
FoxDisassembler1.Mod
hny.Mod
I386Decoder2.Mod
TestDbg.Mod
TestDbg2.Mod
TestDecode.Mod
TestDisassembler.Mod
TestSymbolFile.Mod
TryDecode.Mod
WMComboBox.Mod
WMDebugger.Mod
WMDebugger.Tool
WMDebugger.XML
WMDebugger.zip
WMEditors3.Mod
WMTextView2.Mod
WMTextView3.Mod
WMXmas.Mod
Xmas.Mod

Архив прилагается. Пытаюсь собрать его с упомянутой версией A2OS 6599, для этого
скачал эту версию, распаковал архив к исходникам и пересобираю А2 по процедуре, которая описана здесь (её я когда-то раньше вывел не помню как: http://вики-ч115.программирование-по-русски.рф/Ч115/Сборка). В FoxAMDBackend.Mod он ругается на отсутствие Backend.Registers.

Версия FoxAMDBackend.Mod изрядно отличается от приведённого vmtutby.

Моя идея состоит в том, что нужно сначала заставить этот отладчик работать в той версии, в которой он уже когда-то работал, а уже потом пытаться его модернизировать под современную A2OS (если это вообще кому-нибудь интересно). Аналогичным образом Иван Денисов оживил отладчик для ББЦБ и вообще это методически правильно.


Вложения:
Debugger.zip [243.11 КБ]
Скачиваний: 18
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Воскресенье, 21 Июль, 2019 14:48 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
backend.registers присутствуют в сборке 6602, которая моложе, чем 6599.

Также в архиве есть FoxBackend1.Mod, который явно является старой версией FoxAMDBackend, датируется 2014.11.30

В целом похоже на то, что нужно искать версию от осени 2014 года. На git-зеркале изменения есть только с 2015 года. Пользуюсь SVN, но сейчас я на мобильном интернете, это получается медленно и дорого.

Нашёл такой репозиторий: https://github.com/egphilippov/A2OS_ForPullsToUpstream


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Воскресенье, 21 Июль, 2019 23:30 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
В этом репозитории установил версию от 2014-07-04 с сообщением "rebuilt releases",
далее действовал по инструкции из WMDebugger.Tool, за исключением того, что вместо
FoxAMDBackend.Mod компилировал FoxAMDBackend1.Mod.

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


Вложения:
первый-запуск-отладчика.png
первый-запуск-отладчика.png [ 57.44 КБ | Просмотров: 673 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Суббота, 27 Июль, 2019 13:05 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
В общем, мои знания A2 малы, и времени у меня тоже нет. Проект интересный, но я его отложу. Думаю, лучше всего будет, если Богдан всё же оживит отладчик. Тогда появятся предпосылки для его портирования на более новые версии. В текущем состоянии непонятно, работает ли данная версия или нет. Богдан написал, что не уверен в том, что присланные файлы составляют полный и работающий набор. Поэтому сначала нужно продиагностировать и починить. Не зная деталей устройства и не располагая большими кусками времени, я за это вряд ли готов взяться сейчас.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Суббота, 16 Ноябрь, 2019 17:24 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
Он запустился. Не помню, что я делал не так, но раньше не запускался. В инструкции есть нюансы (если делать прямо по ней, то вряд ли что-нибудь выйдет).

Нюансы таковы:

- взять версию от 2014-07-04
- вместо FoxAmdBackend брать FoxAmdBackend1.mod
- компилировать TestDbg уже после выгрузки FoxAMDBackend, т.к. только после замены этого модуля начинает генерироваться файл .Dpi с отладочной информацией
- далее открываем WMDebuggerTool.Open TestDbg.Mod
- ставим точку останова в начале TestTry (Ctrl+F8)
- выполняем откуда-нибудь команду TestDbg.TestTry

Качество я бы обозначил как "прототип", поскольку при хождении по строкам с помощью Step Into/Step Over наблюдались всеразличные аномалии. Но всё равно результат очень впечатляющий.


Вложения:
отладчик-запустился.png
отладчик-запустился.png [ 68.02 КБ | Просмотров: 406 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Суббота, 16 Ноябрь, 2019 17:30 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 1335
Откуда: Украина, Киев
Может как-раз FoxAmdBackend висел в памяти


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Суббота, 16 Ноябрь, 2019 17:39 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
Не, это уже после пары перезагрузок. В общем, есть что чинить, но уже не сегодня, наверное.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Воскресенье, 17 Ноябрь, 2019 18:03 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
Какая теория лежит в основе этого отладчика? Вроде отладчик обычно - это стороннее приложение, отличающееся от исследуемой программы. А тут программа патчит сама себя. Это вообще в принципе может работать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Воскресенье, 17 Ноябрь, 2019 20:22 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1441
budden писал(а):
Какая теория лежит в основе этого отладчика? Вроде отладчик обычно - это стороннее приложение, отличающееся от исследуемой программы. А тут программа патчит сама себя. Это вообще в принципе может работать?

Ну, когда-то, только так и было. :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Понедельник, 18 Ноябрь, 2019 10:58 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
Т.е. так можно, Вы хотите сказать? При этом возникает несколько вопросов. Вот хотя бы два:

* многопоточность (другой тред может выполнить код во время его изменения)
* отладчик может начать шагать по самому себе, коду оконной системы, ядру ОС и т.п. - это не страшно, если мы умеем идентифицировать то, что не подлежит пошаговой отладке. Но непохоже, что это сделано у Богдана, судя по результатам моей попытки зайти внутрь KernelLog.String.

Полез читать статьи... Если у кого-нибудь есть хорошая - поделитесь.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Понедельник, 18 Ноябрь, 2019 12:12 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 1335
Откуда: Украина, Киев
budden писал(а):
судя по результатам моей попытки зайти внутрь KernelLog.String.
А зачем заходить внутрь KernelLog.String? :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Понедельник, 18 Ноябрь, 2019 12:59 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
Просто по ошибке. Отладчик по идее должен быть надёжным инструментом, а не сараем с граблями :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Понедельник, 18 Ноябрь, 2019 13:19 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
Тут люди в личке интересуются, как воспроизвести мои результаты. Пока что полной инструкции нет. Ради такого, наверное, можно и релиз пересобрать, на этой неделе постараюсь это сделать.


Примерно должно работать так:

Качаем https://gitlab.com/budden/jaos/commit/e ... 5bc9503bbd

Пересобираем систему (руководство тут: http://вики-ч115.программирование-по-русски.рф/Ч115/Сборка) - при этом ни TFPET, ни отладчик НЕ будут собраны, символьные файлы для TFPET НЕ будут созданы.

Собираем отладчик согласно Debugger.Tool

Дальше см. выше. вот здесь: viewtopic.php?f=22&t=1410&p=109548#p109529

Это всё без гарантии, сейчас некогда проверить. Когда сделаю - отпишу.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Понедельник, 18 Ноябрь, 2019 13:21 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
Статьи про отладчик пока такие:

https://xakep.ru/2003/07/15/19158/
https://habr.com/ru/post/178159/

Осознаю, что они не лучше, но уж что есть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отладчик под А2
СообщениеДобавлено: Понедельник, 25 Ноябрь, 2019 11:02 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 669
Отладчик заработал в версии 6599, по сути дела ничего менять не пришлось. Теперь надо переходить на новый формат объектных файлов. Посоветуйте, с чего начать и куда копать.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 31 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


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

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2019, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB