;@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." "OSEck" 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="OSEck" 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." "OSEck" &nVariant ) ) ELSE IF (&bExtLoad) ( PRIVATE &sMachineName &sInfix &sOptionName &sOptionMachine &sInfix="" &sMachineName="OSEck" 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." "OSEck" &nVariant ) ) ELSE IF (&bCleanup) ( PRIVATE &sMachineName &sOptionMachine &sMachineName="OSEck" IF ("&sName"!="") ( &sMachineName="&(sName)" ) IF ("&sMachine"!="") ( &sOptionMachine="/MACHINE &sMachine" ) IF STRing.SCAN(HELP.FILTER(),"rtososeck",0.)>=0. HELP.FILTER.Delete rtososeck GOSUB menu_delete "&sMachineName" GOSUB autoload_delete "&sOptionMachine" ) ENDDO extension_32bit: ; (options) ( PARAMETERS &sParameters &sOptions EXTension.LOAD &sParameters &sOptions ( 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 fIIQCE6AACA4QAcEfIIQCE6AACA4QAcFfIIQCE6AACA4QAcUfIIQCE6AACA4QAgBfIIQCE6AACA4 QAgCfIIQCE6AACA4QAkBfIIQCE6AACA4QAoBfIIQCE6AACA4QAoUfIIQCE6AACA4QAsDfIIQCE6A ACC+AgMEAAAABQBAVkVSU0lPTi1JTkZPQAAxMDE5NAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAJ9IAAAfoAAAABgAAAA0AAAAAAAAAAAAAAABodHRwczovL3N2bi5pbnRlcm4ubGF1dGVyYmFj aC5jb20vc3ZuL2tlcm5lbHNyYy9icmFuY2hlcy9uaWdodGx5AAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGh0dHBzOi8vc3ZuLmlu dGVybi5sYXV0ZXJiYWNoLmNvbS9zdm4va2VybmVsc3JjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA YmF1bWVpc3RlcgAAAAAAAGVkay1saW51eDY0Yml0LTcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHQ0MgOS41LjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+gAAAAGAAAADQAAAE4AACfS AAAH6AAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAABPplPU0VjawAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAVEFTSy5D T05GSUcAX19FTU9TRUNLX0ZVTkMAAF9fRU1PU0VDS19fQUwAAABfX0VNT1NFQ0tfX0FTAAAAX19F TU9TRUNLX19BVAAAAG9kb19zeXMATm8gUHJvY2Vzc2VzIGZvdW5kLiBDaGVjayBDb25maWd1cmF0 aW9uLgAAAABBbHBoYSBCcmVha3BvaW50cyBzZXQgb24gJWQgcHJvY2VzcyBzdGF0ZXMAAHBhcmFt ZXRlciAxOiAweCU4eCA9ICVzAG1hZ2ljAAAAbWFnaWNzaXplAAAAdW5rbm93biB0b3BpYwAAAG9k b19kZWJ1Z19pbmZvAABvZG9fY29uZmlnAABzdHJ1Y3QgaV9jb25maWcALmVycm9yX2hhbmRsZXIA AC5tYXhfdmFsaWRfaWR4AAAubnJfcHJvY2Vzc2VzAAAALm1heF9wb29saWQALmxpbmtfaGFuZGxl cgAAAG9kb19wY2JfbGlzdAAAAABvZG9fcG9vbF9saXN0AAAAb2RvX21heF92YWxpZF9waWQAAABw Y2JfdAAAAHN0cnVjdCBwY2IAAC5uYW1lAAAALnR5cGUAAAAuc3RhdGUAAC5wcmlvAAAALmVudHJ5 AAAuZnNlbV92YWx1ZQBwb29sX3QAAHN0cnVjdCBwb29sAC5mcmVlAAAALnNpemVzAAAucHRyAAAA AC5lbmQAAAAALnN0YXJ0AABzdHJ1Y3QgcG9vbF9zdGFja19zAHNpZ2J1Zl90AAAAAHN0cnVjdCBz aWdidWYAAAAuc2VuZGVyAC51c2VyAAAAc2lnc2VsZWN0X3QAU0lHU0VMRUNUAAAAc3RydWN0IHBv b2xfc3RhY2sAAABUYXNrTGlzdDogbWFnaWM9JTh4AFRhc2tMaXN0OiBjb3VudD0lZAAALS0tIFBS T0NFU1MgPSAAACAoJTh4KQAAb3NlX3ZlcnNpb24AU29ycnk6IENvdWxkbid0IGdldCBzeW1ib2wg YWRkcmVzc2VzAAAAAAAAOBwAAAADAAAAFwAAAAAAADgoAAAB4AAAODgAAA4AAAA4SAAADiwAADhY AAAOgHllcwBubwAAb3MgcmVsZWFzZQoAICB0YXJnZXQgICAgICAgICA6ICAAAAAAT1NFY2sgJXMK AAAAICBvcyB2ZXJzaW9uICAgICA6ICAAAAAAJXMKACAgaWQgc3RyaW5nICAgICAgOiAgAAAAACAg YnVmZmVyIGNrZWNrICAgOiAgAAAAACAgcGFyYW1ldGVyIGNrZWNrOiAgAAAAACAgc3RhY2sgY2tl Y2sgICAgOiAgAAAAACAgZGVidWcgaG9va3MgICAgOiAgAAAAACVzCgoAAAAAaWQgc3RyaW5nIG5v dCBmb3VuZAoAAAAAc3RhdGljIG9zIGluZm9ybWF0aW9uCgAAICBtYXggbnVtYmVyIG9mIHByb2Nz IDogIAAAACVkCgBtYXggcGlkIG5vdCBmb3VuZAoAACAgbm8uIG9mIHN0YXRpYyBwcm9jcyA6ICAA AAAgIG1heCBudW1iZXIgb2YgcG9vbHMgOiAgAAAAICBsaW5rIGhhbmRsZXIgcGlkICAgIDogIAAA AG5vbmUgY29uZmlndXJlZAoAAAAAICBlcnJvciBoYW5kbGVyICAgICAgIDogIAAAAEQuTCAleAAA cnVubmluZyBvcyBpbmZvcm1hdGlvbgoAICBjdXJyZW50IHByb2Nlc3MgcGlkIDogIAAAACAgc3lz dGVtIHRpY2sgY291bnRlciA6ICAAAAAgIG9zIG5vdCBpbml0aWF0ZWQKCgAAAAAgIGxhc3QgZXJy b3IgbWVzc2FnZSAoYm9ndXMgaWYgbm8gZXJyb3IpCgAAAGVycl9tc2cAICAgIGVycl9tc2cucGlk ICAgICAgICAgOiAgACAgICBlcnJfbXNnLnVzZWRfY2FsbGVkIDogIAAgICAgZXJyX21zZy5lcnJv cl9jb2RlICA6ICAAMHglOHgKAAAgICAgZXJyX21zZy5leHRyYSAgICAgICA6ICAAICAgIGVycm9y IG1lc3NhZ2Ugbm90IGZvdW5kCgAAAABTWVNJTkZPAFNJAABTeXNJbmZvAEAoPSlfX1JUT1NfT1NF Q0tfX1RBU0tfU0kAAABzeXN0ZW0gaW5mb3JtYXRpb24AADxwcm9jZXNzPgAAAFNvcnJ5LCBQcm9j ZXNzICclcycgbm90IGZvdW5kLgAAVEFTSy5Qcm9jZXNzICV4AFRBU0suUAAAJTR4AElOVABUSQAA UFJJTwAAAABCRwAASURMRQAAAAAoJWQpAAAAAHJ1bm5pbmcALS0tAHJlYWR5AAAAcmVjZWl2ZSAA AAAAZGVsYXkgICAAAAAAc2VtYSAgICAAAAAAZnNlbWEgICAAAAAAcmVtb3RlICAAAAAAc3RvcHBl ZCAAAAAAdW5rbm93biAAAAAAJTNkLgAAAAA+OTkuIAAAACUzZC4gAAAAIAoAAHN0a3N0YXJ0ICBz dGtzaXplICAgc3RrbSAgZmFzdF9zZW0KACU4eCAgJTh4ICAAACAtLS0gICAgICAtLS0gICAgICAg AAAAACUyeCAAAAAAICAgJSUlZHggICAAc2lnbmFsIHF1ZXVlOgoAAG1hZ2ljICAgICBzaWdubyAg c2l6ZSAgIHNlbmRlciAgICAgICAgICAgY29udGVudCAgICAgICAgICAgICAgICAgICAgICBhc2Np aQoAAAAAbm9uZQoAAABEYXRhLmR1bXAgJXgAAAAAJTR4ICAgAAAlNHggICAgICAgICAgAAAALS0g ICAgICAgICAgICAgICAAAAAuLi4gIAAAAG1hZ2ljICAgIAAAAG5hbWUgICAgICAgICAgAAAgcGlk IAAAAHR5cGUgAAAAc3RhdHVzIABwcmlvAAAAAGluX3EAAAAAZW50cnkAAABEUFJPQwAAAERQAABQ Uk9DRVNTAFAAAABQcm9jZXNzAEAoPSlfX1JUT1NfT1NFQ0tfX1RBU0tfUAAAAAD//9uk///azP// 22T//9uk///bdP//26T//9uk///bpP//24T//9uk///bpP//26T//9uk///bpP//26T//9uk///b lDxwb29sPgAAVEFTSy5Qb29MICV4AAAAAERhdGEuZHVtcCAleCAvRElBTE9HIAAAAERwbERpc3Bs YXlBbGw6IHBsY2JwdHIgPSAlOHgAAAAAZnJlZSBsaXN0IGluZm9ybWF0aW9uOgoAaW5kZXggIGJ1 ZmZlciBzaXplICBudW0gb2YgZnJlZSBzaWduYWxzCgAAAAAgICUxZC4gICAAAAAlNHggICAgICAg ICAAAAAAPjk5LgAAAABidWZmZXIgaW5mb3JtYXRpb246CgAAAABzaWduYWxzICAAAABwY2IgIAAA AHN0YWNrcyAgAAAAAGVtcHR5ICAAb3RoZXIgIABhZGRyZXNzICAgdHlwZSAgICBzaXplIGluZGV4 ICBidWZmZXIgc2l6ZSAgb3duZXIKAAAAICAlZCAgICAgICAgIAAAACU0eCAKAAAAICBwY2IgICAg ICAgICAgICAgICAgIAAAICBzdGFjayAgIAAAICAoZmVlZikgICAgICAgICAgICAgIAAAMDAzOAoA AAAgIHNpZ25hbCAgAAAgIGJ1ZmZlciAgAAAgIGVtcHR5ICAgAABpZCAgAAAAAHN0YXJ0ICAgIAAA AGVuZCAgICAgIAAAAHNpemUgICAgIAAAAGZyZWUgICAgIAAAAHVzZWQgICAgIAAAAERQT09MAAAA RFBMAFBPT0wAAAAAUEwAAFBvb0wAAAAAQCg9KV9fUlRPU19PU0VDS19fVEFTS19QTAAAAEFSTQBN VEQgT1NFY2sgVmVyc2lvbiAgJXMgVmVyc2lvbiAlMmQuJTJkLiU0ZCAoQnVpbGQgJXMpCgoAAG1h Z2ljICAgICAgICAlOHggICU4eCAgAGRlYnVnIGluZm8gICAlOHggICAgICAgICAgICAAAAAAY29u ZmlnICAgICAgICU4eCAgICAgICAgICAgIAAAAAAKc3lzdGVtICAgICAgICU4eCAgICAgICAgICAg IAAAAApwY2IgbGlzdCAgICAgJTh4ICAlOHggIAAAAAAKcG9vbCBsaXN0ICAgICU4eCAgICAgICAg ICAgIAAAACMgcHJvY2Vzc2VzICAlZCAgIAoAbWF4IHBpZCAgICAgICU4eCAgAAAgJTVkICAgICAg AABvc2UgaWQgICAgICAgJTh4ICAlOHggIAAlcwAAb3NlIGlkICAgICAgICU4eAAAAABkYmcgdmVy c2lvbiAgJTh4ICAAAGRiZyB2ZXJzaW9uICAlOHgKAAAAb3MgaW5mbyAAAAAACiAgIHByb2Nlc3Nv ciAgICAlcwAKICAgcmVsZWFzZSAgICAgICVzAAogICBidWZmICBjaGVjayAgJXMACiAgIHBhcmFt IGNoZWNrICAlcwAKICAgc3RhY2sgY2hlY2sgICVzAAogICBkZWJ1ZyBob29rcyAgJXMACiAgIGNv bmZpZyBzdHJ1Y3QgdmVyc2lvbiAgJWMAAAAKICAga2VybmVsIHN0cnVjdCB2ZXJzaW9uICAlYwAA AFRFU1QAAAAAcGFyYW1ldGVyICAgIHZhbHVlICAgICBjb250ZW50ICAgc3ltYm9sAFRhc2tTdGFj azogbWFnaWM9JTh4AAAAAE9TRWNrAERBVEEAAAACAAAAAAAAAAAAAADEAAAAAgAAAAAAADrsAAAA AAAAApgAAA8sAAAAARkyAAAAAD5sAAATQAAAAAIAAAAAAAA67AAAAAAAAD48AAA+RAAAPkgAAD5Q AAAS8AAAAAMAUAAAAAQAxAAAHnQAAAACAAAAAAAAOuwAAAAAAAAAAgAAAAAAAAAAAAAacAAAAAMA UAAAAAQAxAAAH6QAAEDQAABA2AAAQNwAAEDkAAAZgAAAQMQAAEDMAAA9bAAAPWwAABmAAABAeAAA QIQAAECUAABAnAAAQKQAAECsAABAtAAAQLwAAAAAAAAAAgAAAAAAADrsAAAAAAAAAAMARgAAAAQB QAAAJlQAAAADAEYAAAAEAUAAACdoAABDSAAAQ1AAAENUAABDXAAAJDgAAEM8AABDRAAAPWwAAD1s AAAkOAAAQHgAAEL4AABDAAAAQwwAAEMYAABDJAAAQzAAAAAAAAAAAQA8AAAAAEXAAAAuZAAARbgA AEW4AAA9bAAAPWwAAC4wAAA9bAAARgAAAEN4AAAAAFQzMkU= ) HELP.FILTER.Add rtososeck 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: OSE specific menu ; @Description: - ; @Author: DIE ; @Copyright: (c) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only ; -------------------------------------------------------------------------------- ; $Id: oseck.m 8128 2022-11-07 12:29:52Z amerkle $ NAME "TASK.&sMenuName" IF !MENU.EXIST("TASK.&sMenuName") ( add menu ( POPUP "&sHeader" ( default menuitem "Display &Processes" "TASK.&(sInfix)Process" menuitem "Display &Pools" "TASK.&(sInfix)PooL" menuitem "Display &System" "TASK.&(sInfix)SysInfo" if cpufamily()!="C5000" ( popup "&Stack Coverage" ( menuitem "&List Stacks" "TASK.&(sInfix)STacK" menuitem "Add Task" "TASK.&(sInfix)STacK.ADD" menuitem "Remove Task" "TASK.&(sInfix)STacK.ReMove" enable ice() menuitem "&Reset Coverage" "TASK.&(sInfix)STacK.RESet" ) ) ) 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 (ice()||fire())&&!a.mode.flow() ( Analyzer.ReProgram ( Sample.Enable if AlphaBreak&&Write ) ) Break.Delete /Alpha Break.Set task.&(sInfix)config(magic)++(task.&(sInfix)config(magicsize)-1) /Alpha ) 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 (ice()||fire())&&!a.mode.flow() ( if a.config.hac() ( Analyzer.ReProgram ( Sample.Enable if AlphaBreak Sample.Enable if BetaBreak Mark.A if AlphaBreak Mark.B if BetaBreak ) ) else ( Analyzer.ReProgram ( Sample.Enable if AlphaBreak||BetaBreak Mark.A if AlphaBreak Mark.B if BetaBreak ) ) ) Break.Delete /Alpha /Beta /Charly Break.SetFunc Break.Set task.&(sInfix)config(magic)++(task.&(sInfix)config(magicsize)-1) /Alpha ) 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 ) if (ice()||fire())&&!a.mode.flow() ( Analyzer.ReProgram ( Sample.Enable if AlphaBreak&&Write ) ) Break.Delete /Alpha Break.Set task.&(sInfix)config(magic)++(task.&(sInfix)config(magicsize)-1) /Alpha TASK.&(sInfix)TASKState ) 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 OSEck" "HELP __RTOS_OSECK_" ) ) menu "TASK.&(sInfix)P" ( default menuitem "Display Detailed" ( PRIVATE &nAddr &nAddr=address.offset(track.address()) TASK.&(sInfix)Process &nAddr ) separator menuitem "Add to Stack Cov" ( PRIVATE &nAddr &nAddr=address.offset(track.address()) TASK.&(sInfix)STacK.ADD &nAddr ) menuitem "Rm from Stack Cov" ( PRIVATE &nAddr &nAddr=address.offset(track.address()) TASK.&(sInfix)STacK.RM &nAddr ) separator menuitem "Dump PCB" ( PRIVATE &pAddr &pAddr=track.address() Data.dump &pAddr /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 )