285 lines
6.8 KiB
Plaintext
285 lines
6.8 KiB
Plaintext
; --------------------------------------------------------------------------------
|
||
; @Title: Menu File for TRACE32 uC/OS-II Awareness
|
||
; @Description: -
|
||
; @Keywords: ucos menu awareness
|
||
; @Author: DIE
|
||
; @Copyright: (C) 1989-2014 Lauterbach GmbH, licensed for use with TRACE32(R) only
|
||
; --------------------------------------------------------------------------------
|
||
; $Id: ucos.men 1958 2017-02-28 08:02:50Z rdienstbeck $
|
||
|
||
add
|
||
menu
|
||
(
|
||
popup "&uC/OS"
|
||
(
|
||
if y.exist(T32OUT)
|
||
(
|
||
menuitem "&RTOS Terminal" "TERM T32OUT 0"
|
||
separator
|
||
)
|
||
default
|
||
menuitem "Display &Tasks" "TASK.Task"
|
||
menuitem "Display &Events" "TASK.Event"
|
||
menuitem "Display &Flags" "TASK.Flag"
|
||
menuitem "Display &Timers" "TASK.TImer"
|
||
menuitem "Display &Memory Partitions" "TASK.Memory"
|
||
if task.par.avail()==1
|
||
(
|
||
menuitem "Display &Space Partitions" "TASK.PARTition"
|
||
)
|
||
if task.proc.avail()==1
|
||
(
|
||
menuitem "Display &Processes" "TASK.PROCess"
|
||
)
|
||
separator
|
||
popup "&Stack Coverage"
|
||
(
|
||
menuitem "&List Stacks"
|
||
(
|
||
if !ice()
|
||
TASK.STacK.PATtern 0
|
||
TASK.STacK
|
||
)
|
||
menuitem "Add Task" "TASK.STacK.ADD"
|
||
menuitem "Remove Task" "TASK.STacK.ReMove"
|
||
enable ice()
|
||
menuitem "&Reset Coverage" "TASK.STacK.RESet"
|
||
)
|
||
)
|
||
popup "Trace"
|
||
(
|
||
popup "List"
|
||
(
|
||
separator
|
||
menuitem "&Task Switches" "Trace.List List.TASK"
|
||
menuitem "&Default and Tasks" "Trace.List List.TASK DEFault"
|
||
)
|
||
)
|
||
popup "Perf"
|
||
(
|
||
separator
|
||
popup "&Task Runtime"
|
||
(
|
||
menuitem "&Prepare"
|
||
(
|
||
if t.method.analyzer()
|
||
(
|
||
Analyzer.AutoInit on
|
||
)
|
||
if (ice()||fire())&&!a.mode.flow()
|
||
(
|
||
Analyzer.ReProgram
|
||
(
|
||
Sample.Enable if AlphaBreak&&Write
|
||
)
|
||
Break.Delete /Alpha
|
||
Break.Set task.config(magic)++(task.config(magicsize)-1) /Alpha
|
||
)
|
||
if a.mode.flow()
|
||
(
|
||
Break.Delete /TraceEnable
|
||
Break.Set task.config(magic) /TraceEnable
|
||
)
|
||
)
|
||
menuitem "[:perf]Show &Numerical" "Trace.STATistic.TASK"
|
||
menuitem "[:achart]Show as &Timing" "Trace.CHART.TASK"
|
||
menuitem "[:achart]Tracking with Trace &List"
|
||
(
|
||
Trace.List List.TASK DEFault /Track
|
||
Trace.CHART.TASK /Track
|
||
)
|
||
)
|
||
popup "Task &Function Runtime"
|
||
(
|
||
menuitem "&Prepare"
|
||
(
|
||
if t.method.analyzer()
|
||
(
|
||
Analyzer.AutoInit on
|
||
Analyzer.STATistic.PreFetch on
|
||
)
|
||
|
||
if (ice()||fire())&&!a.mode.flow()
|
||
(
|
||
if a.config.hac()
|
||
(
|
||
Analyzer.ReProgram
|
||
(
|
||
Sample.Enable if AlphaBreak
|
||
Sample.Enable if BetaBreak
|
||
Mark.A if AlphaBreak
|
||
Mark.B if BetaBreak
|
||
)
|
||
)
|
||
else
|
||
(
|
||
Analyzer.ReProgram
|
||
(
|
||
Sample.Enable if AlphaBreak||BetaBreak
|
||
Mark.A if AlphaBreak
|
||
Mark.B if BetaBreak
|
||
)
|
||
)
|
||
Break.Delete /Alpha /Beta /Charly
|
||
Break.SetFunc
|
||
Break.Set task.config(magic)++(task.config(magicsize)-1) /Alpha
|
||
)
|
||
if a.mode.flow()
|
||
(
|
||
Break.Delete /TraceData
|
||
Break.Set task.config(magic) /TraceData
|
||
)
|
||
)
|
||
menuitem "[:perf]Show &Numerical" "Trace.STATistic.TASKFUNC"
|
||
menuitem "[:perf]Show as &Tree" "Trace.STATistic.TASKTREE"
|
||
menuitem "[:perf]Show &Detailed Tree" "Trace.STATistic.TASKTREE ALL"
|
||
menuitem "[:achart]Show as &Timing" "Trace.CHART.TASKFUNC"
|
||
menuitem "[:alist]Show N&esting" "Trace.List List.TASK FUNC TI.FUNC"
|
||
)
|
||
popup "Task &Status"
|
||
(
|
||
menuitem "&Prepare"
|
||
(
|
||
if t.method.analyzer()
|
||
(
|
||
Analyzer.AutoInit on
|
||
)
|
||
if (ice()||fire())&&!a.mode.flow()
|
||
(
|
||
Analyzer.ReProgram
|
||
(
|
||
Sample.Enable if AlphaBreak&&Write
|
||
)
|
||
Break.Delete /Alpha
|
||
Break.Set task.config(magic)++(task.config(magicsize)-1) /Alpha
|
||
TASK.TASKState
|
||
)
|
||
)
|
||
menuitem "[:perf]Show &Numerical" "Trace.STATistic.TASKSTATE"
|
||
menuitem "[:achart]Show as &Timing" "Trace.CHART.TASKSTATE"
|
||
menuitem "[:achart]Tracking with Trace &List"
|
||
(
|
||
Trace.List List.TASK DEFault /Track
|
||
Trace.CHART.TASKSTATE /Track
|
||
)
|
||
)
|
||
)
|
||
popup "&Help"
|
||
(
|
||
menuitem "<22>C/OS RTOS Debugger Manual" "HELP __RTOS_UCOS_"
|
||
)
|
||
)
|
||
|
||
|
||
menu "task.task"
|
||
(
|
||
default
|
||
menuitem "Display Detailed" "TASK.Task track.address()"
|
||
menuitem "Display TCB"
|
||
(
|
||
&address=address.offset(track.address())
|
||
&struct=task.struct(tcb)
|
||
Var.View %Open %String (&struct)*&address
|
||
)
|
||
separator
|
||
menuitem "Display Stack Frame"
|
||
(
|
||
&address=address.offset(track.address())
|
||
Var.Frame /Locals /Caller /Task &address
|
||
)
|
||
menuitem "Switch Context" "Register.TASK address.offset(track.address())"
|
||
separator
|
||
menuitem "Add to Stack Cov" "TASK.STK.ADD address.offset(track.address())"
|
||
menuitem "Rm from Stack Cov" "TASK.STK.RM address.offset(track.address())"
|
||
separator
|
||
menuitem "Dump TCB"
|
||
(
|
||
&address=address.offset(track.address())
|
||
Data.dump &address
|
||
)
|
||
)
|
||
|
||
|
||
menu "task.event"
|
||
(
|
||
default
|
||
menuitem "Display Detailed" "TASK.Event track.address()"
|
||
menuitem "Display ECB"
|
||
(
|
||
&address=address.offset(track.address())
|
||
v.v %m (struct os_event*)&address
|
||
)
|
||
menuitem "Dump ECB"
|
||
(
|
||
&address=address.offset(track.address())
|
||
Data.dump &address
|
||
)
|
||
)
|
||
|
||
|
||
menu "task.e.q"
|
||
(
|
||
menuitem "Display QCB"
|
||
(
|
||
&address=address.offset(track.address())
|
||
v.v %m (struct os_q*)&address
|
||
)
|
||
default
|
||
menuitem "Dump QCB"
|
||
(
|
||
&address=address.offset(track.address())
|
||
Data.dump &address
|
||
)
|
||
)
|
||
|
||
|
||
menu "task.flag"
|
||
(
|
||
default
|
||
menuitem "Display Detailed" "TASK.Flag track.address()"
|
||
menuitem "Display FCB"
|
||
(
|
||
&address=address.offset(track.address())
|
||
Var.View %m %s (struct os_flag_grp*)&address
|
||
)
|
||
menuitem "Dump FCB"
|
||
(
|
||
&address=address.offset(track.address())
|
||
Data.dump &address
|
||
)
|
||
)
|
||
|
||
|
||
menu "task.timer"
|
||
(
|
||
default
|
||
menuitem "Display Detailed" "TASK.TImer track.address()"
|
||
menuitem "Display Tmr CB"
|
||
(
|
||
&address=address.offset(track.address())
|
||
Var.View %m %s (struct os_tmr*)&address
|
||
)
|
||
menuitem "Dump Tmr CB"
|
||
(
|
||
&address=address.offset(track.address())
|
||
Data.dump &address
|
||
)
|
||
)
|
||
|
||
|
||
menu "task.par"
|
||
(
|
||
default
|
||
menuitem "Display Detailed" "TASK.PARtition track.address()"
|
||
menuitem "Display partition struct"
|
||
(
|
||
&address=address.offset(track.address())
|
||
Var.View %m %s (PAR_PARAM_T*)&address
|
||
)
|
||
menuitem "Dump partition struct"
|
||
(
|
||
&address=address.offset(track.address())
|
||
Data.dump &address
|
||
)
|
||
)
|