;@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." "LiteOS" 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="LiteOS" 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.) ( PRINTF %ERROR "%s: No support for %ubit, please contact support@lauterbach.com." "LiteOS" &nVariant ) ) ELSE IF (&bExtLoad) ( PRIVATE &sMachineName &sInfix &sOptionName &sOptionMachine &sInfix="" &sMachineName="LiteOS" 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.) ( PRINTF %ERROR "%s: No support for %ubit, please contact support@lauterbach.com." "LiteOS" &nVariant ) ) ELSE IF (&bCleanup) ( PRIVATE &sMachineName &sOptionMachine &sMachineName="LiteOS" IF ("&sName"!="") ( &sMachineName="&(sName)" ) IF ("&sMachine"!="") ( &sOptionMachine="/MACHINE &sMachine" ) IF STRing.SCAN(HELP.FILTER(),"rtosliteos",0.)>=0. HELP.FILTER.Delete rtosliteos GOSUB menu_delete "&sMachineName" GOSUB autoload_delete "&sOptionMachine" ) ENDDO extension_32bit: ; (options) ( PARAMETERS &sParameters &sOptions EXTension.LOAD &sParameters &sOptions ( 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 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGh0dHBz Oi8vc3ZuLmludGVybi5sYXV0ZXJiYWNoLmNvbS9zdm4va2VybmVsc3JjAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAYmF1bWVpc3RlcgAAAAAAAGVkay1saW51eDY0Yml0LTcAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHQ0MgOS41LjAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+gAAAAGAAAA DQAAAE4AACfSAAAH6AAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAABPOFMaXRlT1MAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAg AAAAQ1BVLkZFQVRVUkUoInNlY3VyZSIpAAAAQ1BVLkZFQVRVUkUoImZwdSIpAABnX3N0TG9zVGFz awBnX2xvc1Rhc2sAAABnX3BzdFRhc2tDQkFycmF5AAAAAGdfdGFza0NCQXJyYXkAAABnX3V3VHNr TWF4TnVtAAAAZ190YXNrTWF4TnVtAAAAAGdfcHN0QWxsTXV4AGdfYWxsTXV4AAAAAGdfcHN0QWxs U2VtAGdfYWxsU2VtAAAAAGdfcHN0QWxsUXVldWUAAABnX2FsbFF1ZXVlAABtX3BzdFN3dG1yQ0JB cnJheQAAAGdfc3d0bXJDQkFycmF5AABMT1NfVEFTS19DQgAucFN0YWNrUG9pbnRlcgAALnVzVGFz a1N0YXR1cwAAAC51c1ByaW9yaXR5AC51d1N0YWNrU2l6ZQAAAAAudXdUb3BPZlN0YWNrAAAALnV3 VGFza0lEAAAALnBmblRhc2tFbnRyeQAAAC5wY1Rhc2tOYW1lAC5zdFBlbmRMaXN0AExvc1Rhc2tD QgAAAC5zdGFja1BvaW50ZXIAAAAudGFza1N0YXR1cwAucHJpb3JpdHkAAAAuc3RhY2tTaXplAAAu dG9wT2ZTdGFjawAudGFza0lEAC50YXNrRW50cnkAAC50YXNrTmFtZQAAAC5wZW5kTGlzdAAAAC5q b2luTGlzdAAAAE1VWF9DQl9TAAAAAC51Y011eFN0YXQAAC51Y011eElEAAAAAC5wc3RPd25lcgAA AExvc011eENCAAAAAC5tdXhTdGF0AAAAAC5tdXhJRAAALm93bmVyAABTRU1fQ0JfUwAAAAAudXNT ZW1TdGF0AAAudXNTZW1JRAAAAAAuc3RTZW1MaXN0AABMb3NTZW1DQgAAAAAuc2VtU3RhdAAAAAAu c2VtSUQAAC5zZW1MaXN0AAAAAFFVRVVFX0NCX1MAAC5wdWNRdWV1ZQAAAC51c1F1ZXVlU3RhdGUA AAAudXNRdWV1ZUxlbgAudXNRdWV1ZVNpemUAAAAALnVzV3JpdGFibGVDbnQAAC51c1JlYWRXcml0 ZWFibGVDbnQALnVzUmVhZGFibGVDbnQAAExvc1F1ZXVlQ0IAAC5xdWV1ZQAALnF1ZXVlU3RhdGUA LnF1ZXVlTGVuAAAALnF1ZXVlU2l6ZQAALnJlYWRXcml0ZWFibGVDbnQAAABTV1RNUl9DVFJMX1MA AAAALnBzdE5leHQAAAAALnVjU3RhdGUAAAAALnVjTW9kZQAudXNUaW1lcklEAAAudXdDb3VudAAA AAAucGZuSGFuZGxlcgBMT1NfRExfTElTVABDYW5ub3QgZmluZCBzeW1ib2xzICEhISBMaXRlT1Mg c3ltYm9scyBsb2FkZWQ/AABEZWJ1ZyBpbmZvcm1hdGlvbiBtaXNzaW5nICEhIQAAAHRhc2sAAAAA VEFTSy5UYXNrICV4AAAAAFRBU0suVAAAJTh4ACVkLgBydW5uaW5nAHJlYWR5AAAAZXhpdAAAAABz dXNwZW5kAGRlbGF5ZWQAcGVuZF90aW1lAAAAcGVuZAAAAAB0aW1lb3V0AHVudXNlZAAAJXgAAHBl bmRfc2VtYQAAAHBlbmRfbXV0ZXgAAHBlbmRfcXVldWUAAHN3dGltZXJfd19ldnQAAAByZWFkX2V2 ZW50AAB3YWl0X2V2ZW50AAB3X2V2dF90aW1lb3V0AAAAZGVsZXRlZAAlM2QuAAAAAExpc3QgJWEA CgAAAG1hZ2ljICAgIAAAAGlkAABuYW1lICAgICAgICAgICAgIAAAAHN0YXRlICAgICAgAHByaW8A AAAAZW50cnkgICAAAAAAU29ycnk6IHRhc2sgbm90IGZvdW5kLgAAVEFTSwAAAABUYXNrAAAAAEAo PSlfX1JUT1NfTElURU9TX19UQVNLX1QAAABtdXRleAAAAERhdGEuZHVtcCAleAAAAABUQVNLLk0A AHVzZWQAAAAAJWQAACVzAABzdGF0ZSAAAG93bmVyICAgIAAAAE1VVEVYAAAATVV0ZVgAAABAKD0p X19SVE9TX0xJVEVPU19fVEFTS19NVVgAVEFTSy5TRU1BcGhvcmUgJXgAAABUQVNLLlNFTQAAAAA+ OTkuAAAAAAoKAAB3YWl0aW5nIHRhc2tzOiAAJTh4ICAgICVzCgAAd2FpdGluZwBTb3JyeTogc2Vt YXBob3JlIG5vdCBmb3VuZC4AU0VNQVBIT1JFAAAAU0VNQQAAAABTRU1BcGhvcmUAAABAKD0pX19S VE9TX0xJVEVPU19fVEFTS19TRU0AVEFTSy5RVUV1ZSAleAAAAFRBU0suUVVFAAAAACU1ZC4AAAAA MHglNHgAAAAlOGQuAAAAACU3ZC4AAAAAbWVzc2FnZXM6IAAAbWVzc2FnZSAlZDogAAAAAGxlbmd0 aAAAc2l6ZSAgAAB3cml0ZV9jbnQAAAByZWFkX2NudAAAAABTb3JyeTogcXVldWUgbm90IGZvdW5k LgBRVUVVRQAAAFFVRXVlAAAAQCg9KV9fUlRPU19MSVRFT1NfX1RBU0tfUVVFAFRBU0suVElNAAAA AGVudW0gZW5Td1RtclR5cGUAAAAATE9TX1NXVE1SX01PREVfAG9uY2UAAAAAcGVyaW9kAABpbnZh bGlkAGNyZWF0ZWQAdGlja2luZwAlNGQuAAAAAERhdGEuTGlzdCAleAAAAABtb2RlICAgIAAAAABz dGF0ZSAgAGNvdW50AAAAaGFuZGxlciAAAAAAVElNRVIAAABUSU1lcgAAAEAoPSlfX1JUT1NfTElU RU9TX19UQVNLX1RJTQAlQGNNVEQgVmVyc2lvbiAgJXMgICVzICAlMDJ1LiUwMnUuJTA0dSAoQnVp bGQgJXMpCgoAcGFyX21hZ2ljICAgICAgICAlOHggICU4eCAgAHBhcl90YXNrX21heF9udW0gJTh4 ICAlOHggIABwYXJfdGFza19hcnJheSAgICU4eCAgJTh4ICAAcGFyX211dGV4ICAgICAgICAlOHgg ICU4eCAgAHBhcl9zZW1hcGhvcmUgICAgJTh4ICAlOHggIABwYXJfcXVldWUgICAgICAgICU4eCAg JTh4ICAAcGFyX3N3dGltZXIgICAgICAlOHggICU4eCAgAFRFU1QAAAAAYXJndW1lbnQgICAgICAg ICB2YWx1ZSAgICAgY29udGVudCAgIHN5bWJvbAAtLS0gIFRBU0sgIG1hZ2ljID0gJTh4AAAgIGlk ID0gJWQuAAAgIG5hbWUgPSAlcwAgIC0tLQAAAF9fUlRPU19MSUVUT1NfX0FMAAAAX19SVE9TX0xJ RVRPU19fQVMAAABGUFVfSVJRSGFuZGxlcgAAU2lnbmFsQ29udGV4dFJlc3RvcmUAAAAAVGFza1N3 aXRjaAAATVNQAFBTUABQQwAAQ09OVFJPTABSMTMAQ09SVEVYTQByMAAAcjEAAHIyAAByMwAAcjQA AHI1AAByNgAAcjcAAHI4AAByOQAAcjEwAHIxMQByMTIAcjEzAHIxNABwYwAAeHBzcgAAAABoYXJk d2FyZXRocmVhZAAA///miP//6CD//+b0///oIP//6CD//+gg///oIP//51z//+gg///oEP//6Khw YXJhbWV0ZXIgMTogMHglOHggPSAlcwBtYWdpYwAAAG1hZ2ljc2l6ZQAAAHVua25vd24gdG9waWMA AABUQVNLLkNPTkZJRwBfX1JUT1NfTElURU9TX19GVU5DAHRjYgA8bm9uZT4AAHNlbWFwaG9yZQAA AHF1ZXVlAAAAVEFTSy5TVFJVQ1QATGl0ZU9TAABBUk0AREFUQQAAAAMAWgAAAAQARAAAENwAAAAC AAAAAAAARxwAAAAAAAAAAwBQAAAABABEAAAR+AAARzQAAEdcAABHPAAAR0QAAAu0AABG2AAARuQA AEboAABG/AAARwgAAEcQAAAAAAAAAAMULQAAAAQAhAAAFAAAAEekAABHzAAAR6wAAEe0AAASSAAA RtgAAEbkAABHkAAAR5gAAAAAAAAAAxQoAAAABADcAAAXLAAAAAIAAAAAAABIIAAAAAAAAAADFCgA AAAEANwAABfwAABIPAAASEgAAEhQAABIXAAAFMQAAEbYAABG5AAAR5AAAEgYAAAAAAAAAAMPNwAA AAQBNAAAG1gAAAACAAAAAAAASPgAAAAAAAAAAw83AAAABAE0AAAcIAAASRAAAEkQAABJGAAASSAA ABkYAABG2AAARuQAAEeQAABI0AAASNgAAEjgAABI7AAAAAAAAAADFEYAAAAEAXgAACAEAABJ1AAA SfwAAEncAABJ5AAAHYgAAEbYAABG5AAASawAAEm4AABJwAAAScgAAAAAAAAAAQA8AAAAAEsAAAAg /AAASvgAAEr4AABJtAAASbQAACDIAAAl2AAAJjQAAEtkAAAlsAAAS3gAACcAAABL4AAAAAAAAAAE AABL5AAAAAAAAAAEAABL6AAAAAAAAAAEAABL7AAAAAAAAAAEAABL8AAAAAAAAAAEAABL9AAAAAAA AAAEAABL+AAAAAAAAAAEAABL/AAAAAAAAAAEAABMAAAAAAAAAAAEAABMBAAAAAAAAAAEAABMCAAA AAAAAAAEAABMDAAAAAAAAAAEAABMEAAAAAAAAAAEAABMFAAAAAAAAAAAAABMGAAAAAAAAAAEAABM HAAAAAAAAAAEAABMIAAAAAAAAAAAAAAAAAAAAAAAAAAAUjE0AFIxAAAAAEwoAAAAAAAAAAAAAAAA AAAAAAAAAAAAAEygAAAAAwAAABcAAAAAAABMrAAAOjwAAEzgAAAABwAAABcAAAAAAABMrAAAOvgA AEm0AABM7AAATPQAAAAAVDMyRQ== ) HELP.FILTER.Add rtosliteos 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: LiteOS specific menu ; @Description: - ; @Author: DIE YDA ; @Copyright: (c) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only ; -------------------------------------------------------------------------------- ; $Id: liteos.m 7846 2022-07-28 12:12:59Z amerkle $ NAME "TASK.&sMenuName" IF !MENU.EXIST("TASK.&sMenuName") ( add menu ( popup "&sHeader" ( default menuitem "[:objects]Display &Tasks" "TASK.&(sInfix)Task" menuitem "[:objects]Display &Mutex" "TASK.&(sInfix)MUteX" menuitem "[:objects]Display &Semaphore" "TASK.&(sInfix)SEMaphore" menuitem "[:objects]Display &Queue" "TASK.&(sInfix)QUEue" menuitem "[:objects]Display &Timer" "TASK.&(sInfix)TIMer" IF PRACTICE.FUNCtion.AVAILable(SYStem.Option.MACHINESPACES) ( IF !SYStem.Option.MACHINESPACES() ( MENUITEM "[ X X X X X,XXXXXXXXXXXX, XxxxxxxxxXs,XXxxxxxxxxXs, XxxxxxxxxXX,XXxxxxxxxxXs, XxxxxxxxxXX,XXxxxxSSSSSSSS, XxxxxSBBwwwwwS,XXxxxxSBBwwwXwBS, XXXXXSBBwwwwwBB, XsXsXSBBBBBBBBB, SBBWWWWWBB, SBBWWWWWBB, SBBWRRRWBB, BBWWWWWBB]Generate RAM Dump" ( PRIVATE &sPath &sPath=OS.FILE.JOINPATH(TASK.&(sInfix)GETDIR(),"ramdump.cmm") IF OS.FILE("&sPath") ( DO "&sPath" /DIALOG ENDDO ) PRINT %ERROR "File ""ramdump.cmm"" not found. Please contact support@lauterbach.com ." ) ) ) ELSE ( MENUITEM "[ X X X X X,XXXXXXXXXXXX, XxxxxxxxxXs,XXxxxxxxxxXs, XxxxxxxxxXX,XXxxxxxxxxXs, XxxxxxxxxXX,XXxxxxSSSSSSSS, XxxxxSBBwwwwwS,XXxxxxSBBwwwXwBS, XXXXXSBBwwwwwBB, XsXsXSBBBBBBBBB, SBBWWWWWBB, SBBWWWWWBB, SBBWRRRWBB, BBWWWWWBB]Generate RAM Dump" ( PRIVATE &sPath &sPath=OS.FILE.JOINPATH(TASK.&(sInfix)GETDIR(),"ramdump.cmm") IF OS.FILE("&sPath") ( DO "&sPath" /DIALOG ENDDO ) PRINT %ERROR "File ""ramdump.cmm"" not found. Please contact support@lauterbach.com ." ) ) separator popup "[:coverage]&Stack Coverage" ( menuitem "[:objects]&List Stacks" "TASK.&(sInfix)STacK.view" menuitem "[:plus]Add Task" "TASK.&(sInfix)STacK.ADD" menuitem "[:exit]Remove Task" "TASK.&(sInfix)STacK.RM" menuitem "Reset Coverage" ( if icd()||simulator() ( PRIVATE &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 "[:alist]&Task Switches" "Trace.List List.TASK" menuitem "[:alist]&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 "&Help" ( MENUITEM "[:manual]OS Awareness Manual LiteOS" "HELP __RTOS_LITEOS_" ) ) menu "task.&(sInfix)t" ( default menuitem "[:var]Display task struct" ( PRIVATE &pAddress &sType &pAddress=TRACK.ADDRESS() &sType=TASK.&(sInfix)STRUCT("tcb") Var.View %Open %String (&(sType)*)(&pAddress) ) separator menuitem "[:varframe]Display Stack Frame" ( PRIVATE &nAddress &nAddress=ADDRESS.OFFSET(TRACK.ADDRESS()) Var.Frame /Locals /Caller /Task &nAddress ) menuitem "[:reg]Display Registers" ( PRIVATE &nAddress &nAddress=ADDRESS.OFFSET(TRACK.ADDRESS()) Register /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.&(sInfix)STacK.ADD &nAddress ) menuitem "Rm from Stack Cov" ( PRIVATE &nAddress &nAddress=ADDRESS.OFFSET(TRACK.ADDRESS()) TASK.&(sInfix)STacK.RM &nAddress ) separator menuitem "[:dump]Dump task entry" ( PRIVATE &pAddress &pAddress=TRACK.ADDRESS() Data.dump &pAddress /Long /DIALOG ) ) menu "task.&(sInfix)m" ( default menuitem "[:var]Display Mutex struct" ( PRIVATE &pAddress &sType &pAddress=TRACK.ADDRESS() &sType=TASK.&(sInfix)STRUCT("mutex") Var.View %Open %String (&(sType)*)(&pAddress) ) menuitem "[:dump]Dump Mutex Entry" ( PRIVATE &pAddress &pAddress=TRACK.ADDRESS() Data.dump &pAddress /Long /DIALOG ) ) menu "task.&(sInfix)sem" ( default menuitem "[:objects]Display Detailed" ( PRIVATE &nAddress &nAddress=ADDRESS.OFFSET(TRACK.ADDRESS()) TASK.&(sInfix)SEMaphore &nAddress ) menuitem "[:var]Display Semaphore struct" ( PRIVATE &pAddress &sType &pAddress=TRACK.ADDRESS() &sType=TASK.&(sInfix)STRUCT("semaphore") Var.View %Open %String (&(sType)*)(&pAddress) ) menuitem "[:dump]Dump Semaphore Entry" ( PRIVATE &pAddress &pAddress=TRACK.ADDRESS() Data.dump &pAddress /Long /DIALOG ) ) menu "task.&(sInfix)que" ( default menuitem "[:objects]Display Detailed" ( PRIVATE &nAddress &nAddress=ADDRESS.OFFSET(TRACK.ADDRESS()) TASK.&(sInfix)Queue &nAddress ) menuitem "[:var]Display Queue struct" ( PRIVATE &pAddress &sType &pAddress=TRACK.ADDRESS() &sType=TASK.&(sInfix)STRUCT("queue") Var.View %Open %String (&(sType)*)(&pAddress) ) menuitem "[:dump]Dump Queue Entry" ( PRIVATE &pAddress &pAddress=TRACK.ADDRESS() Data.dump &pAddress /Long /DIALOG ) ) menu "task.&(sInfix)tim" ( default menuitem "[:var]Display Timer Control struct" ( PRIVATE &pAddress &pAddress=TRACK.ADDRESS() Var.View %Open %String (SWTMR_CTRL_S *)(&pAddress) ) menuitem "[:dump]Dump Timer Entry" ( PRIVATE &pAddress &pAddress=TRACK.ADDRESS() Data.dump &pAddress /Long /DIALOG ) ) ) ) ) PMACRO.UNLOCK RETURN ) autoload_32bit: ;(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 )