;@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." "NuttX" 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="NuttX" 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="NuttX" 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="NuttX" IF ("&sName"!="") ( &sMachineName="&(sName)" ) IF ("&sMachine"!="") ( &sOptionMachine="/MACHINE &sMachine" ) GOSUB menu_delete "&sMachineName" GOSUB autoload_delete "&sOptionMachine" ) ENDDO extension_32bit: ; (options) ( PARAMETERS &sParameters &sOptions EXTension.LOAD &sParameters &sOptions ( VDMyTQAwMDMuMDAxQCgjKVRSQUNFMzIgY29uZmlndXJhdGlvbiBmaWxlIFYwMDMuMDAxIDogYXJt L251dHR4AAAAAAAAAAAAdGwAADDAZGwAAAOIZGEABAAAZXAAAAAkaHMABAk0AABURVhUAAECAwAA KAQAACqkAAAAAAAAAAAAAAAAAAAAAAAAAABOgAAglCH/8HwIAqaQAQAUPGAAADhjC6hIACX9PGAA ADhjDFRIACW1PGAAADhjC+RIACW1PGAAADhjDJBIACW1SAAFQUgACFlIAAsVPGAAADhjDdBIACWp PGAAADhjFvxIACWpSAAP5UgAEMlIABfVPGAABDhjA3hIACdJOIAACDxgAAQ4YwOISAAnLTyAAAA4 hCqoOGAAAEgAJuksAwABQYIAFIABABR8CAOmOCEAEE6AACA8YAAEOGMDiDhjABBIACbNS///4D0g AASBKQWwOSn//zlA//18CVBAQYEADDhgAABOgAAglCH/4HwIAqaQAQAkk6EAFJPBABiT4QAcPSAA BDlAAAGRSQW0PGAAADhjKrxIACUNPSAABJBpBbg4Y///OSD//XwDSEBAgQKIPGAAADhjKuBIACTp PSAABJBpBbA8YAAAOGMq7EgAJNU9IAAEkGkFrDhj//85IP/9fANIQEGBAmw8YAAAOGMq+EgAJMk9 IAAEkGkF+D0gAASAaQWsSAAlGT0gAASQaQWoPGAAADhjKyhIACSJPSAABJBpBaQ8YAAAOGMrNEgA JHU9IAAEkGkFoD/AAAA73itEf8PzeEgAJHU9IAAEkGkFxDxgAAA4Yyr4SAAkeTxgAAA4YytYSAAk YT0gAASQaQYIPGAAADhjK2BIACRNPSAABJBpBcg8YAAAOGMraEgAJDk9IAAEkGkF0DxgAAA4Yyt4 SAAkJT0gAASQaQXkPGAAADhjK4RIACQRPSAABJBpBcw8YAAAOGMrlEgAI/09IAAEkGkF1DxgAAA4 YyukSAAj6T0gAASQaQX8PGAAADhjK7hIACPVPSAABJBpBeg/4AAAO/8ryH/j+3hIACO9PSAABJBp BeA/oAAAO70r0H+j63hIACOlPSAABJBpBfR/o+t4SAAjiT0gAASQaQXwf8PzeEgAI5F/4/t4SAAj fT0gAASQaQXYPGAAADhjK9xIACNpPSAABJBpBdw8YAAAOGMr6EgAI1U9IAAEkGkGADxgAAA4Yyv0 SAAjQT0gAASQaQXAPGAAADhjK/xIACMJPSAABJBpBZg4Y///OSD//XwDSEBAgQD4PGAAADhjLCxI ACLlPSAABJBpBZw9IAAEgSkFsDkp//85QP/9fAlQQEGBACQ9IAAEgSkFqCwJAABAgQAUPSAABIEp BcgsCQAAQIAAGDxgAAA4Yyw8SAAj4ThgAABIACPlOGAAAIABACR8CAOmg6EAFIPBABiD4QAcOCEA IE6AACA8YAAAOGMqzEgAInFUY+j+PSAABJBpBbRL//1kPGAAADhjKwhIACJhPSAABJBpBfgsA/// QYIAKDxgAAA4YyrgSAAiOT0gAASBKQX4fGNL1j0gAASQaQWoS//9hDxgAAA4YysUSAAiIT0gAASQ aQX4S///yDxgAAA4YywISAAiFT0gAASQaQXsPGAAADhjLBRIACIBPSAABJBpBgw8YAAAOGMsIEgA Ie09IAAEkGkGEEv//tCUIf/wfAgCppABABRL//xVOGAAAUgAIlE9IAAEgSkFtHwJGABBgQAYPSAA BIkpA5k4YAAALAkAAEGCADw9IAAEgUkFuDkq//85AP/9fAlAQEGBAFBUYxg4fGNSFD0gAASQaQW8 gAEAFHwIA6Y4IQAQToAAIDxgAAQ4YwOIOSAAAZ0jABE4gAABSAAi3TxgAAA4YyxgSAAibThgAABL //+gPGAAADhjLJhIACERPSAABJBpBbxL//+wPGAAADhjBUxOgAAglCH/8HwIAqaQAQAUS//7kT0g AASBKQXgOSkAASgJAAFAgQAgPGAABDhjAAA4YwAYgAEAFHwIA6Y4IQAQToAAID0gAAQ5KQAAOUAA AJFJABBL///UlCH/8HwIAqaQAQAUPGAABDhjAAA4YwAoSAAgEYABABR8CAOmOCEAEE6AACCUIf/Q fAgCppABADSTwQAok+EALHx/G3h8AyAAQYIBQH/k+3g8YAAAOGMsqEgAIVU8YAAAOGMsuEgAIVV/ 5Pt4PGAAADhjLMBIACDlSAAhHT0gAASAaQXIfH8aFEgAIJV8ZBt4PGAAADhjLMRIACDBSAAg+T0g AASAaQXkfH8aFEgAIFl8fht4fGYbeDygAAA4pSzIOIAAIDhhAAhIACAVLAMAAECBAMQ4oAAHPIAA ADiELNQ4YQAISAAezTvBAAgsAwAAQIIACDvBAA84oAAFPIAAADiELNx/w/N4SAAeqSwDAABAggAI O94ABX/D83hIAB7Rf8PzeEgAIDVIACBtPSAABIBpBdB8fxoUSAAfzXxkG3g8YAAAOGMs7EgAIBFI ACBJPSAABIBpBeA5IwABKAkAAUGBAEg8YAAAOGMs9EgAH+2AAQA0fAgDpoPBACiD4QAsOCEAME6A ACA4YAACSAAf/Uv//rx/xPN4PGAAADhjLORIAB+5S///hDiAACB8Y/oUSAAfwUv//7CUIf/QfAgC ppABADSTQQAYk4EAIJPBAChL//0ZPSAABIBpBbxIAB9BfHobeD0gAASBKQWsOSn//zlA//18CVBA QIEAGD0gAASDyQWwPSAABIOJBfhIAAAwPSAABIBpBbBIAB8FfH4beD0gAASBKQWsOSn//zlA//18 CVBAQYH/0DuAAAQ9IAAEgSkFqCwJAABAgQCEkyEAFJNhAByToQAkk+EALDugAAA/IAAAOzks9D9g AARIAAAgfyPLeEgAHuU7vQABf97iFIE7Bah8CegAQIEANH/D83hIAB6NfH8beUGC/+A4YAABSAAe 3SwDAABBgv/If0TTeH/j+3hL//15S///wIMhABSDYQAcg6EAJIPhACyAAQA0fAgDpoNBABiDgQAg g8EAKDghADBOgAAgPGAAADhjCJROgAAglCH/8HwIAqaQAQAUS//76TxgAAQ4YwA8gAEAFHwIA6Y4 IQAQToAAIJQh//B8CAKmkAEAFDxgAAQ4YwA8OGMAEEgAHPWAAQAUfAgDpjghABBOgAAglCH/8HwI AqaQAQAUk8EACJPhAAx8fxt4P8AAADveLMB8ZBt4f8PzeEgAHelIAB4hPSAABIBpBdh8fxoUSAAd mTiAACBIAB3lSAAeBT0gAASAaQXcfH8aFEgAHX18ZBt4PGAAADhjLOxIAB2pSAAd4T0gAASAaQYA fH8aFEgAHVl8ZBt4f8PzeEgAHYlIAB3BPSAABIBpBcB8fxoUSAAdOXx/G3h8ZBt4PGAAADhjLVhI AB21f+T7eH/D83hIAB1VSAAdjTiAACBX4wA8SAAdUTxgAAA4Yyz0SAAdOYABABR8CAOmg8EACIPh AAw4IQAQToAAIJQh/+B8CAKmkAEAJD0gAASAaQWgSAAczSwDAAFAgQCUk0EACJNhAAyTgQAQk6EA FJPBABiT4QAcO6P//zvAAAA/YAAEP4AABD9AAAA7Wiz0SAAAGH9D03hIABzFO94AAXwd8ABBggA0 gTsFxH0+SdaD/AWkf+n6FUGC/+Q4YAABSAAcwSwDAABBgv/Mf+P7eEv//n1L///Ig0EACINhAAyD gQAQg6EAFIPBABiD4QAcgAEAJHwIA6Y4IQAgToAAIDxgAAA4YwqoToAAIJQh//B8CAKmkAEAFEv/ +dU8YAAEOGMAeIABABR8CAOmOCEAEE6AACCUIf/wfAgCppABABSTwQAIk+EADD0gAAA5KSgcPUAA BDlKA3iBCQAkgOkAKIDJACyAqgAIgIoABDxgAAA4Yy3sSAAb6T/gAASD3wW8f8PzeEgAG518ZRt4 f8TzeDxgAAA4Yy4gSAAbxTiAACCAfwW8SAAbxT0gAASAiQXwPGAAADhjLjxIABulPGAAADhjLPRI ABuZgAEAFHwIA6aDwQAIg+EADDghABBOgAAglCH/8HwIAqaQAQAUPGAABDhjAHg4YwAQSAAaNYAB ABR8CAOmOCEAEE6AACCUIf/wfAgCppABABRL//jVPSAABDhpA5w9QAAEgUoFvJFJA5w5IAAEkSMA BIABABR8CAOmOCEAEE6AACCUIf/wfAgCppABABSTwQAIfH4beEv/+JE9IAAEgIkF4DkkAAE4YAAA KAkAAUCBADCT4QAMP+AABDv/A6w4oAAgfITyFH/j+3hIABqpOSAAAJk/AB9/4/t4g+EADIABABR8 CAOmg8EACDghABBOgAAglCH/8HwIAqaQAQAUk+EADHx/G3hL//ghPSAABIBpBch8fxoUSAAaRYAB ABR8CAOmg+EADDghABBOgAAglCH/4HwIAqaQAQAkk4EAEJOhABST4QAcS//34T0gAASBKQWsOSn/ /zlA//18CVBAQIEAGD0gAASD6QWwPSAABIOJBfhIAAAwPSAABIBpBbBIABndfH8beD0gAASBKQWs OSn//zlA//18CVBAQYH/0DuAAAQ9IAAEgSkFqCwJAABAgQCkk0EACJNhAAyTwQAYO8AAADugAAA/ QAAEO1oDzD9gAARIAAAYO94AAX//4hSBOwWofAnwAECBADB/4/t4SAAZbXxpG3lBgv/gOV0AAVe9 EDp9OukuLAoAYkGBAFB9XVN4S///xINBAAiDYQAMg8EAGDxgAAQ4YwPMV70QOjkgAAB9I+kugAEA JHwIA6aDgQAQg6EAFIPhABw4IQAgToAAIDugAABL///MfV1TeINBAAiDYQAMg8EAGEv//7iUIf/g fAgCppABACST4QAcfH8beEv/9qU9IAAEk+kFXD0gAASAaQXULAMAAECAAHw9IAAEgGkF/CwDAABB gADIk6EAFJPBABh8Y/oUSAAYoXx9G3g9IAAEgGkFzHx/GhRIABiNP8AABDveBVx/vRoUk74ABD0g AASAaQXofH8aFEgAGG2QfgAIPSAABIBpBfR8fxoUSAAYWZB+AAyDoQAUg8EAGEgAAGB8Y/oUSAAY QT0gAASQaQVgLAMAAEGCAGQ9IAAEgGkFzHx/GhRIABghLAMAAECCAGQ9IAAEOSkFXIFJAAQ5Svgo kUkACD0gAASAaQX0fH8aFEgAF/U9IAAEkGkFaDxgAAQ4YwVcgAEAJHwIA6aD4QAcOCEAIE6AACA9 IAAEgGkFnEgAF8U9IAAEkGkFYEv//4yToQAUk8EAGD/AAAQ73gVcg74ABD0gAASAaQXMfH8aFEgA F5U7vQAMfGPoUJB+AAiDoQAUg8EAGEv//3yUIf/wfAgCppABABRL//U5PGAABDhjAJyAAQAUfAgD pjghABBOgAAglCH/8HwIAqaQAQAUOGAAAEgAF+k5IAAALAMAAkGCACA8YAAEkSMFbDhjBWyAAQAU fAgDpjghABBOgAAgOGAAAUgAF7k9IAAEgSkFvH0pGnh9KQA0VSnZfkv//8iUIf/QfAgCppABADST 4QAsOGAABEgAF4l8fxt4fGQbeDxgAAA4Yy6ESAAXCT0gAASAaQXIfH8aFEgAFr18ZBt4PGAAADhj LpxIABbpPSAABIEpBeA5KQABKAkAAUGBACQ8YAAAOGMutEgAFsmAAQA0fAgDpoPhACw4IQAwToAA IH/k+3g4YQAISAAXqTiBAAg8YAAAOGMuqEgAFplL///ElCH/8HwIAqaQAQAUPGAABDhjAJw4YwAI SAAVYYABABR8CAOmOCEAEE6AACCUIf/wfAgCppABABRL//PpPSAABDhpBXQ5QAAEkUkFdD0gAASB KQW8kSMADJEjAAiRIwAEPSAAADkpEOSRIwAQgAEAFHwIA6Y4IQAQToAAIJQh//B8CAKmkAEAFJPh AAw4YAAASAAWbTvgAAAsAwACQYIAHH/j+3iAAQAUfAgDpoPhAAw4IQAQToAAIDhgAAFIABZBPSAA BIEpBbx8A0gAQIL/1DhgAARIABYpfH8beDhgAABIABYpS///vJQh//B8CAKmkAEAFDxgAAQ4YwCs SAAUiYABABR8CAOmOCEAEE6AACCUIfvwfAgCppABBBST4QQMfH8beDxgAAA4Yy7kSAAUrTkj//85 QP/9fAlQQEGBAcg4oQAIOIAAgEgAEt18aRt5QYADBJPBBAhBggBcOOEACDkAAAE5QAAASAAAOCwK AABBggBEgMcAFCwGABBBggCcgMcAJCwGABFBggEkfAlAAECBACQ5SgABOOcAEDkIAAGAxwAELAYA B0GC/8R8CUAAQYH/5D/AAASAngXwPGAAADhjLwxIABVRPSAABIEpBfR9P0oUgV4F8CwKAEhBggEw LAoA1EGCAVwsCgDQQYIBsDxgAAQ4YwWILAoAzEGCAfyDwQQIgAEEFHwIA6aD4QQMOCEEEE6AACA3 ygABQIIApD0gAASBKQX0fT9KFDzgAAQ5BwY0PUAAADlKLviRRwY0OV4AAVVKIDZ9QVIUgUoAFJFI AAQ5QAAAkUgACDxgAAQ4YwY0PUAAADlKLvyRQwAMkSMAEDlAAACRQwAUPQAAADkILwCRAwAYkSMA HJFDACA9IAAAOSkvBJEjACSRQwAokUMALIPBBAhL//9cgMcANCwGAAlAgv7YO8oAA0v//2Q9IAAE gGkF9Hx/GhRIABOJfGkbeDzgAAQ5BwY0PUAAADlKLviRRwY0V8QgNnyBIhSBRAAUkUgABDlAAACR SAAIS///XJPBBAhL//6sPUAABDlKALQ5SgAEOQAAEn0JA6aRKgAAOSkABDlKAAxCAP/0PGAABDhj ALSDwQQIS//+yD1AAAQ5SgC0fShLeDjgAAp86QOmkQoABDkIAAQ5SgAMQgD/9DkpAGw9QAAEOUoA tDlKAHw5AAAIfQkDppEqAAA5KQAEOUoADEIA//Q8YAAEOGMAtIPBBAhL//5sPUAABDlKALR9KEt4 OOAACnzpA6aRCgAEOQgABDlKAAxCAP/0OSkAsD1AAAQ5SgC0OUoAfDkAAAh9CQOmkSoAADkpAAQ5 SgAMQgD/9DxgAAQ4YwC0g8EECEv//hA9QAAEOUoAtH0oS3g44AAKfOkDppEKAAQ5CAAEOUoADEIA //Q5KQCsPUAABDlKALQ5SgB8OQAACH0JA6aRKgAAOSkABDlKAAxCAP/0PGAABDhjALSDwQQIS//9 tDxgAAQ4YwWIS//9qJQh//B8CAKmkAEAFD0gAASBKQX0fGNKFEgAEd09IAAEOSkAtDkpAOg5QAAR fUkDppBpAAA4YwAEOSkADEIA//Q8YAAEOGMAtDhjAOSAAQAUfAgDpjghABBOgAAglCH/4D0gAASB SQWYOSr//zkA//18CUBAQIEAZD0gAASJKQWUPGAABDhjBYgsCQAAQYIADDghACBOgAAgfAgCppAB ACST4QAcfH8beDkgAAGdIwAMOIAAAUgAEnE8YAAAOGMvIEgAEgF/4/t4g+EAHIABACR8CAOmS/// vHwIAqaQAQAkk4EAEJOhABSTwQAYk+EAHHx9G3g9IAAEgGkF7HxqGhRIABDpfH8beD+AAASAfAWY PSAABIEpBgx8Y0oUSAAQzXx+G3iAfAWYPSAABIEpBhB8Y0oUSAAQ5SgfABFAggAYKB4AEECBABB8 niN4cIkAA0GCAHg9IAAEiSkFlTxgAAQ4YwWILAkAAEGCACCDgQAQg6EAFIPBABiD4QAcgAEAJHwI A6ZL//8MfH8beDkgAAGdIwANOIAAAUgAEY08YAAAOGMvXEgAER1/4/t4g4EAEIOhABSDwQAYg+EA HIABACR8CAOmS//+zD0gAASAaQX0fH0aFEgAECF8fBt4P6AABDu9ALQ7/QHAO70CjH/D83hIAA/5 fGPiFJB/AAA73gACO/8ADHwf6EBAgv/kPGAABDhjALQ4YwG8g4EAEIOhABSDwQAYg+EAHIABACR8 CAOmS//+YJQh//B8CAKmkAEAFJPhAAx8fxt4S//teT0gAASAaQW8SAAPoXwD+ABBggCYOKAABzyA AAA4hC+oPGAABDhjA4hIAA4VLAMAAEGCAGA4oAAHPIAAADiEL7A8YAAEOGMDiEgADfUsAwAAQYIA JDigAAc8gAAAOIQvuDxgAAQ4YwOISAAN1SwDAABAggAsf+P7eEv//ZmAAQAUfAgDpoPhAAw4IQAQ ToAAIH/j+3hL//nRS///5H/j+3hL//0VS///2DxgAAQ4YwC0OGMClEv//8iUIf/wfAgCppABABST 4QAMfH8beHxlG3h8ZBt4PGAAADhjMCxIAA+NS//slTyAAAA4hDBEf+P7eEgADRksAwAAQYIASDyA AAA4hDBMf+P7eEgADQF8aRt4OGAABCwJAABBggAUPGAAADhjMFhIAA8JOGAAAIABABR8CAOmg+EA DDghABBOgAAgPSAABIBpBbxL///klCH/8HwIAqaQAQAUPGAABDhjA2BIAA1hgAEAFHwIA6Y4IQAQ ToAAIIFDARAsCgAAQYIHrHxnG3g4wwAIgSMABCwJAAFAgQe0lCH/oJHBABiSAQAgkiEAJJJBACiS YQAskoEAMJKhADSSwQA4kuEAPJMBAECTIQBEk0EASJNhAEyTgQBQk6EAVJPBAFiT4QBcOGAAADkg AAA4AAAAOYAAAj1gAAA5azCUO2AAAGN74AA7gAAJO6AAAGO93gA7wAAAY968ADrgAA86gAABOqAA ADogAA46QAANOmAADD4A/+BiENAAPcDz4GHOgAAvhAAAPwD+EGMYDgA/IOwQYzkKAD7A7ABi1goA SAAF7HCEABhBggYkOSkAAlS/gB5/RtIUiJoAA3ymSK5QhUAufKX7eFfkPn47QAAEm0oAAJCqAAhX /z98LB8ABkGCAFhUnwc+KB8ABEGCAJAoHwAFQYIFfJHhABxUumf+k0EACFSvpj5Umgc6LBoACEGC AihwhAANKAQACEGCAtwoBAAJQYIC5CgfAAxBggL0geEAHEgABTx8pMA4fATIAEGCACR8BLAAQIIF KJiqAAFUpYc+mKoAAjigAAKQqgAESAAFEJiqAAFUpYc+mKoAAjigAAGQqgAESAAE+FSkABY/4Oiw fAT4AEGCADhAngTkdKT/0D/g6AB8BPgAQYIBiD/g6MB8BPgAQIIEyFSlBv6YqgABOKAABZCqAARI AAS0cKQAAUCCAViaqgABcKQAAkGCABCIiAABOIQAAZiIAAFwpAAEQYIAEIiIAAE4hAABmIgAAXCk AAhBggAQiIgAATiEAAGYiAABcKQAEEGCABCIiAABOIQAAZiIAAFwpAAgQYIAEIiIAAE4hAABmIgA AXCkAEBBggAQiIgAATiEAAGYiAABcKQAgEGCABCIiAABOIQAAZiIAAFwpAEAQYIAEIiIAAE4hAAB mIgAAXCkAgBBggAQiIgAATiEAAGYiAABcKQEAEGCABCIiAABOIQAAZiIAAFwpAgAQYIAEIiIAAE4 hAABmIgAAXCkEABBggAQiIgAATiEAAGYiAABcKQgAEGCABCIiAABOIQAAZiIAAFwpEAAQYIAEIiI AAE4hAABmIgAAXCkgABBggAQiIgAATiEAAGYiAABVKSHPpiIAAJUpQMebKQADTCk//98pSEQOKUA D5CoAARIAANYmooAAUv//qxUpQb+mKoAATigAAWQqgAESAADPHH6AAhBggRAfKSAOHwEcABBggBI PID4AGCE0AB8pCA4P+DwAGP/0AB8BPgAQYIAWECeA6Q8gP/wYITQAHykIDg/4POgY/+AAHwE+ABB ggBIgeEAHEgAAuRUpMc+mIoAAVSlBj4sBQALQYIADIHhABxIAALIOKAABJCqAASB4QAcSAACuDig AAeQqgAEgeEAHEgAAqhUpAVuLAQBAEGCAAyB4QAcSAAClFSlBv6YqgABOKAABpCqAASB4QAcSAAC fHHkAAhAgv0sgeEAHEgAAmxV5Ac4g0EACH9EI3lAgv0UgeEAHEgAAlRUpE+8LAQAAEGCABCAgQAI LAQAAEGCAuBV7wc+dKT/fz/g+F98BPgAQYIAMFSkBRZUhAAyP+D4UHwE+ABBggAwVKQAFj/g+NB8 BPgAQYIAPIHhABxIAAH8megAATigAAqQqAAEgeEAHEgAAeiZ6AABcKUAMECCAog4oAALkKgABIHh ABxIAAHMmegAAVSkhz6YiAACcKUP/0CCABQ4oAALkKgABIHhABxIAAGokmgABIHhABxIAAGcVKQE KCwESABBggA4VKQEKigEQABBggBAKAREAECCAXxwpP+HLARHAECCAXBUpe8+mKgAATigAAiQqAAE SAABXFSlx36YqAABOKAACpCoAARIAAFIVKUEMiwFQoBAggE8OKAAEZCoAARIAAEwVKQEKCgEaABB ggAsKARgAECCARxUpAd+mIgAAlSk736YiAABcKUHwECCADiSSAAESAAA/FSkB36YiAABVKTvfpiI AAJwpQfAQIIAEDigAAuQqAAESAAA2JJoAARIAADQkigABEgAAMhUpAQsfATwAECCALxwpAABQIIA nJqoAAFwpAACQYIAEIiIAAE4hAABmIgAAXCkAARBggAQiIgAATiEAAGYiAABcKQACEGCABCIiAAB OIQAAZiIAAFwpAAQQYIAEIiIAAE4hAABmIgAAXCkACBBggAQiIgAATiEAAGYiAABcKQAQEGCABCI iAABOIQAAZiIAAFwpQCAQYIAEIioAAE4pQABmKgAAZLoAARIAAAcmogAAUv//2hUpQQsfAXoAEGC AAiTiAAEOSkAAjhjAAE5SgAQgQcABDkI//98CEgAQIEAnIEHASB8CBgAQIEAkH1IU3iQCgAEfTpL eICnAAB8pUoUkKoADHymShSIhQABfKZIrlCFQC5UnwY0LB8A4EGC+dyZiAAAkKgACFSkoz44hP/8 KAQACkGB/5BUhBA6fIsgLnyEWhR8iQOmToAEIFSlBCh8BdgAQIL/cJOIAARL//9ogeEAHEv//2CB 4QAcS///WIHhABxL//9QkGcBGIHBABiCAQAggiEAJIJBACiCYQAsgoEAMIKhADSCwQA4guEAPIMB AECDIQBEg0EASINhAEyDgQBQg6EAVIPBAFiD4QBcOCEAYE6AACA4YAAAToAAIHCEAA0oBAAIQIL5 nIHhABxL//7kOGAAAJBnARhOgAAglCH/sHwIAqaQAQBUk+EATHy/K3g4oAEALAQAAUCBABR8hSN4 LAQBAECBAAg4oAEAkH8AAJC/AAR8ZBt4OH8ACEgABiV8aRt4kH8BCDhgAAAsCf//QYIDcIEfAQws CAAAQYIDVIE/AAQsCQABQIEDbJHBAAiR4QAMkgEAEJIhABSSQQAYkmEAHJKBACCSoQAkksEAKJLh ACyTAQAwkyEANJNBADiTYQA8k4EAQJOhAESTwQBIOP8ACDjAAAA4oAAAOAAAADlgAAQ9wA5QYc4A ED3gBhA+QACAPqAEHz5gBBA/gA/wY5wA8D+gASBjvQAwO2AABz/A8QA+wAACOgAABj8gD/BjOQ8Q P0AO8GNaChA+4A+/YvcOAD8ADS1jGAoAOiAAAjqAAAM9gAsASAAAwFUqAQ58CmAAQYIAOFUqAAw8 YPoAfAoYAEGCADB1Kv5QPGD4QHwKGABAggB0VSkG/pkoAAE5IAAFkSgABEgAAGCTaAAESAAAWJNo AARIAABQVSqnPplIAAFVKYc+mSgAApKIAARIAAA4VSMnPiwDAA9BggAgcUMABkCCAPx9KeA4fAno AECCABiTaAAESAAAEHUq//F8CvAAQYIAwDjGAAQ4pQABOQgAEDjnAASBPwAEOSn//3wGSABAgAH4 gT8BHHwJKABAgQF4kAgABIE/AAB9KTIUkSgADIknAANVKcAOiUcAAlVKgB59KVN4iUcAAH0pU3iJ RwABVUpALn0pU3iZaAAAkSgACFUqPn5VIz96LAMAAEGC/1RVSgd8KAoABEGC/uAoCgAGQIL/dH0q yDh8CtAAQYL/HH0quDh8CsAAQIL/XJkoAAFVKYc+mSgAApIoAARL//9IVSoDHHwKsABAgv88VSkG /pkoAAGSCAAES///LFVKB34oCgACQYIAYCgKAANAgv8YcSoAEECC/xB9KnA4fAp4AECC/wRVKgHQ fAqQAEGC/vg9QAAPYUoPgH0qUDg8YAAJfAoYAECC/uBVKqc+mUgAAVUpBz6ZKAACOSAAC5EoAARL //7EdSoOX3wKqABBggA4dSoOUHwKmABAgv6sVSqnPplIAAFVKoc+mUgAAlUqBT4xKv//fSlREDkp AAuRKAAES//+hFUqAdB8CpAAQYL+eFUppz6ZKAABOSAACpEoAARL//5kgcEACIHhAAyCAQAQgiEA FIJBABiCYQAcgoEAIIKhACSCwQAoguEALIMBADCDIQA0g0EAOINhADyDgQBAg6EARIPBAEiQvwEU OIAAAH/j+3hL//Rpf+P7eIABAFR8CAOmg+EATDghAFBOgAAgOKAAAEv//9SBwQAIgeEADIIBABCC IQAUgkEAGIJhAByCgQAggqEAJILBACiC4QAsgwEAMIMhADSDQQA4g2EAPIOBAECDoQBEg8EASEv/ /4yUIf7AfAgCppABAUST4QE8fL8reDigAQAsBAABQIEAFHyFI3gsBAEAQIEACDigAQCQYQAIkKEA DHxkG3g4YQAQSAAB/XxpG3iQYQEQOGAAACwJ//9AggAYgAEBRHwIA6aD4QE8OCEBQE6AACCT4QEY gSEADH0pDnB9KQGUkSEBKDiAAAE4YQAIS//zdUv//8yJQwAALAoAAEGCACCJJAAAfAlQAECCABQ4 hAABjUMAASwKAABAgv/oiGQAAHxjUFBOgAAgLAUAAEGCADA4hP//OQP//3ypA6aNKAABjGQAAXxj SFFMggAgLAkAAE2CACBCAP/oToAAIDhgAABOgAAgiUMAACwKAABNggAgfGgbeEgAABCNSAABLAoA AE2CACA5Kv+/VSkGPigJABlBgf/oOUoAIJlIAABL///cOEABAXyCEAhOgAAgOEABAnyCEAhOgAAg OEABA3yCEAhOgAAgOEABBHyCEAhOgAAgOEABBnyCEAhOgAAgOEABB3yCEAhOgAAgOEABCHyCEAhO gAAgOEABCXyCEAhOgAAgOEABDHyCEAhOgAAgOEABDnyCEAhOgAAgOEACAXyCEAhOgAAgOEACAnyC EAhOgAAgOEACA3yCEAhOgAAgOEACBHyCEAhOgAAgOEACBnyCEAhOgAAgOEACCXyCEAhOgAAgfGYb eHyjK3h8hSN4OID//zhAAgl8ghAIToAAIDhAAwF8ghAIToAAIDhAAwJ8ghAIToAAIDhAAwN8ghAI ToAAIDhAAxF8ghAIToAAIDhAAxd8ghAIToAAIDhAA1l8ghAIToAAIDhAA2N8ghAIToAAIDhABAB8 ghAIToAAIDhABDF8ghAIToAAIDhABDJ8ghAIToAAIDhABFF8ghAIToAAIDhABFJ8ghAIToAAIDhA BFN8ghAIToAAIDhABSF8ghAIToAAIDhABwF8ghAIToAAIDhABwR8ghAIToAAIDhACAF8ghAIToAA IDhACAJ8ghAIToAAIDhACgF8ghAIToAAIDhACgJ8ghAIToAAIDhACgN8ghAIToAAIDhAChB8ghAI ToAAIHxkG3g4YAABS///7HxkG3g4YAADS///4HyFI3h8ZBt4OGAAB0v//9A4QAoTfIIQCE6AACA4 QAoUfIIQCE6AACA4QAoxfIIQCE6AACA4QAsBfIIQCE6AACC+AgMEAAAABQBAVkVSU0lPTi1JTkZP QAAxMDE5NAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ9IAAAfoAAAABgAAAA0AAAAAAAAA AAAAAABodHRwczovL3N2bi5pbnRlcm4ubGF1dGVyYmFjaC5jb20vc3ZuL2tlcm5lbHNyYy9icmFu Y2hlcy9uaWdodGx5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAGh0dHBzOi8vc3ZuLmludGVybi5sYXV0ZXJiYWNoLmNvbS9zdm4v a2VybmVsc3JjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYmF1bWVpc3RlcgAAAAAAAGVkay1saW51 eDY0Yml0LTcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABH Q0MgOS41LjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAB+gAAAAGAAAADQAAAE4AACfSAAAH6AAAAAYAAAAAAAAAAAAAAAAAAAAA AAAAAAABPmROdXR0WAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAQ1BVLkZFQVRVUkUoImZwdSIpAABnX2Fzc2lnbmVk dGFza3MAZ19hc3NpZ25lZF90YXNrcwAAAABnX3BpZGhhc2gAAABnX25waWRoYXNoAABzdHJ1Y3Qg dGNiX3MAAAAAcGlkaGFzaF90AAAAc3RydWN0IHBpZGhhc2hfcwAAAABnX2J1aWx0aW5zAABnX2J1 aWx0aW5fY291bnQAc3RydWN0IGJ1aWx0aW5fcwAAAAAuZmxpbmsAAC5waWQAAAAALnNjaGVkX3By aW9yaXR5AC50YXNrX3N0YXRlAC5hZGpfc3RhY2tfc2l6ZQAuYWRqX3N0YWNrX3B0cgAALnN0YWNr X2FsbG9jX3B0cgAAAAAuc3RhY2tfYmFzZV9wdHIALm5hbWUAAAAueGNwLnJlZ3MAAAAucHJpb3Jp dHkAAAAuc3RhY2tzaXplAAAubWFpbgAAAGdfdGNiaW5mbwAAAC5iYXNpY19udW0AAC50b3RhbF9u dW0AAC5yZWdfb2ZmAAAAAGdfaWRsZV90b3BzdGFjawAhIU51dHRYIGtlcm5lbCBzeW1ib2xzIG5v dCBmb3VuZAAAAAAhIUhhcmR3YXJlIHRocmVhZCBleGNlZWRzIG51bWJlciBvZiBjb25maWd1cmVk IENQVXMhAAAAAGdfcmVhZHl0b3J1bgAAAABUQVNLLlRhc2sgJXgAAAAAVEFTSy5UAAAlOHgAJWQu AHRzdGF0ZV90AAAAAFRTVEFURV8AVEFTS18AAAAoJTJ4KQAAACUzZC4AAAAACgAAAG1hZ2ljICAg IAAAAGlkICAAAAAAc3RhdGUgICAgICAAcHJpbwAAAABuYW1lICAgAFRBU0sAAAAAVAAAAFRhc2sA AAAAQCg9KV9fUlRPU19OVVRUWF9fVEFTS19UAAAAAERhdGEuTGlzdCAleAAAAABuYW1lICAgICAg ICAgICAgICAgICAgICAgICAgAAAAAHByaW9yaXR5IAAAAHN0YWNrc2l6ZQAAAG1haW4gYWRkcgAA AEJVSUxUSU5BUFAAAEJMVEFQUAAAQnVpTFRpbkFQUAAAQCg9KV9fUlRPU19OVVRUWF9fVEFTS19C TFRBUFAAAAAlQGNNVEQgVmVyc2lvbiAgJXMgICVzICAlMDJ1LiUwMnUuJTA0dSAoQnVpbGQgJXMp CgoAbWFnaWMgICAgICAgICAgICAlOHggICU4eCAgAHhjcF9yZWdzIHNpemUgJTh4CgAAVEVTVAAA AABhcmd1bWVudCAgICAgICAgIHZhbHVlICAgICBjb250ZW50ICAgc3ltYm9sAC0tLSAgVEFTSyAg bWFnaWMgPSAlOHgAACAgaWQgPSAlZC4AACAgbmFtZSA9ICVzACAgLS0tAAAAX19SVE9TX05VVFRY X19BTAAAAABfX1JUT1NfTlVUVFhfX0FTAAAAAGV4Y2VwdGlvbl9jb21tb24AAAAAUEMAAE1TUABS MAAAQ09OVFJPTABzaXplIHhjcF9yZWdzICU4eCAKACEhc3ltYm9sIGBnX3RjYmluZm9gIG1pc3Np bmcgLSBjaGVjayBDT05GSUdfREVCVUdfVENCSU5GTwAAACEhTnV0dFg6IEluY29uc2lzdGVudCBU Q0JJTkZPIGRldGVjdGVkLiBDb250YWN0IHN1cHBvcnRAbGF1dGVyYmFjaC5jb20gLgAAAABDT1JU RVhNAENPUlRFWEEAQ09SVEVYUgBtc3AAcHJpbWFzawByNAAAcjUAAHI2AAByNwAAcjgAAHI5AABy MTAAcjExAHIwAAByMQAAcjIAAHIzAAByMTIAcjE0AHBjAAB4cHNyAAAAAHIxMwBjcHNyAAAAAGhh cmR3YXJldGhyZWFkAABwYXJhbWV0ZXIgMTogMHglOHggPSAlcwBtYWdpYwAAAG1hZ2ljc2l6ZQAA AHVua25vd24gdG9waWMAAABUQVNLLkNPTkZJRwBfX1JUT1NfTlVUVFhfX0ZVTkMAAE51dHRYAAAA QVJNAP//7Qz//+6k///teP//7qT//+6k///upP//7qT//+3g///upP//7pT//+8sREFUQQAALPgA AC0EAAAtDAAALRgAAC0gAAAAAAAAAAMALQAAAAQAAAAAB1gAAC0oAAAtMAAALTQAAC08AAAFQAAA AAMAXwAAAAQAYAAACdwAAC2sAAAtuAAALcAAAC3MAAAIiAAALPgAAC1oAAAtiAAALZQAAC2gAAAA AAAAAAEAPAAAAAAuWAAACtAAAC5QAAAuUAAALYQAAC2EAAAKnAAAD2wAAA/IAAAuvAAAD0QAAC7Q AAAQlAAAL8AAAAAAAAAABAAAL8QAAAAAAAAABAAAL8wAAAAAAAAABAAAL9AAAAAAAAAABAAAL9QA AAAAAAAABAAAL9gAAAAAAAAABAAAL9wAAAAAAAAABAAAL+AAAAAAAAAABAAAL+QAAAAAAAAABAAA L+gAAAAAAAAABAAAL+wAAAAAAAAABAAAL/AAAAAAAAAABAAAL/QAAAAAAAAABAAAL/gAAAAAAAAA BAAAL/wAAAAAAAAABAAAMAAAAAAAAAAABAAAMAQAAAAAAAAABAAAMAgAAAAAAAAABAAAAAAAAAAA AAAAAAAAL+wAAAAAAAAABAAAL/AAAAAAAAAABAAAL/QAAAAAAAAABAAAL/gAAAAAAAAABAAAL8wA AAAAAAAABAAAL9AAAAAAAAAABAAAL9QAAAAAAAAABAAAL9gAAAAAAAAABAAAL9wAAAAAAAAABAAA L+AAAAAAAAAABAAAL+QAAAAAAAAABAAAL+gAAAAAAAAABAAAL/wAAAAAAAAABAAAMBAAAAAAAAAA BAAAMAAAAAAAAAAABAAAMAQAAAAAAAAABAAAMBQAAAAAAAAABAAAAAAAAAAAAAAAAAAAL+wAAAAA AAAABAAAL/AAAAAAAAAABAAAL/QAAAAAAAAABAAAL/gAAAAAAAAABAAAL8wAAAAAAAAABAAAL9AA AAAAAAAABAAAL9QAAAAAAAAABAAAL9gAAAAAAAAABAAAL9wAAAAAAAAABAAAL+AAAAAAAAAABAAA L+QAAAAAAAAABAAAL+gAAAAAAAAABAAAL/wAAAAAAAAABAAAMBAAAAAAAAAABAAAMAAAAAAAAAAA BAAAMAQAAAAAAAAABAAAMBQAAAAAAAAABAAAAAAAAAAAAAAAAAAAMBwAAAAAAAAAAAAAAAAAAAAA AAAAAAAAMGgAAAADAAAAFwAAAAAAADB0AAAXzAAALYQAADCIAAAwkAAAAABUMzJF ) 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: NuttX specific menu ; @Description: - ; @Author: DIE ; @Copyright: (c) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only ; -------------------------------------------------------------------------------- ; $Id: nuttx.m 9021 2023-05-15 13:22:45Z amerkle $ NAME "TASK.&sMenuName" IF !MENU.EXIST("TASK.&sMenuName") ( ADD MENU ( POPUP "&sHeader" ( default menuitem "Display &Tasks" "TASK.&(sInfix)Task" menuitem "Display &Builtin Applications" "TASK.&(sInfix)BuiLTinApp" 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 "&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" ( 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 "&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 "&Help" ( MENUITEM "[:manual]OS Awareness Manual NuttX" "HELP __RTOS_NUTTX_" ) ) menu "task.&(sInfix)t" ( default menuitem "Display task struct" ( PRIVATE &pAddress &pAddress=TRACK.ADDRESS() Var.View %Open %String (struct tcb_s *)(&pAddress) ) separator menuitem "Display Stack Frame" ( PRIVATE &nAddress &nAddress=ADDRESS.OFFSET(TRACK.ADDRESS()) Var.Frame /Locals /Caller /TASK &nAddress ) menuitem "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 task entry" ( PRIVATE &pAddress &pAddress=TRACK.ADDRESS() Data.dump &pAddress /Long /DIALOG ) ) ) ) ) PMACRO.UNLOCK RETURN ) autoload_32bit: ;(options) ( PARAMETERS &sOptions RETURN ) extension_64bit: ; (options) ( PARAMETERS &sParameters &sOptions EXTension.LOAD &sParameters &sOptions ( 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 YXV0ZXJiYWNoLmNvbS9zdm4va2VybmVsc3JjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYmF1bWVp c3RlcgAAAAAAAGVkay1saW51eDY0Yml0LTcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAABHQ0MgOS41LjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+gAAAAGAAAADQAAAE4AACfSAAAH6AAA AAYAAAAAAAAAAAAAAAAAAAAAAAAAAAABPmROdXR0WAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAQ1BVLkZFQVRVUkUo ImZwdSIpAABnX2Fzc2lnbmVkdGFza3MAZ19hc3NpZ25lZF90YXNrcwAAAABnX3BpZGhhc2gAAABn X25waWRoYXNoAABzdHJ1Y3QgdGNiX3MAAAAAcGlkaGFzaF90AAAAc3RydWN0IHBpZGhhc2hfcwAA AABnX2J1aWx0aW5zAABnX2J1aWx0aW5fY291bnQAc3RydWN0IGJ1aWx0aW5fcwAAAAAuZmxpbmsA AC5waWQAAAAALnNjaGVkX3ByaW9yaXR5AC50YXNrX3N0YXRlAC5hZGpfc3RhY2tfc2l6ZQAuYWRq X3N0YWNrX3B0cgAALnN0YWNrX2FsbG9jX3B0cgAAAAAuc3RhY2tfYmFzZV9wdHIALm5hbWUAAAAu eGNwLnJlZ3MAAAAucHJpb3JpdHkAAAAuc3RhY2tzaXplAAAubWFpbgAAAGdfdGNiaW5mbwAAAC5i YXNpY19udW0AAC50b3RhbF9udW0AAC5yZWdfb2ZmAAAAAGdfaWRsZV90b3BzdGFjawAhIU51dHRY IGtlcm5lbCBzeW1ib2xzIG5vdCBmb3VuZAAAAAAhIUhhcmR3YXJlIHRocmVhZCBleGNlZWRzIG51 bWJlciBvZiBjb25maWd1cmVkIENQVXMhAAAAAGdfcmVhZHl0b3J1bgAAAABUQVNLLlRhc2sgJXgA AAAAVEFTSy5UAAAlMTZ4AAAAACVkLgB0c3RhdGVfdAAAAABUU1RBVEVfAFRBU0tfAAAAKCUyeCkA AAAlM2QuAAAAAAoAAABtYWdpYyAgICAgICAgICAgAAAAAGlkICAAAAAAc3RhdGUgICAgICAAcHJp bwAAAABuYW1lICAgAFRBU0sAAAAAVAAAAFRhc2sAAAAAQCg9KV9fUlRPU19OVVRUWF9fVEFTS19U AAAAACU4eABEYXRhLkxpc3QgJXgAAAAAbmFtZSAgICAgICAgICAgICAgICAgICAgICAgIAAAAABw cmlvcml0eSAAAABzdGFja3NpemUAAABtYWluIGFkZHIAAABCVUlMVElOQVBQAABCTFRBUFAAAEJ1 aUxUaW5BUFAAAEAoPSlfX1JUT1NfTlVUVFhfX1RBU0tfQkxUQVBQAAAAJUBjTVREIFZlcnNpb24g ICVzICAlcyAgJTAydS4lMDJ1LiUwNHUgKEJ1aWxkICVzKQoKAG1hZ2ljICAgICAgICAgICAgJTE2 eCAgJTE2eCAgAAAAeGNwX3JlZ3Mgc2l6ZSAlMTZ4CgBURVNUAAAAAGFyZ3VtZW50ICAgICAgICAg dmFsdWUgICAgIGNvbnRlbnQgICBzeW1ib2wALS0tICBUQVNLICBtYWdpYyA9ICU4eAAAICBpZCA9 ICVkLgAAICBuYW1lID0gJXMAICAtLS0AAABfX1JUT1NfTlVUVFhfX0FMAAAAAF9fUlRPU19OVVRU WF9fQVMAAAAAISFzeW1ib2wgYGdfdGNiaW5mb2AgbWlzc2luZyAtIGNoZWNrIENPTkZJR19ERUJV R19UQ0JJTkZPAAAAISFOdXR0WDogSW5jb25zaXN0ZW50IFRDQklORk8gZGV0ZWN0ZWQuIENvbnRh Y3Qgc3VwcG9ydEBsYXV0ZXJiYWNoLmNvbSAuAAAAAENPUlRFWEEAQ09SVEVYUgB4MAAAeDEAAHgy AAB4MwAAeDQAAHg1AAB4NgAAeDcAAHg4AAB4OQAAeDEwAHgxMQB4MTIAeDEzAHgxNAB4MTUAeDE2 AHgxNwB4MTgAeDE5AHgyMAB4MjEAeDIyAHgyMwB4MjQAeDI1AHgyNgB4MjcAeDI4AHgyOQB4MzAA c3AAAHBjAABoYXJkd2FyZXRocmVhZAAAcGFyYW1ldGVyIDE6IDB4JTh4ID0gJXMAbWFnaWMAAABt YWdpY3NpemUAAAB1bmtub3duIHRvcGljAAAAVEFTSy5DT05GSUcAX19SVE9TX05VVFRYX19GVU5D AABOdXR0WAAAAEFSTTY0AERBVEEAACAkAAAgOAAAIEAAACBMAAAgVAAAAAAAAAADADUAAAAEAAAA AAgUAAAgXAAAIGQAACBoAAAgcAAABfQAAAADAGcAAAAEAGAAAAsgAAAg5AAAIPAAACD4AAAhBAAA CagAACAkAAAgoAAAIMAAACDMAAAg2AAAAAAAAAABADwAAAAAIZQAAAw4AAAhjAAAIYwAACC8AAAg vAAADAQAABIYAAASgAAAIfgAABHwAAAiDAAAE0wAAAAAAAAiuAAAAAAAAAAAAAAAAAAAAAgAAAAA AAAivAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAiwAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAixAAAAAAA AAAAAAAAAAAAAAgAAAAAAAAiyAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAizAAAAAAAAAAAAAAAAAAA AAgAAAAAAAAi0AAAAAAAAAAAAAAAAAAAAAgAAAAAAAAi1AAAAAAAAAAAAAAAAAAAAAgAAAAAAAAi 2AAAAAAAAAAAAAAAAAAAAAgAAAAAAAAi3AAAAAAAAAAAAAAAAAAAAAgAAAAAAAAi4AAAAAAAAAAA AAAAAAAAAAgAAAAAAAAi5AAAAAAAAAAAAAAAAAAAAAgAAAAAAAAi6AAAAAAAAAAAAAAAAAAAAAgA AAAAAAAi7AAAAAAAAAAAAAAAAAAAAAgAAAAAAAAi8AAAAAAAAAAAAAAAAAAAAAgAAAAAAAAi9AAA AAAAAAAAAAAAAAAAAAgAAAAAAAAi+AAAAAAAAAAAAAAAAAAAAAgAAAAAAAAi/AAAAAAAAAAAAAAA AAAAAAgAAAAAAAAjAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAjBAAAAAAAAAAAAAAAAAAAAAgAAAAA AAAjCAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAjDAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAjEAAAAAAA AAAAAAAAAAAAAAgAAAAAAAAjFAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAjGAAAAAAAAAAAAAAAAAAA AAgAAAAAAAAjHAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAjIAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAj JAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAjKAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAjLAAAAAAAAAAA AAAAAAAAAAgAAAAAAAAjMAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAjNAAAAAAAAAAAAAAAAAAAAAgA AAAAAAAjOAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjPAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjiAAAAAMAAAAXAAAA AAAAI5QAABdQAAAgvAAAI6gAACOwAAAAAFQzMkU= ) 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: NuttX specific menu ; @Description: - ; @Author: DIE ; @Copyright: (c) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only ; -------------------------------------------------------------------------------- ; $Id: nuttx.m 9021 2023-05-15 13:22:45Z amerkle $ NAME "TASK.&sMenuName" IF !MENU.EXIST("TASK.&sMenuName") ( ADD MENU ( POPUP "&sHeader" ( default menuitem "Display &Tasks" "TASK.&(sInfix)Task" menuitem "Display &Builtin Applications" "TASK.&(sInfix)BuiLTinApp" 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 "&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" ( 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 "&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 "&Help" ( MENUITEM "[:manual]OS Awareness Manual NuttX" "HELP __RTOS_NUTTX_" ) ) menu "task.&(sInfix)t" ( default menuitem "Display task struct" ( PRIVATE &pAddress &pAddress=TRACK.ADDRESS() Var.View %Open %String (struct tcb_s *)(&pAddress) ) separator menuitem "Display Stack Frame" ( PRIVATE &nAddress &nAddress=ADDRESS.OFFSET(TRACK.ADDRESS()) Var.Frame /Locals /Caller /TASK &nAddress ) menuitem "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 task entry" ( PRIVATE &pAddress &pAddress=TRACK.ADDRESS() Data.dump &pAddress /Long /DIALOG ) ) ) ) ) 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 )