; -------------------------------------------------------------------------------- ; @Title: uC3-compact specific menu ; @Description: - ; @Author: DIE ; @Copyright: (c) 1989-2014 Lauterbach GmbH, licensed for use with TRACE32(R) only ; -------------------------------------------------------------------------------- ; $Id: uc3cmp.men 6109 2021-02-01 13:08:39Z rdienstbeck $ add menu ( popup "&uC3Cmp" ( default menuitem "Display &Tasks" "TASK.TaSK" menuitem "Display &Semaphores" "TASK.SEMaphore" menuitem "Display &Event Flags" "TASK.FLaG" menuitem "Display Data &Queues" "TASK.DaTaQueue" menuitem "Display &Mailboxes" "TASK.MailBoX" menuitem "Display &Fixed MemPools" "TASK.MemPoolF" menuitem "Display &Cyclic Handlers" "TASK.CYClic" //menuitem "Display &ISRs" "TASK.ISR" //menuitem "Display &Shared Stacks" "TASK.STK" separator popup "&Stack Coverage" ( menuitem "&List Stacks" "TASK.STacK" menuitem "Add Task" "TASK.STacK.ADD" menuitem "Remove Task" "TASK.STacK.ReMove" menuitem "Reset Coverage" ( LOCAL &yes DIALOG.YESNO "Overwrite unused stack space" "with stack fill pattern?" ENTRY &yes IF !&yes ENDDO TASK.STacK.Init ) ) ) 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 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 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 ) ) 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 "[:manual]OS Awareness Manual uC3-Compact" "HELP __RTOS_UC3CMP_" ) ) menu "task.tsk" ( default menuitem "Display Detailed" ( &address=address.offset(track.address()) TASK.TaSK &address ) menuitem "Display CTSK struct" ( &id=address.offset(track.address()) &addr=task.caddr(&id) Var.View %Open (T_CTSK*)&addr ) menuitem "Display TCB struct" ( &id=address.offset(track.address()) &addr=task.addr(&id) Var.View %Open (T_TCB*)&addr ) ;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 task entry" ( &id=address.offset(track.address()) &addr=task.addr(&id) Data.dump &addr /l /dialog ) ) menu "task.sem" ( default menuitem "Display Detailed" ( &address=address.offset(track.address()) TASK.SEMaphore &address ) menuitem "Display CSEM struct" ( &id=address.offset(track.address()) &addr=task.caddr(&id) Var.View %Open (T_CSEM*)&addr ) menuitem "Display SEM struct" ( &id=address.offset(track.address()) &addr=task.addr(&id) Var.View %Open (T_SEM*)&addr ) menuitem "Dump semaphore entry" ( &id=address.offset(track.address()) &addr=task.addr(&id) Data.dump &addr /l /dialog ) ) menu "task.flg" ( default menuitem "Display Detailed" ( &address=address.offset(track.address()) TASK.FLaG &address ) menuitem "Display CFLG struct" ( &id=address.offset(track.address()) &addr=task.caddr(&id) Var.View %Open (T_CFLG*)&addr ) menuitem "Display FLG struct" ( &id=address.offset(track.address()) &addr=task.addr(&id) Var.View %Open (T_FLG*)&addr ) menuitem "Dump flag entry" ( &id=address.offset(track.address()) &addr=task.addr(&id) Data.dump &addr /l /dialog ) ) menu "task.dtq" ( default menuitem "Display Detailed" ( &address=address.offset(track.address()) TASK.DaTaQueue &address ) menuitem "Display CDTQ struct" ( &id=address.offset(track.address()) &addr=task.caddr(&id) Var.View %Open (T_CDTQ*)&addr ) menuitem "Display DTQ struct" ( &id=address.offset(track.address()) &addr=task.addr(&id) Var.View %Open (T_DTQ*)&addr ) menuitem "Dump data queue entry" ( &id=address.offset(track.address()) &addr=task.addr(&id) Data.dump &addr /l /dialog ) ) menu "task.cyc" ( default menuitem "Display Detailed" ( &address=address.offset(track.address()) TASK.CYClic &address ) menuitem "Display CCYC struct" ( &id=address.offset(track.address()) &addr=task.caddr(&id) Var.View %Open (T_CYC*)&addr ) menuitem "Display CYC struct" ( &id=address.offset(track.address()) &addr=task.addr(&id) Var.View %Open (T_CYC*)&addr ) menuitem "Dump cyclic entry" ( &id=address.offset(track.address()) &addr=task.addr(&id) Data.dump &addr /l /dialog ) ) menu "task.isr" ( default menuitem "Display ISR control struct" ( &id=address.offset(track.address()) Var.View %o _pISR[&id-1] ) menuitem "Dump ISR control entry" ( &id=address.offset(track.address()) &sem=data.long(D:(_pISR+((&id-1)*4))) Data.dump &sem /l /dialog ) )