Доступ к переменным часов из языка сценариев trace32

Я хотел бы создать сценарий диагностики и хотел бы каким-то образом получить все переменные, вводимые пользователем в окне наблюдения, в сценарий. Как я могу получить доступ к переменным часов и управлять ими?

Я пробовал использовать DIALOG.view, но это тратит слишком много времени. Может быть еще одна команда трассировки, но я ее не знаю. Спасибо!


person M. Alex    schedule 12.07.2019    source источник
comment
Предлагаем изучить исходный код утилиты ddd (из семейства оверлеев linux для утилиты dbg   -  person user3629249    schedule 13.07.2019


Ответы (1)


Получение содержимого открытых окон Var.Watch из скрипта напрямую не поддерживается в TRACE32.

Однако вы можете сделать следующее в своем скрипте

  1. Перенаправить печать в файл PRinTer.FILE "~~~/winpage.txt" ASCIIE (конечно, вы можете выбрать любое другое имя файла вместо winpage.txt)
  2. В окне WinPAGE.List показаны все открытые дочерние окна. С помощью WinPrint.WinPAGE.List вы можете отправить список всех открытых окон в указанный ранее файл (winpage.txt).
  3. Теперь проанализируйте содержимое winpage.txt на предмет имен окон, которые являются окнами наблюдения. Имена окон по умолчанию начинаются с заглавной буквы "W", за которой следуют три десятичных цифры (но также могут быть совершенно разные), а затем следует команда (в круглых скобках), которая использовалась для открытия окна окна. Сравните регистронезависимость! В окнах просмотра есть команда, которая начинается с:

    • B::Var.Watch
    • B :: V.Watch
    • B :: Var.W
    • B::V.W
  4. Перенаправить печать в новый файл, например. PRinTer.OPEN "~~~/varwatch.txt" ASCIIE

  5. Отправьте содержимое каждого открытого окна просмотра в файл varwatch.txt с помощью команды WinPRT <window name>. Соответствующие имена окон, полученные на шаге 3. Выполните WinPrt для каждого открытого окна наблюдения.
  6. Закройте varwatch.txt с помощью PRinTer.CLOSE

Теперь у вас должно быть содержимое всех открытых сторожевых окон в файле varwatch.txt.


Другая идея:

  1. Используйте команду STOre "mywindows.cmm" Win для сохранения команд для создания всех открытых окон в сценарии.
  2. Разберите этот скрипт для всех строк, начинающихся с Var.Watch (или одной из его коротких форм) и строк, начинающихся с Var.AddWatch (или одной из его коротких форм). Разбор нечувствителен к регистру !. Аргументы, за которыми следует Var.Watch или Var.AddWatch, являются переменными, которые в настоящее время отображаются в окнах наблюдения.
person Holger    schedule 15.07.2019