Files
Gen4_R-Car_Trace32/2_Trunk/demo/arm/kernel/chibios/chibios.t32
2025-10-14 09:52:32 +09:00

2212 lines
114 KiB
Plaintext

;@Extension.Container.Version.1
;-- DO NOT CHANGE THE LINE ABOVE --
IF (VERSION.BUILD.BASE()<138311.)
(
PRINTF %ERROR "%s: Software too old, please contact support@lauterbach.com." "ChibiOS"
ENDDO
)
PMACRO.EXPLICIT
PRIVATE &sParamline &sPpf &sCmd &sParameters &sAccess &sAccessSpaces &sAccessMachine &sOptionAccess &sOptionAccessMisc &sName &sMachine &sArguments &nVariant
PRIVATE &bTaskConfig &bExtLoad &bCleanup
ENTRY &sCmd %LINE &sParamline
&sParameters=STRing.SCANAndExtract("&sParamline","PARAMETERS=","")
&sAccess=STRing.SCANAndExtract("&sParamline","ACCESS=","")
&sAccessSpaces=STRing.SCANAndExtract("&sParamline","ACCESSSPACES=","")
&sAccessMachine=STRing.SCANAndExtract("&sParamline","ACCESSMACHINE=","")
&sName=STRing.SCANAndExtract("&sParamline","NAME=","")
&sMachine=STRing.SCANAndExtract("&sParamline","MACHINE=","")
&sArguments=STRing.SCANAndExtract("&sParamline","ARGUMENTS=","")
&sParameters=STRing.Replace("&sParameters","""","",0.)
IF ("&sArguments"!="")
&sArguments=&sArguments
IF ("&sAccess"!="")
&sOptionAccess="/ACCESS &sAccess"
IF ("&sAccessSpaces"!="")
&sOptionAccessMisc="/ACCESSSPACES &sAccessSpaces"
IF ("&sAccessMachine"!="")
&sOptionAccessMisc="&(sOptionAccessMisc) /ACCESSMACHINE &sAccessMachine"
&sName=STRing.Replace("&sName","""","",0.)
&bTaskConfig=STRing.SCAN("task.config,ext.config",STRing.LoWeR("&sCmd"),0.)>=0.
&bExtLoad=STRing.SCAN("ext.load",STRing.LoWeR("&sCmd"),0.)>=0.
&bCleanup=STRing.SCAN("task.res,ext.res,ext.delete",STRing.LoWeR("&sCmd"),0.)>=0.
&sPpf=OS.PresentPracticeFile()
IF (&bTaskConfig||&bExtLoad)
(
IF ("&nVariant"!="32.")&&("&nVariant"!="64.")
(
IF CPUIS64BIT()
&nVariant="64."
ELSE
&nVariant="32."
)
IF STRing.ComPare("&sArguments","*32BIT*")
&nVariant="32."
ELSE IF STRing.ComPare("&sArguments","*64BIT*")
&nVariant="64."
)
IF (&bTaskConfig)
(
PRIVATE &sMachineName
&sMachineName="ChibiOS"
TASK.RESet
IF (&nVariant==32.)
(
GOSUB extension_32bit "&sParameters" "&sOptionAccess"
IF !STRing.Compare("&sArguments","*MENU=NONE*")
GOSUB menu_32bit "&sMachineName" ""
GOSUB autoload_32bit ""
)
ELSE IF (&nVariant==64.)
(
GOSUB extension_64bit "&sParameters" "&sOptionAccess"
IF !STRing.Compare("&sArguments","*MENU=NONE*")
GOSUB menu_64bit "&sMachineName" ""
GOSUB autoload_64bit ""
)
)
ELSE IF (&bExtLoad)
(
PRIVATE &sMachineName &sInfix &sOptionName &sOptionMachine
&sInfix=""
&sMachineName="ChibiOS"
IF ("&sName"!="")
(
&sInfix=STRing.UPpeR("&(sName).")
&sMachineName="&(sName)"
&sOptionName="/NAME &sMachineName"
)
ELSE IF PRACTICE.FUNCtion.AVAILable(SYStem.Option.MACHINESPACES)
(
IF SYStem.Option.MACHINESPACES()
&sInfix=TASK.TRANSPOSE.INFIX(OS.FILE.BASENAME("&sPpf",".**"))+"."
)
IF ("&sMachine"!="")
(
&sOptionMachine="/MACHINE &sMachine"
)
IF (&nVariant==32.)
(
GOSUB extension_32bit "&sParameters" "&sOptionAccess &sOptionAccessMisc &sOptionName &sOptionMachine"
IF !STRing.Compare("&sArguments","*MENU=NONE*")
GOSUB menu_32bit "&sMachineName" "&sInfix"
GOSUB autoload_32bit "&sOptionMachine"
)
ELSE IF (&nVariant==64.)
(
GOSUB extension_64bit "&sParameters" "&sOptionAccess &sOptionAccessMisc &sOptionName &sOptionMachine"
IF !STRing.Compare("&sArguments","*MENU=NONE*")
GOSUB menu_64bit "&sMachineName" "&sInfix"
GOSUB autoload_64bit "&sOptionMachine"
)
)
ELSE IF (&bCleanup)
(
PRIVATE &sMachineName &sOptionMachine
&sMachineName="ChibiOS"
IF ("&sName"!="")
(
&sMachineName="&(sName)"
)
IF ("&sMachine"!="")
(
&sOptionMachine="/MACHINE &sMachine"
)
IF STRing.SCAN(HELP.FILTER(),"rtoschibios",0.)>=0.
HELP.FILTER.Delete rtoschibios
GOSUB menu_delete "&sMachineName"
GOSUB autoload_delete "&sOptionMachine"
)
ENDDO
extension_32bit: ; (options)
(
PARAMETERS &sParameters &sOptions
EXTension.LOAD &sParameters &sOptions
(
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
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoAAAABgAAAA0AAABOAAAn0gAAB+gAAAAGAAAAAAAAAAAA
AAAAAAAAAAAAAAAAATefQ2hpYmlPUwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAHJsaXN0AAAAdnRsaXN0AABcR2xvYmFs
XGNoAABzdHJ1Y3QgY2hfcmVhZHlfbGlzdC5yX29sZGVyAAAAAHN0cnVjdCBjaF9yZWFkeV9saXN0
Lm9sZGVyAABjaF9zeXN0ZW0AAABDYW5ub3QgZGV0ZWN0IENoaWJpT1MgdmVyc2lvbiEAAENoaWJp
T1MAQVJNAFJlYWR5TGlzdAAAAC5yX2N1cnJlbnQAAFRocmVhZAAALnBfcHJpbwAucF9jdHgAAC5w
X29sZGVyAAAAAC5wX25hbWUALnBfc3RhdGUAAAAALnBfZmxhZ3MAAAAALnBfdQAAAAAucF93YWl0
aW5nAAAucF9tc2dxdWV1ZQAucF9tc2cAAC5wX2VwZW5kaW5nAC5wX210eGxpc3QAAFNlbWFwaG9y
ZQAAAC5zX3F1ZXVlAAAAAC5zX2NudAAATXV0ZXgAAAAubV9xdWV1ZQAAAAAubV9vd25lcgAAAAAu
bV9uZXh0AE1haWxib3gALm1iX2J1ZmZlcgAALm1iX3RvcAAubWJfd3JwdHIAAAAubWJfcmRwdHIA
AAAubWJfZnVsbHNlbQAubWJfZW1wdHlzZW0AAAAALm1iX2NudAAubWJfcXcAAC5tYl9xcgAAQ29u
ZFZhcgAuY19xdWV1ZQAAAABFdmVudFNvdXJjZQAuZXNfbmV4dAAAAABFdmVudExpc3RlbmVyAAAA
LmVsX25leHQAAAAALmVsX2xpc3RlbmVyAAAAAC5lbF9tYXNrAAAAAE1lbW9yeUhlYXAAAC5oX3By
b3ZpZGVyAC5oX2ZyZWUAaGVhcF9oZWFkZXIATWVtb3J5UG9vbAAALm1wX25leHQAAAAALm1wX29i
amVjdF9zaXplAC5tcF9wcm92aWRlcgAAAABHZW5lcmljUXVldWUAAAAALnFfd2FpdGluZwAALnFf
Y291bnRlcgAALnFfYnVmZmVyAAAALnFfdG9wAAAucV93cnB0cgAAAAAucV9yZHB0cgAAAAAucV9u
b3RpZnkAAABWaXJ0dWFsVGltZXIAAAAALnZ0X25leHQAAAAALnZ0X3RpbWUAAAAALnZ0X2Z1bmMA
AAAALnZ0X3BhcgBjaF9zeXN0ZW1fdAAucmxpc3QAAC52dGxpc3QALm1haW50aHJlYWQAc3RydWN0
IGNoX3JlYWR5X2xpc3QAAAAAc3RydWN0IGNoX3RocmVhZAAAAABzdHJ1Y3QgY2hfc2VtYXBob3Jl
AHN0cnVjdCBjaF9tdXRleABtYWlsYm94X3QAAABzdHJ1Y3QgY29uZGl0aW9uX3ZhcmlhYmxlAAAA
c3RydWN0IGV2ZW50X3NvdXJjZQBzdHJ1Y3QgZXZlbnRfbGlzdGVuZXIAAAAuZWxfZXZlbnRzAABz
dHJ1Y3QgbWVtb3J5X2hlYXAAAHVuaW9uIGhlYXBfaGVhZGVyAAAAbWVtb3J5X3Bvb2xfdAAAAHN0
cnVjdCBpb19xdWV1ZQBzdHJ1Y3QgY2hfdmlydHVhbF90aW1lcgAuY3VycmVudAAAAAAucHJpbwAA
AC5jdHgAAAAALm5hbWUAAAAud2FiYXNlAC5zdGF0ZQAALmZsYWdzAAAudQAALndhaXRpbmcAAAAA
Lm1zZ3F1ZXVlAAAALmVwZW5kaW5nAAAALm10eGxpc3QAAAAALnF1ZXVlAAAuY250AAAAAC5vd25l
cgAALm5leHQAAAAuYnVmZmVyAC50b3AAAAAALndycHRyAAAucmRwdHIAAC5xdwAucXIALmxpc3Rl
bmVyAAAALmV2ZW50cwAucHJvdmlkZXIAAAAuaGVhZGVyAC5vYmplY3Rfc2l6ZQAAAAAuZGVsdGEA
AC5mdW5jAAAALnBhcgAAAABjaDAAY2hfc3lzdGVtX3QuaW5zdGFuY2VzAAAAb3NfaW5zdGFuY2Vf
dAAAAC5yZWdsaXN0AAAAAC5yZWFscHJpbwAAAC5ycXVldWUALmRsaXN0Lm5leHQALmRsaXN0LmRl
bHRhAAAAAFRocmVhZCBsaXN0IGludmFsaWQgLSBDSF9DRkdfVVNFX1JFR0lTVFJZIG1pc3Npbmc/
AAAlOHgAVEFTSy5UaHJlYWQgJXgAAFRBU0suVAAAKgAAAHJlYWR5AAAAY3VycmVudABzdXNwZW5k
ZWQAAABjcmVhdGVkAHd0c2VtAAAAd3RtdHgAAAB3dGNvbmQAAHNsZWVwaW5nAAAAAHd0ZXhpdAAA
d3RvcmV2dAB3dGFuZGV2dAAAAABzbmRtc2dxAHNuZG1zZwAAd3Rtc2cAAAB3dHF1ZXVlAGZpbmFs
AAAAKCVkKQAAAAAlZC4AVGhyZWFkIGxpc3QgaW52YWxpZCAtIAoAQ0hfQ0ZHX1VTRV9SRUdJU1RS
WSBtaXNzaW5nPwoAAAB3YWl0aW5nIGZvcjoKAAAAIC0gCgAAAABzZW0gIAAAAFRBU0suU0VNAAAA
AFRBU0suU0VNYXBob3JlICV4AAAAbXR4ICAAAABUQVNLLk1UWAAAAABUQVNLLk11VGVYICV4AAAA
Y29uZCAgAABUQVNLLkNPTkQAAABUQVNLLkNPTkR2YXIgJXgAc2VuZCBtc2cgICU4eCAgdG8gcXVl
dWUgIAAAAHNlbmQgbXNnICAlOHggIHRvIHRhc2sgIAAAAABtc2cKAAAAAGV2ZW50IChvcikgJTh4
CgBldmVudCAoYW5kKSAlOHgKAAAAAHF1ZXVlICAAVEFTSy5HUQBUQVNLLlF1ZXVlICV4AAAAdGlt
ZW91dCAgCgAAZXhpdCBvZiBhIHRhc2sKAHVua25vd24gc3RhdGUKAABvd25lZCBtdXRleGVzOgoA
bm9uZQoAAAB0YXNrcyB0byBzZW5kIG1zZ3M6CgAAAABldmVudHMgcGVuZGluZzoKAAAAAHRhc2sg
d2FpdGluZyBmb3IgZXhpdDoKAG1hZ2ljICAgIAAAAG5hbWUgICAgICAgIAAAAABzdGF0ZSAgICAA
AABwcmlvAAAAAFNvcnJ5OiB0YXNrIG5vdCBmb3VuZC4AAFRIUkVBRAAAQCg9KV9fUlRPU19DSElC
SU9TX19UQVNLX1QAAHNlbWFwaG9yZQAAAD45OS4AAAAAd2FpdGluZyB0YXNrcwoAAGNvdW50AAAA
d2FpdGluZwBzeW1ib2wgAFBsZWFzZSBzcGVjaWZ5IGEgU2VtYXBob3JlIGFkZHJlc3Mgb3IgdmFy
aWFibGUuAFNFTUFQSE9SRQAAAFNFTQBTRU1hcGhvcmUAAABAKD0pX19SVE9TX0NISUJJT1NfX1RB
U0tfU0VNAAAAAG11dGV4AAAAVEFTSy5NdVRlWSAleAAAAG93bmVyICAgIAAAAFBsZWFzZSBzcGVj
aWZ5IGEgTXV0ZXggYWRkcmVzcyBvciB2YXJpYWJsZS4ATVVURVgAAABNVFgATXVUZVgAAABAKD0p
X19SVE9TX0NISUJJT1NfX1RBU0tfTVRYAAAAAGNvbmR2YXIAUGxlYXNlIHNwZWNpZnkgYSBDb25k
VmFyIGFkZHJlc3Mgb3IgdmFyaWFibGUuAAAAQ09ORFZBUgBDT05EAAAAAENPTkR2YXIAQCg9KV9f
UlRPU19DSElCSU9TX19UQVNLX0NPTkQAAABtYWlsYm94AFRBU0suTWFpbEJveCAleABUQVNLLk1C
AGZldGNoOiAAcG9zdDogAABidWZmZXIgICAgcmVhZCAgICAgIHdyaXRlCgAARGF0YS5kdW1wICV4
IC9kaWFsb2cAAAAACgoAAG1lc3NhZ2VzCgAAACU4eCAgAAAAd2FpdGluZyB0YXNrcyB0byBmZXRj
aAoAd2FpdGluZyB0YXNrcyB0byBwb3N0CgAAd2FpdGluZyAgIAAAUGxlYXNlIHNwZWNpZnkgYSBN
YWlsYm94IGFkZHJlc3Mgb3IgdmFyaWFibGUuAAAATUFJTEJPWABNQgAATWFpbEJveABAKD0pX19S
VE9TX0NISUJJT1NfX1RBU0tfTUIAZXZlbnQAAABUQVNLLkVWZW5UICV4AAAAVEFTSy5FVlQAAAAA
bWFzayAgICAgIGxpc3RlbmVyCgBsaXN0ZW5lcnMAAABQbGVhc2Ugc3BlY2lmeSBhIEV2ZW50U291
cmNlIGFkZHJlc3Mgb3IgdmFyaWFibGUuAAAARVZFTlQAAABFVlQARVZlblQAAABAKD0pX19SVE9T
X0NISUJJT1NfX1RBU0tfRVZUAAAAAGRlZmF1bHRfaGVhcAAAAABUQVNLLkhlYXAgJXgAAAAAVEFT
Sy5IRUFQAAAARGF0YS5MaXN0ICV4AAAAACAtIABmcmVlICAgICAAAABmcmFncwAAAHByb3ZpZGVy
ICAgICAgIABQbGVhc2Ugc3BlY2lmeSBhIEhlYXAgYWRkcmVzcyBvciB2YXJpYWJsZS4AAEhFQVAA
AAAASAAAAEhlYXAAAAAAQCg9KV9fUlRPU19DSElCSU9TX19UQVNLX0gAAHBvb2wAAAAAVEFTSy5Q
b29sICV4AAAAAFRBU0suUE9PTAAAAG9iaiBzaXplIAAAAG51bSBmcmVlAAAAAFBsZWFzZSBzcGVj
aWZ5IGEgTWVtb3J5UG9vbCBhZGRyZXNzIG9yIHZhcmlhYmxlLgAAAABQT09MAAAAAFBvb2wAAAAA
QCg9KV9fUlRPU19DSElCSU9TX19UQVNLX1AAAGNhbGxiYWNrCgAAAGJ5dGVzIGluIHF1ZXVlCgBp
bnB1dDogICAAAAAlMnggAAAAAC4uLgBvdXRwdXQ6ICAAAABQbGVhc2Ugc3BlY2lmeSBhIFF1ZXVl
IGFkZHJlc3Mgb3IgdmFyaWFibGUuAFFVRVVFAAAAUQAAAFF1ZXVlAAAAQCg9KV9fUlRPU19DSElC
SU9TX19UQVNLX1EAAFRBU0suVlRpbWVyICV4AABUQVNLLlZUAD8/PwAoAAAAd2FrZXVwAAApAAAA
dGltZSAgIABmdW5jdGlvbiAAAABWVElNRVIAAFZUAABWVGltZXIAAEAoPSlfX1JUT1NfQ0hJQklP
U19fVEFTS19WVAAlQGMlLTE3cyAAAAAlQGNNVEQgVmVyc2lvbiAgJXMgICVzICAlMDJkLiUwMmQu
JTA0ZCAoQnVpbGQgJXMpCgoAY2ggYXBpIHZlcnNpb24gICAgJWQuCgAAbWFnaWMAAABjaCBzeXN0
ZW0AAAByZWdsaXN0AG9mZnNldCBybF9vbGRlciAgICU4eAoAAG9mZnNldCB0aHJfb2xkZXIgICU4
eAoAAFRocmVhZCBsaXN0IGludmFsaWQgLSBDSF9DRkdfVVNFX1JFR0lTVFJZIG1pc3Npbmc/CgBv
ZmZzZXQgcnF1ZXVlICAgICAlOHgKAABURVNUAAAAAGFyZ3VtZW50ICAgICAgICAgIHZhbHVlICAg
ICBjb250ZW50ICAgc3ltYm9sAAAAAF9fbWFpbl90aHJlYWRfc3RhY2tfYmFzZV9fAABfX21haW5f
dGhyZWFkX3N0YWNrX2VuZF9fAAAAcjQAAHI1AAByNgAAcjcAAHI4AAByOQAAcjEwAHIxMQByMTQA
cGMAAHIxMwBoYXJkd2FyZXRocmVhZAAALS0tICBUQVNLICBtYWdpYyA9ICU4eAAAICBuYW1lID0g
JXMgIC0tLQAAAABfX1JUT1NfQ0hJQklPU19fQUwAAF9fUlRPU19DSElCSU9TX19BUwAAX19SVE9T
X0NISUJJT1NfX0FUAABwYXJhbWV0ZXIgMTogMHglOHggPSAlcwBtYWdpY3NpemUAAAB1bmtub3du
IHRvcGljAAAAVEFTSy5DT05GSUcAX19SVE9TX0NISUJJT1NfX0ZVTkMAAAAAdGNiADxub25lPgAA
bWJveAAAAAB0aW1lcgAAAFRBU0suU1RSVUNUAERBVEEAAGd4AABg3AAAYOQAAAAAAAAAAQAAAAMA
KAAAAAQAWAAAIuwAAAADACgAAAAEAFgAACEIAAAAAgAAAAAAAGkoAAAAAAAAaUAAAGyUAABhAAAA
aUgAABxYAABo+AAAaQQAAGkUAABpIAAAAAAAAAADACgAAAAEAKAAACsEAAAAAgAAAAAAAGmgAAAA
AAAAadAAAGncAABp4AAAaewAACkUAABo+AAAaYgAAGmQAABpmAAAAAAAAAADACgAAAAEAOgAAC6Q
AAAAAgAAAAAAAGowAAAAAAAAalwAAGpkAABqaAAAanAAACx8AABo+AAAaiQAAGmQAABpmAAAAAAA
AAADACgAAAAEATAAADG0AAAAAgAAAAAAAGqYAAAAAAAAasgAAGrQAABq2AAAauAAADAIAABo+AAA
aZAAAGmYAAAAAAAAAAMAMgAAAAQBdAAANjQAAAACAAAAAAAAa7gAAAAAAABr6AAAa/AAAGv0AABr
/AAAMvgAAGj4AABtrAAAaYgAAGusAABpmAAAAAAAAAADACgAAAAEAcAAADwYAAAAAgAAAAAAAGxc
AAAAAAAAbJAAAGyYAABsnAAAbKQAADpUAABo+AAAbFAAAGmYAAAAAAAAAAMDPAAAAAQCBAAAQCgA
AAACAAAAAAAAbSgAAAAAAABtVAAAbVwAAG1gAABtaAAAPcQAAGj4AABtBAAAbRAAAG0YAABpmAAA
AAAAAAADAzwAAAAEAlAAAEJkAAAAAgAAAAAAAG3AAAAAAAAAbfQAAGzsAABt/AAAbgQAAEBwAABo
+AAAbagAAG20AABtGAAAaZgAAAAAAAAAAwAyAAAABAKcAABEsAAAAAIAAAAAAABuYAAAAAAAAG6M
AABulAAAbpgAAG6gAABCrAAAaPgAAG2sAABpiAAAaZAAAGmYAAAAAAAAAAMAMgAAAAQC2AAAS7AA
AG78AABvBAAAbwgAAG8QAABJ5AAAaPgAAG7oAABu8AAAAAAAAAABADwAAAAAcCQAAE00AABwHAAA
cBwAAGd4AABneAAATEgAAHCMAAAAAAAAAAQAAHCQAAAAAAAAAAQAAHCUAAAAAAAAAAQAAHCYAAAA
AAAAAAQAAHCcAAAAAAAAAAQAAHCgAAAAAAAAAAQAAHCkAAAAAAAAAAQAAHCoAAAAAAAAAAQAAHCs
AAAAAAAAAAQAAHCwAAAAAAAAAAQAAHC0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAHC4AAAAAAAAAAAA
AAAAAAAAAAAAAAAAAFRYAABUtAAAcPQAAFQwAABxCAAAVTwAAHEcAABWIAAAcWQAAAADAAAAFwAA
AAAAAHFwAABXxAAAcaQAAAAHAAAAFwAAAAAAAHFwAABZBAAAYQAAAGPYAAAAAAAAYYQAAGPsAAAA
AAAAYaQAAGQAAAAAAAAAYcwAAGQQAAAAAAAAYjQAAGQcAAAAAAAAYkgAAGQ4AAAAAAAAYpgAAGRw
AAAAAAAAYsQAAGSYAAAAAAAAYvwAAGSoAAAAAAAAY1wAAGS4AAAAAFQzMkU=
)
HELP.FILTER.Add rtoschibios
RETURN
)
menu_32bit: ;(header, infix)
(
PMACRO.LOCK
(
PRIVATE &sHeader &sInfix &sMenuName
PARAMETERS &sHeader &sInfix
&sMenuName=TASK.TRANSPOSE.INFIX("&sHeader")
IF MENU.EXIST("TASK.&(sMenuName)")
MENU.Delete.NAME TASK.&(sMenuName)
IF MENU.EXIST("EXT.&(sMenuName)")
MENU.Delete.NAME EXT.&(sMenuName)
MENU.ReProgram
(&+
; --------------------------------------------------------------------------------
; @Title: ChibiOS/RT specific menu
; @Description: -
; @Author: DIE
; @Copyright: (c) 1989-2021 Lauterbach GmbH, licensed for use with TRACE32(R) only
; --------------------------------------------------------------------------------
; $Id: chibios.m 7855 2022-07-28 12:13:39Z amerkle $
NAME "TASK.&(sMenuName)"
IF !MENU.EXIST("TASK.&(sMenuName)")
(
add
menu
(
POPUP "&(sHeader)"
(
default
menuitem "Display &Threads" "TASK.&(sInfix)Thread"
menuitem "Display &Semaphore" "do ~~/demo/arm/kernel/chibios/objdialog Semaphore SEMaphore"
menuitem "Display &Mutex" "do ~~/demo/arm/kernel/chibios/objdialog Mutex MuTeX"
menuitem "Display &CondVar" "do ~~/demo/arm/kernel/chibios/objdialog CondVar CONDvar"
menuitem "Display &Mailbox" "do ~~/demo/arm/kernel/chibios/objdialog Mailbox MailBox"
menuitem "Display &Event" "do ~~/demo/arm/kernel/chibios/objdialog Event EVenT"
menuitem "Display &Heap" "do ~~/demo/arm/kernel/chibios/objdialog Heap Heap"
menuitem "Display &Pool" "do ~~/demo/arm/kernel/chibios/objdialog Pool Pool"
menuitem "Display &Queue" "do ~~/demo/arm/kernel/chibios/objdialog Queue Queue"
menuitem "Display Timer" "TASK.&(sInfix)VTimer"
separator
popup "&Stack Coverage"
(
menuitem "&List Stacks" "TASK.&(sInfix)STacK.view"
menuitem "Add Task" "TASK.&(sInfix)STacK.ADD"
menuitem "Remove Task" "TASK.&(sInfix)STacK.RM"
menuitem "Reset Coverage"
(
LOCAL &yes
DIALOG.YESNO "Overwrite unused stack space" "with stack fill pattern?"
ENTRY &yes
IF !&yes
ENDDO
TASK.&(sInfix)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 a.mode.flow()
(
Break.Delete /TraceEnable
Break.Set C:0x1F:::task.&(sInfix)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 C:0x1F:::task.&(sInfix)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 ChibiOS/RT" "HELP __RTOS_CHIBIOS_"
)
)
menu "task.&(sInfix)t"
(
default
menuitem "Display detailed"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)Thread &address
)
menuitem "Display thread struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(tcb)
Var.View %Open %String (&struct)*&address
)
separator
menuitem "Display Stack Frame"
(
PRIVATE &address
&address=address.offset(track.address())
Var.Frame /Locals /Caller /Task &address
)
menuitem "Display Registers"
(
PRIVATE &address
&address=address.offset(track.address())
Register /Task &address
)
menuitem "Switch Context" "Register.TASK address.offset(track.address())"
separator
menuitem "Add to Stack Cov" "TASK.&(sInfix)STK.ADD address.offset(track.address())"
menuitem "Rm from Stack Cov" "TASK.&(sInfix)STK.RM address.offset(track.address())"
separator
menuitem "Dump task entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)sem"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)SEMaphore &address
;)
menuitem "Display semaphore struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(sem)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump semaphore entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)mtx"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)MuTeX &address
;)
menuitem "Display mutex struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(mutex)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump mutex entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)mb"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)MailBox &address
;)
menuitem "Display mailbox struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(mbox)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump mailbox entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)cond"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)CONDvar &address
;)
menuitem "Display cond var struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(condvar)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump cond var entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)evt"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)EVenT &address
;)
menuitem "Display event struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(event)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump event entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)heap"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)EVenT &address
;)
menuitem "Display heap struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(heap)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump heap entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)pool"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)Pool &address
;)
menuitem "Display pool struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(pool)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump pool entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)gq"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)MailBox &address
;)
menuitem "Display queue struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(queue)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump queue entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)vt"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)MailBox &address
;)
menuitem "Display timer struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(timer)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump timer entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "var"
(
popup "ChibiOS"
(
menuitem "Display as Semaphore"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)SEMaphore &address
)
menuitem "Display as Mutex"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)MuTeX &address
)
menuitem "Display as CondVar"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)CONDvar &address
)
menuitem "Display as Mailbox"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)MailBox &address
)
menuitem "Display as Event"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)EVenT &address
)
menuitem "Display as Heap"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)Heap &address
)
menuitem "Display as Pool"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)Pool &address
)
menuitem "Display as Queue"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)Queue &address
)
)
)
)
)
)
PMACRO.UNLOCK
RETURN
)
autoload_32bit: ;(options)
(
PARAMETERS &sOptions
RETURN
)
extension_64bit: ; (options)
(
PARAMETERS &sParameters &sOptions
EXTension.LOAD &sParameters &sOptions
(
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
ToAAIDhACwZ8ghAIToAAIL4CAwQAAAAFAEBWRVJTSU9OLUlORk9AADEwMTk0AAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAn0gAAB+gAAAAGAAAADQAAAAAAAAAAAAAAAGh0dHBzOi8vc3ZuLmlu
dGVybi5sYXV0ZXJiYWNoLmNvbS9zdm4va2VybmVsc3JjL2JyYW5jaGVzL25pZ2h0bHkAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
aHR0cHM6Ly9zdm4uaW50ZXJuLmxhdXRlcmJhY2guY29tL3N2bi9rZXJuZWxzcmMAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAABiYXVtZWlzdGVyAAAAAAAAZWRrLWxpbnV4NjRiaXQtNwAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEdDQyA5LjUuMAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6AAA
AAYAAAANAAAATgAAJ9IAAAfoAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAE3oENoaWJpT1MAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAACAAAABybGlzdAAAAHZ0bGlzdAAAXEdsb2JhbFxjaAAAc3RydWN0IGNoX3JlYWR5X2xpc3Qu
cl9vbGRlcgAAAABzdHJ1Y3QgY2hfcmVhZHlfbGlzdC5vbGRlcgAAY2hfc3lzdGVtAAAAQ2Fubm90
IGRldGVjdCBDaGliaU9TIHZlcnNpb24hAABDaGliaU9TAEFSTTY0AAAAUmVhZHlMaXN0AAAALnJf
Y3VycmVudAAAVGhyZWFkAAAucF9wcmlvAC5wX2N0eAAALnBfb2xkZXIAAAAALnBfbmFtZQAucF9z
dGF0ZQAAAAAucF9mbGFncwAAAAAucF91AAAAAC5wX3dhaXRpbmcAAC5wX21zZ3F1ZXVlAC5wX21z
ZwAALnBfZXBlbmRpbmcALnBfbXR4bGlzdAAAU2VtYXBob3JlAAAALnNfcXVldWUAAAAALnNfY250
AABNdXRleAAAAC5tX3F1ZXVlAAAAAC5tX293bmVyAAAAAC5tX25leHQATWFpbGJveAAubWJfYnVm
ZmVyAAAubWJfdG9wAC5tYl93cnB0cgAAAC5tYl9yZHB0cgAAAC5tYl9mdWxsc2VtAC5tYl9lbXB0
eXNlbQAAAAAubWJfY250AC5tYl9xdwAALm1iX3FyAABDb25kVmFyAC5jX3F1ZXVlAAAAAEV2ZW50
U291cmNlAC5lc19uZXh0AAAAAEV2ZW50TGlzdGVuZXIAAAAuZWxfbmV4dAAAAAAuZWxfbGlzdGVu
ZXIAAAAALmVsX21hc2sAAAAATWVtb3J5SGVhcAAALmhfcHJvdmlkZXIALmhfZnJlZQBoZWFwX2hl
YWRlcgBNZW1vcnlQb29sAAAubXBfbmV4dAAAAAAubXBfb2JqZWN0X3NpemUALm1wX3Byb3ZpZGVy
AAAAAEdlbmVyaWNRdWV1ZQAAAAAucV93YWl0aW5nAAAucV9jb3VudGVyAAAucV9idWZmZXIAAAAu
cV90b3AAAC5xX3dycHRyAAAAAC5xX3JkcHRyAAAAAC5xX25vdGlmeQAAAFZpcnR1YWxUaW1lcgAA
AAAudnRfbmV4dAAAAAAudnRfdGltZQAAAAAudnRfZnVuYwAAAAAudnRfcGFyAGNoX3N5c3RlbV90
AC5ybGlzdAAALnZ0bGlzdAAubWFpbnRocmVhZABzdHJ1Y3QgY2hfcmVhZHlfbGlzdAAAAABzdHJ1
Y3QgY2hfdGhyZWFkAAAAAHN0cnVjdCBjaF9zZW1hcGhvcmUAc3RydWN0IGNoX211dGV4AG1haWxi
b3hfdAAAAHN0cnVjdCBjb25kaXRpb25fdmFyaWFibGUAAABzdHJ1Y3QgZXZlbnRfc291cmNlAHN0
cnVjdCBldmVudF9saXN0ZW5lcgAAAC5lbF9ldmVudHMAAHN0cnVjdCBtZW1vcnlfaGVhcAAAdW5p
b24gaGVhcF9oZWFkZXIAAABtZW1vcnlfcG9vbF90AAAAc3RydWN0IGlvX3F1ZXVlAHN0cnVjdCBj
aF92aXJ0dWFsX3RpbWVyAC5jdXJyZW50AAAAAC5wcmlvAAAALmN0eAAAAAAubmFtZQAAAC53YWJh
c2UALnN0YXRlAAAuZmxhZ3MAAC51AAAud2FpdGluZwAAAAAubXNncXVldWUAAAAuZXBlbmRpbmcA
AAAubXR4bGlzdAAAAAAucXVldWUAAC5jbnQAAAAALm93bmVyAAAubmV4dAAAAC5idWZmZXIALnRv
cAAAAAAud3JwdHIAAC5yZHB0cgAALnF3AC5xcgAubGlzdGVuZXIAAAAuZXZlbnRzAC5wcm92aWRl
cgAAAC5oZWFkZXIALm9iamVjdF9zaXplAAAAAC5kZWx0YQAALmZ1bmMAAAAucGFyAAAAAGNoMABj
aF9zeXN0ZW1fdC5pbnN0YW5jZXMAAABvc19pbnN0YW5jZV90AAAALnJlZ2xpc3QAAAAALnJlYWxw
cmlvAAAALnJxdWV1ZQAuZGxpc3QubmV4dAAuZGxpc3QuZGVsdGEAAAAAVGhyZWFkIGxpc3QgaW52
YWxpZCAtIENIX0NGR19VU0VfUkVHSVNUUlkgbWlzc2luZz8AACUxNngAAAAAVEFTSy5UaHJlYWQg
JXgAAFRBU0suVAAAKgAAAHJlYWR5AAAAY3VycmVudABzdXNwZW5kZWQAAABjcmVhdGVkAHd0c2Vt
AAAAd3RtdHgAAAB3dGNvbmQAAHNsZWVwaW5nAAAAAHd0ZXhpdAAAd3RvcmV2dAB3dGFuZGV2dAAA
AABzbmRtc2dxAHNuZG1zZwAAd3Rtc2cAAAB3dHF1ZXVlAGZpbmFsAAAAKCVkKQAAAAAlZC4AVGhy
ZWFkIGxpc3QgaW52YWxpZCAtIAoAQ0hfQ0ZHX1VTRV9SRUdJU1RSWSBtaXNzaW5nPwoAAAB3YWl0
aW5nIGZvcjoKAAAAIC0gCgAAAABzZW0gIAAAAFRBU0suU0VNAAAAAFRBU0suU0VNYXBob3JlICV4
AAAAbXR4ICAAAABUQVNLLk1UWAAAAABUQVNLLk11VGVYICV4AAAAY29uZCAgAABUQVNLLkNPTkQA
AABUQVNLLkNPTkR2YXIgJXgAc2VuZCBtc2cgICU4eCAgdG8gcXVldWUgIAAAAHNlbmQgbXNnICAl
OHggIHRvIHRhc2sgIAAAAABtc2cKAAAAAGV2ZW50IChvcikgJTE2eAoAAAAAZXZlbnQgKGFuZCkg
JTE2eAoAAABxdWV1ZSAgAFRBU0suR1EAVEFTSy5RdWV1ZSAleAAAAHRpbWVvdXQgIAoAAGV4aXQg
b2YgYSB0YXNrCgB1bmtub3duIHN0YXRlCgAAb3duZWQgbXV0ZXhlczoKAG5vbmUKAAAAdGFza3Mg
dG8gc2VuZCBtc2dzOgoAAAAAZXZlbnRzIHBlbmRpbmc6CgAAAAB0YXNrIHdhaXRpbmcgZm9yIGV4
aXQ6CgBtYWdpYyAgICAgICAgICAgAAAAAG5hbWUgICAgICAgIAAAAABzdGF0ZSAgICAAAABwcmlv
AAAAAFNvcnJ5OiB0YXNrIG5vdCBmb3VuZC4AAFRIUkVBRAAAQCg9KV9fUlRPU19DSElCSU9TX19U
QVNLX1QAAHNlbWFwaG9yZQAAAD45OS4AAAAAd2FpdGluZyB0YXNrcwoAAGNvdW50AAAAd2FpdGlu
ZwBzeW1ib2wgAFBsZWFzZSBzcGVjaWZ5IGEgU2VtYXBob3JlIGFkZHJlc3Mgb3IgdmFyaWFibGUu
AFNFTUFQSE9SRQAAAFNFTQBTRU1hcGhvcmUAAABAKD0pX19SVE9TX0NISUJJT1NfX1RBU0tfU0VN
AAAAAG11dGV4AAAAVEFTSy5NdVRlWSAleAAAAG93bmVyICAgIAAAAFBsZWFzZSBzcGVjaWZ5IGEg
TXV0ZXggYWRkcmVzcyBvciB2YXJpYWJsZS4ATVVURVgAAABNVFgATXVUZVgAAABAKD0pX19SVE9T
X0NISUJJT1NfX1RBU0tfTVRYAAAAAGNvbmR2YXIAJTh4AFBsZWFzZSBzcGVjaWZ5IGEgQ29uZFZh
ciBhZGRyZXNzIG9yIHZhcmlhYmxlLgAAAENPTkRWQVIAQ09ORAAAAABDT05EdmFyAEAoPSlfX1JU
T1NfQ0hJQklPU19fVEFTS19DT05EAAAAbWFpbGJveABUQVNLLk1haWxCb3ggJXgAVEFTSy5NQgBm
ZXRjaDogAHBvc3Q6IAAAYnVmZmVyICAgIHJlYWQgICAgICB3cml0ZQoAAERhdGEuZHVtcCAleCAv
ZGlhbG9nAAAAAAoKAABtZXNzYWdlcwoAAAAlOHggIAAAAHdhaXRpbmcgdGFza3MgdG8gZmV0Y2gK
AHdhaXRpbmcgdGFza3MgdG8gcG9zdAoAAHdhaXRpbmcgICAAAFBsZWFzZSBzcGVjaWZ5IGEgTWFp
bGJveCBhZGRyZXNzIG9yIHZhcmlhYmxlLgAAAE1BSUxCT1gATUIAAE1haWxCb3gAQCg9KV9fUlRP
U19DSElCSU9TX19UQVNLX01CAGV2ZW50AAAAVEFTSy5FVmVuVCAleAAAAFRBU0suRVZUAAAAAG1h
c2sgICAgICBsaXN0ZW5lcgoAbGlzdGVuZXJzAAAAUGxlYXNlIHNwZWNpZnkgYSBFdmVudFNvdXJj
ZSBhZGRyZXNzIG9yIHZhcmlhYmxlLgAAAEVWRU5UAAAARVZUAEVWZW5UAAAAQCg9KV9fUlRPU19D
SElCSU9TX19UQVNLX0VWVAAAAABkZWZhdWx0X2hlYXAAAAAAVEFTSy5IZWFwICV4AAAAAFRBU0su
SEVBUAAAAERhdGEuTGlzdCAleAAAAAAgLSAAZnJlZSAgICAgAAAAZnJhZ3MAAABwcm92aWRlciAg
ICAgICAAUGxlYXNlIHNwZWNpZnkgYSBIZWFwIGFkZHJlc3Mgb3IgdmFyaWFibGUuAABIRUFQAAAA
AEgAAABIZWFwAAAAAEAoPSlfX1JUT1NfQ0hJQklPU19fVEFTS19IAABwb29sAAAAAFRBU0suUG9v
bCAleAAAAABUQVNLLlBPT0wAAABvYmogc2l6ZSAAAABudW0gZnJlZQAAAABQbGVhc2Ugc3BlY2lm
eSBhIE1lbW9yeVBvb2wgYWRkcmVzcyBvciB2YXJpYWJsZS4AAAAAUE9PTAAAAABQb29sAAAAAEAo
PSlfX1JUT1NfQ0hJQklPU19fVEFTS19QAABjYWxsYmFjawoAAABieXRlcyBpbiBxdWV1ZQoAaW5w
dXQ6ICAgAAAAJTJ4IAAAAAAuLi4Ab3V0cHV0OiAgAAAAUGxlYXNlIHNwZWNpZnkgYSBRdWV1ZSBh
ZGRyZXNzIG9yIHZhcmlhYmxlLgBRVUVVRQAAAFEAAABRdWV1ZQAAAEAoPSlfX1JUT1NfQ0hJQklP
U19fVEFTS19RAABUQVNLLlZUaW1lciAleAAAVEFTSy5WVAA/Pz8AKAAAAHdha2V1cAAAKQAAAHRp
bWUgICAAZnVuY3Rpb24gAAAAVlRJTUVSAABWVAAAVlRpbWVyAABAKD0pX19SVE9TX0NISUJJT1Nf
X1RBU0tfVlQAJUBjJS0xN3MgAAAAJTE2eCAgAAAlQGNNVEQgVmVyc2lvbiAgJXMgICVzICAlMDJk
LiUwMmQuJTA0ZCAoQnVpbGQgJXMpCgoAY2ggYXBpIHZlcnNpb24gICAgJWQuCgAAbWFnaWMAAABj
aCBzeXN0ZW0AAAByZWdsaXN0AG9mZnNldCBybF9vbGRlciAgICU4eAoAAG9mZnNldCB0aHJfb2xk
ZXIgICU4eAoAAFRocmVhZCBsaXN0IGludmFsaWQgLSBDSF9DRkdfVVNFX1JFR0lTVFJZIG1pc3Np
bmc/CgBvZmZzZXQgcnF1ZXVlICAgICAlOHgKAABURVNUAAAAAGFyZ3VtZW50ICAgICAgICAgIHZh
bHVlICAgICBjb250ZW50ICAgc3ltYm9sAAAAAF9fbWFpbl90aHJlYWRfc3RhY2tfYmFzZV9fAABf
X21haW5fdGhyZWFkX3N0YWNrX2VuZF9fAAAAaGFyZHdhcmV0aHJlYWQAAC0tLSAgVEFTSyAgbWFn
aWMgPSAlMTZ4ACAgbmFtZSA9ICVzICAtLS0AAAAAX19SVE9TX0NISUJJT1NfX0FMAABfX1JUT1Nf
Q0hJQklPU19fQVMAAF9fUlRPU19DSElCSU9TX19BVAAAcGFyYW1ldGVyIDE6IDB4JTh4ID0gJXMA
bWFnaWNzaXplAAAAdW5rbm93biB0b3BpYwAAAFRBU0suQ09ORklHAF9fUlRPU19DSElCSU9TX19G
VU5DAAAAAHRjYgA8bm9uZT4AAG1ib3gAAAAAdGltZXIAAABUQVNLLlNUUlVDVABEQVRBAAB34AAA
cTwAAHFEAAAAAAAAAAEAAAADACgAAAAEAFgAACdMAAAAAwAoAAAABABYAAAkeAAAAAIAAAAAAAB5
nAAAAAAAAHm0AAB9DAAAcWQAAHm8AAAfOAAAeWQAAHl4AAB5iAAAeZQAAAAAAAAAAwAoAAAABACg
AAAw5AAAAAIAAAAAAAB6FAAAAAAAAHpEAAB6UAAAelQAAHpgAAAunAAAeWQAAHn8AAB6BAAAegwA
AAAAAAAAAwAoAAAABADoAAA1HAAAAAIAAAAAAAB6pAAAAAAAAHrQAAB62AAAetwAAHrkAAAysAAA
eWQAAHqYAAB6BAAAegwAAAAAAAAAAwAoAAAABAEwAAA45AAAAAIAAAAAAAB7EAAAAAAAAHtAAAB7
SAAAe1AAAHtYAAA26AAAeWQAAHoEAAB6DAAAAAAAAAADADIAAAAEAXQAAD6UAAAAAgAAAAAAAHww
AAAAAAAAfGAAAHxoAAB8bAAAfHQAADqIAAB5ZAAAfiQAAHn8AAB8JAAAegwAAAAAAAAAAwAoAAAA
BAHAAABGDAAAAAIAAAAAAAB81AAAAAAAAH0IAAB9EAAAfRQAAH0cAABD8AAAeWQAAHzIAAB6DAAA
AAAAAAADAzwAAAAEAgQAAEswAAAAAgAAAAAAAH2gAAAAAAAAfcwAAH3UAAB92AAAfeAAAEg4AAB5
ZAAAfXwAAH2IAAB9kAAAegwAAAAAAAAAAwM8AAAABAJQAABN0AAAAAIAAAAAAAB+OAAAAAAAAH5s
AAB9ZAAAfnQAAH58AABLgAAAeWQAAH4gAAB+LAAAfZAAAHoMAAAAAAAAAAMAMgAAAAQCnAAAUJQA
AAACAAAAAAAAftgAAAAAAAB/BAAAfwwAAH8QAAB/GAAATiAAAHlkAAB+JAAAefwAAHoEAAB6DAAA
AAAAAAADADIAAAAEAtgAAFlcAAB/dAAAf3wAAH+AAAB/iAAAV0AAAHlkAAB/YAAAf2gAAAAAAAAA
AQA8AAAAAICkAABbaAAAgJwAAICcAAB34AAAd+AAAFpUAACBDAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABj8AAAZGQAAIFIAABjyAAAgVwAAGUAAACBcAAAZjgAAIG4AAAAAwAAABcAAAAAAACBxAAAZ/gA
AIH4AAAABwAAABcAAAAAAACBxAAAaUwAAHFkAAB0PAAAAAAAAHHoAAB0UAAAAAAAAHIIAAB0ZAAA
AAAAAHIwAAB0dAAAAAAAAHKYAAB0gAAAAAAAAHKsAAB0nAAAAAAAAHL8AAB01AAAAAAAAHMoAAB0
/AAAAAAAAHNgAAB1DAAAAAAAAHPAAAB1HAAAAABUMzJF
)
HELP.FILTER.Add rtoschibios
RETURN
)
menu_64bit: ;(header, infix)
(
PMACRO.LOCK
(
PRIVATE &sHeader &sInfix &sMenuName
PARAMETERS &sHeader &sInfix
&sMenuName=TASK.TRANSPOSE.INFIX("&sHeader")
IF MENU.EXIST("TASK.&(sMenuName)")
MENU.Delete.NAME TASK.&(sMenuName)
IF MENU.EXIST("EXT.&(sMenuName)")
MENU.Delete.NAME EXT.&(sMenuName)
MENU.ReProgram
(&+
; --------------------------------------------------------------------------------
; @Title: ChibiOS/RT specific menu
; @Description: -
; @Author: DIE
; @Copyright: (c) 1989-2021 Lauterbach GmbH, licensed for use with TRACE32(R) only
; --------------------------------------------------------------------------------
; $Id: chibios.m 7855 2022-07-28 12:13:39Z amerkle $
NAME "TASK.&(sMenuName)"
IF !MENU.EXIST("TASK.&(sMenuName)")
(
add
menu
(
POPUP "&(sHeader)"
(
default
menuitem "Display &Threads" "TASK.&(sInfix)Thread"
menuitem "Display &Semaphore" "do ~~/demo/arm/kernel/chibios/objdialog Semaphore SEMaphore"
menuitem "Display &Mutex" "do ~~/demo/arm/kernel/chibios/objdialog Mutex MuTeX"
menuitem "Display &CondVar" "do ~~/demo/arm/kernel/chibios/objdialog CondVar CONDvar"
menuitem "Display &Mailbox" "do ~~/demo/arm/kernel/chibios/objdialog Mailbox MailBox"
menuitem "Display &Event" "do ~~/demo/arm/kernel/chibios/objdialog Event EVenT"
menuitem "Display &Heap" "do ~~/demo/arm/kernel/chibios/objdialog Heap Heap"
menuitem "Display &Pool" "do ~~/demo/arm/kernel/chibios/objdialog Pool Pool"
menuitem "Display &Queue" "do ~~/demo/arm/kernel/chibios/objdialog Queue Queue"
menuitem "Display Timer" "TASK.&(sInfix)VTimer"
separator
popup "&Stack Coverage"
(
menuitem "&List Stacks" "TASK.&(sInfix)STacK.view"
menuitem "Add Task" "TASK.&(sInfix)STacK.ADD"
menuitem "Remove Task" "TASK.&(sInfix)STacK.RM"
menuitem "Reset Coverage"
(
LOCAL &yes
DIALOG.YESNO "Overwrite unused stack space" "with stack fill pattern?"
ENTRY &yes
IF !&yes
ENDDO
TASK.&(sInfix)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 a.mode.flow()
(
Break.Delete /TraceEnable
Break.Set C:0x1F:::task.&(sInfix)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 C:0x1F:::task.&(sInfix)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 ChibiOS/RT" "HELP __RTOS_CHIBIOS_"
)
)
menu "task.&(sInfix)t"
(
default
menuitem "Display detailed"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)Thread &address
)
menuitem "Display thread struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(tcb)
Var.View %Open %String (&struct)*&address
)
separator
menuitem "Display Stack Frame"
(
PRIVATE &address
&address=address.offset(track.address())
Var.Frame /Locals /Caller /Task &address
)
menuitem "Display Registers"
(
PRIVATE &address
&address=address.offset(track.address())
Register /Task &address
)
menuitem "Switch Context" "Register.TASK address.offset(track.address())"
separator
menuitem "Add to Stack Cov" "TASK.&(sInfix)STK.ADD address.offset(track.address())"
menuitem "Rm from Stack Cov" "TASK.&(sInfix)STK.RM address.offset(track.address())"
separator
menuitem "Dump task entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)sem"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)SEMaphore &address
;)
menuitem "Display semaphore struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(sem)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump semaphore entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)mtx"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)MuTeX &address
;)
menuitem "Display mutex struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(mutex)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump mutex entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)mb"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)MailBox &address
;)
menuitem "Display mailbox struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(mbox)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump mailbox entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)cond"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)CONDvar &address
;)
menuitem "Display cond var struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(condvar)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump cond var entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)evt"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)EVenT &address
;)
menuitem "Display event struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(event)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump event entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)heap"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)EVenT &address
;)
menuitem "Display heap struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(heap)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump heap entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)pool"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)Pool &address
;)
menuitem "Display pool struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(pool)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump pool entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)gq"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)MailBox &address
;)
menuitem "Display queue struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(queue)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump queue entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "task.&(sInfix)vt"
(
default
;menuitem "Display detailed"
;(
; &address=address.offset(track.address())
; TASK.&(sInfix)MailBox &address
;)
menuitem "Display timer struct"
(
PRIVATE &address &struct
&address=address.offset(track.address())
&struct=task.&(sInfix)struct(timer)
Var.View %Open %String (&struct)*&address
)
menuitem "Dump timer entry"
(
PRIVATE &address
&address=address.offset(track.address())
Data.dump &address /dialog
)
)
menu "var"
(
popup "ChibiOS"
(
menuitem "Display as Semaphore"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)SEMaphore &address
)
menuitem "Display as Mutex"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)MuTeX &address
)
menuitem "Display as CondVar"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)CONDvar &address
)
menuitem "Display as Mailbox"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)MailBox &address
)
menuitem "Display as Event"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)EVenT &address
)
menuitem "Display as Heap"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)Heap &address
)
menuitem "Display as Pool"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)Pool &address
)
menuitem "Display as Queue"
(
PRIVATE &address
&address=address.offset(track.address())
TASK.&(sInfix)Queue &address
)
)
)
)
)
)
PMACRO.UNLOCK
RETURN
)
autoload_64bit: ;(options)
(
PARAMETERS &sOptions
RETURN
)
menu_delete: ;(header)
(
PRIVATE &sHeader &sMenuName
PARAMETERS &sHeader
&sMenuName=TASK.TRANSPOSE.INFIX("&sHeader")
IF MENU.EXIST("TASK.&(sMenuName)")
MENU.Delete.NAME TASK.&(sMenuName)
IF MENU.EXIST("EXT.&(sMenuName)")
MENU.Delete.NAME EXT.&(sMenuName)
RETURN
)
autoload_delete: ;(options)
(
PARAMETERS &sOptionMachine
RETURN
)