Files
2025-10-14 09:52:32 +09:00

330 lines
7.6 KiB
Plaintext

; --------------------------------------------------------------------------------
; @Title: SYS/BIOS specific menu
; @Description: -
; @Author: DIE
; @Copyright: (c) 1989-2014 Lauterbach GmbH, licensed for use with TRACE32(R) only
; --------------------------------------------------------------------------------
; $Id: sysbios.m 7861 2022-07-29 13:45:42Z amerkle $
NAME "TASK.SYSBIOS"
IF !MENU.EXIST("TASK.SYSBIOS")
(
add
menu
(
popup "SYS/BIOS"
(
default
menuitem "Display &Tasks" "TASK.TaSK"
menuitem "Display &Clocks" "TASK.CLocK"
menuitem "Display &Events" "TASK.EVenT"
menuitem "Display &Mailboxes" "TASK.MailBoX"
//menuitem "Display &Queues" "TASK.QUEue"
menuitem "Display &Semaphores" "TASK.SEMaphore"
menuitem "Display &SWIs" "TASK.SWI"
menuitem "Display &HWIs" "TASK.HWI"
//menuitem "Display &Timers" "TASK.TIMer"
//menuitem "Display &Gates" "TASK.GATe"
//menuitem "Display &Log" "TASK.LOG"
menuitem "Display &HeapMems" "TASK.HeapMem"
popup "Display Module"
(
//menuitem "BIOS" "TASK.MODule.TaSK"
menuitem "Task" "TASK.MODule.TaSK"
menuitem "Clock" "TASK.MODule.CLocK"
//menuitem "Idle" "TASK.MODule.IDLe"
menuitem "SWI" "TASK.MODule.SWI"
//menuitem "HWI" "TASK.MODule.HWI"
//menuitem "Timer" "TASK.MODule.TIMer"
//menuitem "Cache" "TASK.MODule.CAChe"
//menuitem "Agent" "TASK.MODule.AGEnt"
//menuitem "Load" "TASK.MODule.LOAd"
)
separator
popup "&Stack Coverage"
(
menuitem "&List Stacks" "TASK.STacK.view"
menuitem "Add Task" "TASK.STacK.ADD"
menuitem "Remove Task" "TASK.STacK.ReMove"
menuitem "Reset Coverage"
(
if icd()||simulator()
(
PRIVATE &yes
dialog.yesno "Overwrite unused stack space" "with stack fill pattern?"
entry &yes
if !&yes
enddo
)
TASK.STacK.Init
)
)
)
popup "Trace"
(
popup "[:alist]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 trace.flow()
(
Break.Delete /TraceEnable
Break.Set task.config(magic) /Write /TraceEnable
)
Trace.Init
)
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 trace.flow()
(
Break.Delete /TraceData
Break.Set task.config(magic) /Write /TraceData
)
Trace.Init
)
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 "&Help"
(
menuitem "SYS/BIOS RTOS Debugger Manual" "HELP __RTOS_SYSBIOS_"
)
)
menu "task.tsk"
(
menuitem "Display Detailed"
(
PRIVATE &magic
&magic=address.offset(track.address())
TASK.TaSK &magic
)
menuitem "Display Task Object"
(
PRIVATE &address
&address=track.address()
Var.View %Open (ti_sysbios_knl_Task_Object*)(&address)
)
separator
menuitem "Display Stack Frame"
(
PRIVATE &magic
&magic=address.offset(track.address())
Var.Frame /Locals /Caller /Task &magic
)
menuitem "Display Registers"
(
PRIVATE &magic
&magic=address.offset(track.address())
Register /Task &magic
)
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 Task Object"
(
PRIVATE &address
&address=track.address()
Data.dump &address
)
)
menu "task.clk"
(
menuitem "Display Detailed"
(
PRIVATE &magic
&magic=address.offset(track.address())
TASK.CloCK &magic
)
menuitem "Display Clock Object"
(
PRIVATE &address
&address=track.address()
Var.View %Open (ti_sysbios_knl_Clock_Object*)(&address)
)
menuitem "Dump Clock Object"
(
PRIVATE &address
&address=track.address()
Data.dump &address
)
)
menu "task.evt"
(
menuitem "Display Detailed"
(
PRIVATE &magic
&magic=address.offset(track.address())
TASK.EVenT &magic
)
menuitem "Display Event Object"
(
PRIVATE &address
&address=track.address()
Var.View %Open (ti_sysbios_knl_Event_Instance_State*)(&address)
)
menuitem "Dump Event Object"
(
PRIVATE &address
&address=track.address()
Data.dump &address
)
)
menu "task.mbx"
(
menuitem "Display Detailed"
(
PRIVATE &magic
&magic=address.offset(track.address())
TASK.MailBoX &magic
)
menuitem "Display Mailbox Object"
(
PRIVATE &address
&address=track.address()
Var.View %Open (ti_sysbios_knl_Mailbox_Instance_State*)(&address)
)
menuitem "Dump Mailbox Object"
(
PRIVATE &address
&address=track.address()
Data.dump &address
)
)
menu "task.sem"
(
menuitem "Display Detailed"
(
PRIVATE &magic
&magic=address.offset(track.address())
TASK.SEMaphore &magic
)
menuitem "Display Semaphore Object"
(
PRIVATE &address
&address=track.address()
IF (var.exist(ti_sysbios_knl_Semaphore_Instance_State))
Var.View %Open (ti_sysbios_knl_Semaphore_Instance_State*)(&address)
ELSE
Var.View %Open (ti_sysbios_knl_Semaphore_Object__*)(&address)
)
menuitem "Dump Semaphore Object"
(
PRIVATE &address
&address=track.address()
Data.dump &address
)
)
menu "task.swi"
(
menuitem "Display Detailed"
(
PRIVATE &magic
&magic=address.offset(track.address())
TASK.SWI &magic
)
menuitem "Display SWI Object"
(
PRIVATE &address
&address=track.address()
Var.View %Open (ti_sysbios_knl_Swi_Object*)(&address)
)
menuitem "Dump SWI Object"
(
PRIVATE &address
&address=track.address()
Data.dump &address
)
)
menu "task.hwi"
(
menuitem "Display Detailed"
(
PRIVATE &magic
&magic=address.offset(track.address())
TASK.HWI &magic
)
menuitem "Display HWI Object"
(
PRIVATE &address &struct
&address=track.address()
&struct=task.struct(hwi)
Var.View %Open (&struct*)(&address)
)
menuitem "Dump HWI Object"
(
PRIVATE &address
&address=track.address()
Data.dump &address
)
)
menu "task.hm"
(
menuitem "Display Detailed"
(
PRIVATE &magic
&magic=address.offset(track.address())
TASK.HeapMem &magic
)
menuitem "Display HeapMem Object"
(
PRIVATE &address
&address=track.address()
Var.View %Open (ti_sysbios_heaps_HeapMem_Object*)(&address)
)
menuitem "Dump HeapMem Object"
(
PRIVATE &address
&address=track.address()
Data.dump &address
)
)
)