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

102 lines
2.1 KiB
Plaintext

; --------------------------------------------------------------------------------
; @Title: Lithos specific menu
; @Description: -
; @Author: DIE
; @Copyright: (c) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only
; --------------------------------------------------------------------------------
; $Id$
NAME "TASK.LITHOS"
IF !MENU.EXIST("TASK.LITHOS")
(
ADD
MENU
(
POPUP "LithOS"
(
DEFAULT
MENUITEM "Display &Processes" "TASK.Process"
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
)
)
)
)
MENU "task.process"
(
DEFAULT
MENUITEM "Display detailed"
(
PRIVATE &nAddress
&nAddress=ADDRESS.OFFSET(TRACK.ADDRESS())
TASK.Process &nAddress
)
//MENUITEM "Display process struct"
//(
// PRIVATE &address &struct
// &address=TRACK.ADDRESS()
// &struct=TASK.STRUCT(proc)
// Var.View %Open %String (&struct*)(&address)
//)
SEPARATOR
MENUITEM "Display Stack Frame"
(
PRIVATE &nAddress
&nAddress=ADDRESS.OFFSET(TRACK.ADDRESS())
Frame /Locals /Caller /TASK &nAddress
)
MENUITEM "Display Registers"
(
PRIVATE &nAddress
&nAddress=ADDRESS.OFFSET(TRACK.ADDRESS())
Register.view /TASK &nAddress
)
menuitem "Switch Context"
(
PRIVATE &nAddress
&nAddress=ADDRESS.OFFSET(TRACK.ADDRESS())
Register.TASK &nAddress
)
separator
menuitem "Add to Stack Cov"
(
PRIVATE &nAddress
&nAddress=ADDRESS.OFFSET(TRACK.ADDRESS())
TASK.STacK.ADD &nAddress
)
menuitem "Rm from Stack Cov"
(
PRIVATE &nAddress
&nAddress=ADDRESS.OFFSET(TRACK.ADDRESS())
TASK.STacK.RM &nAddress
)
SEPARATOR
MENUITEM "Dump process entry"
(
PRIVATE &pAddress
&pAddress=TRACK.ADDRESS()-8
Data.dump &pAddress /DIALOG
)
)
)