;@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." "Riot OS" 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="Riot OS" 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." "Riot OS" &nVariant ) ) ELSE IF (&bExtLoad) ( PRIVATE &sMachineName &sInfix &sOptionName &sOptionMachine &sInfix="" &sMachineName="Riot OS" 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." "Riot OS" &nVariant ) ) ELSE IF (&bCleanup) ( PRIVATE &sMachineName &sOptionMachine &sMachineName="Riot OS" 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 ( 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 AAAAAGJhdW1laXN0ZXIAAAAAAABlZGstbGludXg2NGJpdC03AAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR0NDIDkuNS4wAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoAAAABgAAAA0AAABO AAAn0gAAB+gAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUJJUmlvdCBPUwAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAACEh QVJNIENvbnRleHQ6IFVwZGF0ZSBuZWVkZWQhAAAAQ09SVEVYTQByNAAAcjUAAHI2AAByNwAAcjgA AHI5AAByMTAAcjExAHIxNAByMAAAcjEAAHIyAAByMwAAcjEyAHBjAAB4cHNyAAAAAHBzcABjcHNy AAAAAHI4X3VzcgAAcjlfdXNyAAByMTBfdXNyAHIxMV91c3IAcjEyX3VzcgByMTNfdXNyAHIxNF91 c3IAaGFyZHdhcmV0aHJlYWQAADxNYWlsQm9YPgAAAFRBU0suTWFpbEJvWCAleABSSU9ULk1CT1hM AAAgICAgICAgJThkLgBPdmVyZmxvdwAAAABNYWlsYm94IERldGFpbHMgOgAAAE1hZ2ljICAgICAg ICAgOiAlOHggIAAAAFZhcmlhYmxlIG5hbWUgOiAlMTZzAAAAAFF1ZXVlIFNpemUgICAgOiAlOGQu AAAAAEJsb2NrZWQgVGhyZWFkcyA6AAAAUmVjZWl2ZSAoZ2V0KSBCbG9ja2VkIHRocmVhZHM6ICVk LgoAICAgICU4eCAgAAAAUmVjZWl2ZSAoZ2V0KSBCbG9ja2VkIHRocmVhZHM6IE9WRVJGTE9XAFNl bmQgKHB1dCkgQmxvY2tlZCB0aHJlYWRzOiAgICAlZC4KAFNlbmQgKHB1dCkgQmxvY2tlZCB0aHJl YWRzOiBPVkVSRkxPVwAAAABNZXNzYWdlcyA6AAAgICAgU2VuZGVyIFBJRCAgICAgIFR5cGUgICAg ICBDb250ZW50CgAAICAgICAgICAgJTRkLiAgICAgJTRkLiAgICAgJTh4CgBtYWdpYyAgICAAAABW YXJpYWJsZSAgICAgICAgAAAAAFF1ZXVlIFNpemUAAE5vLiBTZW5kIHRocmVhZHMAAAAATm8uIFJl Y3YgVGhyZWFkcwAAAABTb3JyeTogQ291bGRuJ3QgZmluZCBhbnkgTWFpbGJveGVzAABTb3JyeTog TWFpbGJveCBub3QgZm91bmQuAAAATUFJTEJPWABNQlgATWFpbEJvWABAKD0pX19SVE9TX1JJT1Rf X1RBU0tfTUJYAAAAPG11dGV4PgBUQVNLLk11VGVYICV4AAAAUklPVC5NTABObyB0aHJlYWRzIGJs b2NrZWQAACAgICAgICAgICAlNGQuAAAgICAgICBPdmVyZmxvdwAAQmxvY2tlZCB0aHJlYWRzOgAA AABWYXIuVmlldyAlJU9wZW4gKHRocmVhZF90ICopJXgAACAgJTh4ICA6LSAgIAAAAABOYW1lL1Zh cmlhYmxlIAAATmFtZS9WYXJpYWJsZSAgIAAAAABOby4gQmxvY2tlZCBUaHJlYWRzAFNvcnJ5OiBD b3VsZG4ndCBmaW5kIGFueSBtdXRleGVzAAAAAFNvcnJ5OiBtdXRleCBub3QgZm91bmQuAE1VVEVY AAAATVRYAE11VGVYAAAAQCg9KV9fUlRPU19SSU9UX19UQVNLX01UWAAAACAgICAgICAgRm91bmQg TXV0ZXggYXQgOiAleAAgICAgICAgIEZvdW5kIFJtdXRleCBhdCA6ICV4AAAAACEhTnVtYmVyIG9m IGFsbG93ZWQgUk11dGV4ZXMgZXhjZWVkZWQuIFBsZWFzZSBjb250YWN0IExhdXRlcmJhY2ggc3Vw cG9ydCEAAAAgICAgICAgIEZvdW5kIE1haWxib3ggYXQgOiAleAAAACEhTnVtYmVyIG9mIGFsbG93 ZWQgTWFpbGJveGVzIGV4Y2VlZGVkLiBQbGVhc2UgY29udGFjdCBMYXV0ZXJiYWNoIHN1cHBvcnQh AAAgICAgICAgIEZvdW5kIFNlbWFwaG9yZSBhdCA6ICV4ACEhTnVtYmVyIG9mIGFsbG93ZWQgU2Vt YXBob3JlcyBleGNlZWRlZC4gUGxlYXNlIGNvbnRhY3QgTGF1dGVyYmFjaCBzdXBwb3J0IQAgICAg ICAgIEZvdW5kIFJpbmdCdWZmZXIgYXQgOiAleAAAAAAhIU51bWJlciBvZiBhbGxvd2VkIFJpbmdC dWZmZXJzIGV4Y2VlZGVkLiBQbGVhc2UgY29udGFjdCBMYXV0ZXJiYWNoIHN1cHBvcnQhAAAAAG11 dGV4X3QAKgAAAHJtdXRleF90AAAAAG1ib3hfdAAAc2VtYV90AAByaW5nYnVmZmVyX3QAAAAAICAg ICAgICBGb3VuZCBNc2cgUSBhdCA6ICV4AHNjaGVkX251bV90aHJlYWRzAAAAdGhyZWFkX3Quc3AA dGhyZWFkX3Quc3RhdHVzAHRocmVhZF90LnByaW9yaXR5AAAAdGhyZWFkX3QucGlkAAAAAHRocmVh ZF90LmZsYWdzAAB0aHJlYWRfdC5ycV9lbnRyeQAAAHRocmVhZF90LndhaXRfZGF0YQAAdGhyZWFk X3QubXNnX3dhaXRlcnMAAAAAdGhyZWFkX3QubXNnX3F1ZXVlAAB0aHJlYWRfdC5tc2dfYXJyYXkA AHRocmVhZF90Lm5hbWUAAAB0aHJlYWRfdC5zdGFja19zdGFydAAAAAB0aHJlYWRfdC5zdGFja19z aXplAG11dGV4X3QucXVldWUAAABybXV0ZXhfdC5tdXRleAAAcm11dGV4X3QucmVmY291bnQAAABy bXV0ZXhfdC5vd25lcgAAcHJpb3JpdHlfcXVldWVfbm9kZV90Lm5leHQAAHByaW9yaXR5X3F1ZXVl X25vZGVfdC5wcmlvcml0eQAAcHJpb3JpdHlfcXVldWVfbm9kZV90LmRhdGEAAG1ib3hfdC5yZWFk ZXJzAABtYm94X3Qud3JpdGVycwAAbWJveF90LmNpYgAAbWJveF90Lm1zZ19hcnJheQAAAABtc2df dC5zZW5kZXJfcGlkAAAAAG1zZ190LnR5cGUAAG1zZ190LmNvbnRlbnQucHRyAAAAbXNnX3QuY29u dGVudC52YWx1ZQBtc2dfdAAAAHJpbmdidWZmZXJfdC5idWYAAAAAcmluZ2J1ZmZlcl90LnNpemUA AAByaW5nYnVmZmVyX3Quc3RhcnQAAHJpbmdidWZmZXJfdC5hdmFpbAAAc2VtYV90LnZhbHVlAAAA AHNlbWFfdC5zdGF0ZQAAAABzZW1hX3QubXV0ZXgAAAAAeHRpbWVyX3QubmV4dAAAAHh0aW1lcl90 LnRhcmdldAB4dGltZXJfdC5sb25nX3RhcmdldAAAAAB4dGltZXJfdC5jYWxsYmFjawAAAHh0aW1l cl90LmFyZwAAAABjaWJfdC5yZWFkX2NvdW50AAAAAGNpYl90LndyaXRlX2NvdW50AAAAY2liX3Qu bWFzawAAQ2hlY2tpbmcgZm9yIE11dGV4ZXMAAAAAQ2hlY2tpbmcgZm9yIFJtdXRleGVzAAAAQ2hl Y2tpbmcgZm9yIE1haWxib3hlcwAAQ2hlY2tpbmcgZm9yIFNlbWFwaG9yZXMAQ2hlY2tpbmcgZm9y IFJpbmdCdWZmZXJzAAAAAHNjaGVkX3RocmVhZHMAAAA8UmluZ0J1ZmZlcj4AAAAAVmFyLlZpZXcg JSVPcGVuIChyaW5nYnVmZmVyX3QgKikleAAAUklPVC5SQkwAAAAAIDB4JTh4AAAgICAgICAgICAg MHglOHgAICAgICAgJThkLgoAIEJ1ZmZlciAqICAgIAAAACBCdWZmZXIgc2l6ZSAgAAAgUmVhZCBQ b2ludGVyIE9mZnNldCAAAAAgTm8uIEF2YWlsYWJsZSAgAAAAAE5vIFJpbmcgQnVmZmVycyBoYXZl IGJlZW4gZm91bmQuAAAAAFJJTkdCVUZGRVIAAFJCAABSaW5nQnVmZmVyAABAKD0pX19SVE9TX1JJ T1RfX1RBU0tfUkIAAAAAc2NoZWRfYWN0aXZlX3RocmVhZABtYWdpYwAAAC0tLSBUQVNLID0gJTh4 ID0gAAAAVEFTSy5TVEFDSy5QQVRURVJOIDB4NUEAVEFTSy5DT05GSUcAPFJNdXRleD4AAAAAVmFy LlZpZXcgJSVPcGVuIChybXV0ZXhfdCAqKSV4AABSSU9ULlJNTAAAAAAgICAgICU4ZC4AAAAlNmQu ICA6LSAAAAAgTm8gVGhyZWFkIAoAAAAAIE5vdCBGb3VuZAoAQ3VycmVudCBDb3VudAAAAE93bmVy ICAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAAE5vIFJlY3Vyc2l2ZSBNdXRleGVzIGZvdW5k LgBSTVVURVgAAFJNAABSTXV0ZXgAAEAoPSlfX1JUT1NfUklPVF9fVEFTS19STQAAAAA8c2VtYXBo b3JlPgBUQVNLLlNFTWFwaG9yZSAleAAAAFJJT1QuU0VNTAAAACAgICAgICAgT0sAACBERVNUUk9Z RUQAACAgICBVS05PV04AACAgICAgICAgIE5vbmUuAAAgICAgICAgICAlNGQuAAAATmFtZSAgICAg ICAgICAgICAAAABWYWx1ZSAgICAgIABTdGF0dXMgICAgIAAgTm8uIEJsb2NrZWQgdGhyZWFkcwAA AABTb3JyeTogQ291bGRuJ3QgZmluZCBhbnkgc2VtYXBob3JlcwBTb3JyeTogU2VtYXBob3JlIG5v dCBmb3VuZC4AU0VNQVBIT1JFAAAAU0VNAFNFTWFwaG9yZQAAAEAoPSlfX1JUT1NfUklPVF9fVEFT S19TRU0AAAA8dGFzaz4AAEJhc2ljIHRocmVhZCBkZXRhaWxzOgAAAE5hbWUgICAgICAgICAgICAg ICA6IAAAAApQSUQgICAgICAgICAgICAgICAgOiAAACU4ZCAKAAAAUHJpb3JpdHkgICAgICAgICAg IDogAAAAU3RhdHVzICAgICAgICAgICAgIDogAAAAJXMKAFN0YWNrIEJhc2UgQWRkcmVzcyA6ICU4 eAoAAABTdGFjayBzaXplICAgICAgICAgOiAlOGQKAAAARXh0cmEgSW5mb3JtYXRpb246AABGTEFH UyAgICAgICA6IE1PRFVMRV9DT1JFX1RIUkVBRF9GTEFHUyBub3QgZGVmaW5lZCBpbiB0aGlzIGJ1 aWxkCgAAAEZMQUdTOiAgICAgICU0eAoAAAAAICAgIEJJVF8lZAAAIChUSFJFQURfRkxBR19NU0df V0FJVElORykgACAgKFRIUkVBRF9GTEFHX1RJTUVPVVQpICAAAAAgIChVTktOT1dOIEZMQUcpICAg AE1FU1NBR0lORyAgIDogTU9EVUxFX0NPUkVfTVNHIG5vdCBkZWZpbmVkIGluIHRoaXMgYnVpbGQu CgAAAEJsb2NrZWQgVGhyZWFkczoAAAAAIE5vIGJsb2NrZWQgdGhyZWFkcwoAAAAAICAgICAgJTh4 ICggAAAAACBuYW1lID0gJTh4CgAAAAAgKQoAICAgIE9WRVJGTE9XCgAAAFRBU0suVGFza0xpc3Qg JXgAAAAAUklPVC5UTAAlOHggICAAACU4ZCAgAAAAJXMAACU0ZCAAAAAAU1RPUFBFRCAgICAgICAg ICAAAABTTEVFUElORyAgICAgICAgIAAAAE1VVEVYIGJsb2NrZWQgICAgAAAAUkVDRUlWRSBibG9j a2VkICAAAABTRU5EIGJsb2NrZWQgICAgIAAAAFJFUExZIGJsb2NrZWQgICAgAAAARkxBRyBBTlkg YmxvY2tlZCAAAABGTEFHIEFMTCBibG9ja2VkIAAAAE1CT1ggYmxvY2tlZCAgICAgAAAAUlVOTklO RyAgICAgICAgICAAAABQRU5ESU5HICAgICAgICAgIAAAAFVua25vd24gICAgICAgICAgAAAAbWFn aWMgICAgICBwaWQgICAgICAgbmFtZSAgICAgICAgICAgICAgICAgc3RhdGUgICAgICAgICAgICBw cmlvAERldGFpbGVkIFRhc2sgSW5mb3JtYXRpb24AAABTb3JyeTogQ291bGRuJ3QgZ2V0IHN5bWJv bCBhZGRyZXNzZXMAAAAAVEFTS0xJU1QAAAAAVEwAAFRhc2tMaXN0AAAAAEAoPSlfX1JUT1NfUklP VF9fVEFTS19UTAAAAAAAAEocAABKMAAASkQAAEpYAABKbAAASoAAAEqUAABKqAAASrwAAErQAABK 5AAASvhNVEQgVmVyc2lvbiAlcyAgJXMgICVzICAKCgAAVGhyZWFkIERldGFpbHM6CgAAAAAgICAg U3RhY2sgUG9pbnRlciBvZmZzZXQgICAgID0gJWQKAAAgICAgU3RhdHVzIG9mZnNldCAgICAgICAg ICAgID0gJWQKAAAgICAgUHJpb3JpdHkgb2Zmc2V0ICAgICAgICAgID0gJWQKAAAgICAgVGhyZWFk IFBJRCBvZmZzZXQgICAgICAgID0gJWQKAAAgICAgVGhyZWFkIEZMQUdTIG9mZnNldCAgICAgID0g JWQKAAAgICAgUnVuIHF1ZXVlIGVudHJ5IG9mZnNldCAgID0gJWQKAAAgICAgVGhyZWFkIFdhaXRf RGF0YSBvZmZzZXQgID0gJWQKAAAgICAgTVNHIHdhaXRpbmcgb2Zmc2V0ICAgICAgID0gJWQKAAAg ICAgTVNHIHF1ZXVlIGFycmF5IG9mZnNldCAgID0gJWQKAAAgICAgU3RhY2sgYmFzZSBvZmZzZXQg ICAgICAgID0gJWQKAAAgICAgU3RhY2sgU2l6ZSBvZmZzZXQgICAgICAgID0gJWQKAAAgICAgVGhy ZWFkIE5hbWUgb2Zmc2V0ICAgICAgID0gJWQKAABNdXRleCBEZXRhaWxzOgoAICAgIFN1c3BlbmRl ZCBRIG9mZnNldCAgICAgICA9ICVkCgAAUm11dGV4IERldGFpbHM6CgAAAAAgICAgTG9jayBNdXRl eCBvZmZzZXQgICAgICAgID0gJWQKAAAgICAgT3duZXIgUmVmIGNvdW50IG9mZnNldCAgID0gJWQK AAAgICAgT3duZXIgUElEIG9mZnNldCAgICAgICAgID0gJWQKAABNYWlsYm94IERldGFpbHM6CgAA AE1lc3NhZ2UgRGV0YWlsczoKAAAAICAgIFNlbmRlciBQSUQgb2Zmc2V0ICAgICAgICA9ICVkCgAA ICAgIE1lc3NhZ2UgVHlwZSBvZmZzZXQgICAgICA9ICVkCgAAICAgIFBvaW50ZXIgdG8gZGF0YSBv ZmZzZXQgICA9ICVkCgAAICAgIE1lc3NhZ2UgZGF0YSB2YWx1ZSBvZmZzZXQ9ICVkCgAAU2VtYXBo b3JlIERldGFpbHM6CgAgICAgU2VtYXBob3JlIFZhbHVlIG9mZnNldCAgID0gJWQKAAAgICAgU3Rh dGUgb2Zmc2V0ICAgICAgICAgICAgID0gJWQKAAAgICAgU2VtYXBob3JlIG11dGV4IG9mZnNldCAg ID0gJWQKAABUaW1lciBEZXRhaWxzOgoAICAgIENhbGxiYWNrIGZ1bmMgb2Zmc2V0ICAgICA9ICVk CgAAICAgIENhbGxiYWNrIGRhdGEgb2Zmc2V0ICAgICA9ICVkCgAAICAgIExvd2VyIDMyYml0cyBv ZiB0aW1lICAgICA9ICVkCgAAICAgIFVwcGVyIDMyYml0cyBvZiB0aW1lICAgICA9ICVkCgAAICAg IFB0ciB0byBuZXh0IHRpbWVyIG9mZnNldCA9ICVkCgAAVGVzdCBEYXRhICAgIAAAAFRFU1QAAAAA PHRpbWVyPgB0aW1lcl9saXN0X2hlYWQAVi5WaWV3ICh4dGltZXJfdCAqKSV4AAAAUklPVC5USU1M AAAAJTE5ZC4AAAAlcyAAICAgICAgICAgICAgTk9ORSAAAAAgICAgICAgICU4eCAAAAAAVmFyLlZp ZXcgJSVPcGVuIChBVE9NX1RJTUVSICopJXgAAAAAQVQuVElNTABSZW1haW5pbmcgdGlja3MgICAg ICAgICAgAAAAQ2FsbGJhY2sgZnVuY3Rpb24gICAgIAAAQ2FsbGJhY2sgRGF0YSBQdHIAAABTb3Jy eTogTm8gVGltZXJzIGRlZmluZWQAAAAAU29ycnk6IFRpbWVyIG5vdCBmb3VuZC4AVElNRVIAAABU SU0AVElNZXIAAABAKD0pX19SVE9TX1JJT1RfX1RBU0tfVElNAAAAUklPVCBPUwBBUk0AREFUQQAA OlgAAAAAAAAABAAAOjQAAAAAAAAABAAAOjgAAAAAAAAABAAAOjwAAAAAAAAABAAAOkAAAAAAAAAA BAAAOhAAAAAAAAAABAAAOhQAAAAAAAAABAAAOhgAAAAAAAAABAAAOhwAAAAAAAAABAAAOmAAAAAA AAAABAAAOmgAAAAAAAAABAAAOnAAAAAAAAAABAAAOngAAAAAAAAABAAAOoAAAAAAAAAABAAAOogA AAAAAAAABAAAOpAAAAAAAAAABAAAOkgAAAAAAAAABAAAAAAAAAAAAAAAAAAAOhAAAAAAAAAABAAA OhQAAAAAAAAABAAAOhgAAAAAAAAABAAAOhwAAAAAAAAABAAAOiAAAAAAAAAABAAAOiQAAAAAAAAA BAAAOigAAAAAAAAABAAAOiwAAAAAAAAABAAAOjAAAAAAAAAABAAAOjQAAAAAAAAABAAAOjgAAAAA AAAABAAAOjwAAAAAAAAABAAAOkAAAAAAAAAABAAAOkQAAAAAAAAABAAAOkgAAAAAAAAABAAAOkwA AAAAAAAABAAAOlQAAAAAAAAABAAAAAAAAAAAAAAAAAAAOpgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAIAAAAAAAA8pAAAAAAAAAADKEgAAAAEBMgAAASkAAAAAgAAAAAAADzIAAAAAAAAAAMKSAAAAAQC HAAAAnwAADzkAAA87AAAPPAAADz4AAACRAAAPFAAADxcAAA8cAAAPHwAADyQAAAAAAAAAAIAAAAA AAA95AAAAAAAAAADAEYAAAAEAogAAArcAAAAAgAAAAAAAD4IAAAAAAAAAAMARgAAAAQClAAACWAA AD4gAAA+KAAAPiwAAD40AAAJKAAAPFAAAD2sAAAAAAAAPFAAAD28AAA90AAAAAAAAAACAAAAAAAA RPgAAAAAAAAAAw9QAAAABALYAAAVqAAARRwAAEUoAABFLAAARTgAABVwAAA8UAAARKwAAES8AABE zAAAROQAAAAAAAAblAAAG/AAAEWcAAAAAwAAABcAAAAAAABGBAAAGywAAEYEAAAZPAAARgQAABmQ AABGBAAAGjwAAAACAAAAAAAARkgAAAAAAAAAAwBGAAAABANcAAAeyAAARmQAAEZsAABGcAAARngA AB6QAAA8UAAARhQAAEYkAAAAAAAAAAIAAAAAAABHSAAAAAAAAAADKDwAAAAEA9gAACGcAAAAAgAA AAAAAEdsAAAAAAAAAAMUUAAAAAQDwAAAI1QAAEeIAABHlAAAR5gAAEekAAAhZAAAPFAAAEcEAABH GAAARyQAAEcwAAAAAAAAPFAAAD2sAAAAAAAAAAEAUAAAAABLTAAAJrQAAAACAAAAAAAAS2gAAAAA AAAAAQBQAAAAAEsMAAAq2AAAS5AAAEucAABLoAAAS6wAACWYAAAAAQBGAAAABARMAAAs2AAAUJgA AFCYAABQmAAARgQAACzAAABQiAAAAAAAAAACAAAAAAAAUZwAAAAAAAAAAgAAAAAAAFGAAAAAAAAA AAMUWgAAAAQEmAAAMhQAAFG0AABRvAAAUcAAAFHIAAAxdAAAPFAAAFE4AABRVAAAUWwAAAAAAABG BAAAUeQAAFHsAAAAAFQzMkU= ) 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: RIOT OS specific menu ; @Description: - ; @Keywords: riot riot-os menu awareness ; @Author: RIC ; @Copyright: (c) 1989-2018 Lauterbach GmbH, licensed for use with TRACE32(R) only ; -------------------------------------------------------------------------------- ; $Id: riot.m 6805 2021-08-11 07:28:55Z amerkle $ NAME "TASK.&(sMenuName)" IF !MENU.EXIST("TASK.&(sMenuName)") ( add menu ( popup "&sHeader" ( default MENUITEM "Display &Tasks" "TASK.&(sInfix)TaskList" MENUITEM "Display M&ailboxes" ( TASK.&(sInfix)MailBoX ) MENUITEM "Display &Mutexes" ( TASK.&(sInfix)MuTeX ) MENUITEM "Display &Recursive Mutexes" ( TASK.&(sInfix)RMutex ) MENUITEM "Display Ring &Buffers" ( TASK.&(sInfix)RingBuffer ) MENUITEM "Display &Semaphores" ( TASK.&(sInfix)SEMaphore ) MENUITEM "Display &Timers" ( TASK.&(sInfix)TIMer ) separator popup "&Stack Coverage" ( menuitem "&List Stacks" ( TASK.STacK.PATtern 0x5A TASK.STacK.view ) menuitem "Add Task" "TASK.STacK.ADD" menuitem "Remove Task" "TASK.STacK.RM" enable icd()||simulator() menuitem "&Reset Coverage" ( DIALOG.YesNo "Overwrite unused stack space" "with stack fill pattern?" entry &yn if !&yn ( enddo ) TASK.STacK.Init ) ) ) popup "Trace" ( popup "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.&(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 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 "&Help" ( MENUITEM "[:manual]OS Awareness Manual RIOT OS" "HELP __RTOS_RIOT_" ) ) // Timer right-click menu MENU "RIOT.TIML" ( default MENUITEM "Display Timer Structure" ( &address=track.address() &struct="xtimer_t" Var.View %Open %String (&struct *)(&address) ) SEPARATOR MENUITEM "Dump Memory" ( &address=address.offset(track.address()) Data.dump &address /l /dialog ) SEPARATOR MENUITEM "Show Callback Function" ( &magic=address.offset(track.address()) &address=Var.Value(((xtimer_t*)&magic)->callback) List &address ) ) // Mailbox Window right-click menu MENU "RIOT.MBOXL" ( default MENUITEM "Display Detailed Information" ( &address=TRACK.ADDRESS() TASK.&(sInfix)MailBoX &address ) MENUITEM "Display Mailbox Structure" ( &address=track.address() &struct="mbox_t" Var.View %Open %String (&struct *)(&address) ) SEPARATOR MENUITEM "Dump Memory" ( &address=address.offset(track.address()) Data.dump &address /l /dialog ) ) // Recursive Mutex right-click menu MENU "RIOT.RML" ( default MENUITEM "Display Recursive Mutex Structure" ( &address=track.address() &struct="rmutex_t" Var.View %Open %String (&struct *)(&address) ) SEPARATOR MENUITEM "Dump Memory" ( &address=address.offset(track.address()) Data.dump &address /l /dialog ) ) // Semaphore right-click menu MENU "RIOT.SEML" ( default MENUITEM "Display Detailed Information" ( &address=track.address() TASK.&(sInfix)SEMaphore &address ) SEPARATOR MENUITEM "Display Semaphore Structure" ( &address=track.address() &struct="sema_t" Var.View %Open %String (&struct *)(&address) ) SEPARATOR MENUITEM "Dump Memory" ( &address=address.offset(track.address()) Data.dump &address /l /dialog ) ) // RingBuffer right-click menu MENU "RIOT.RBL" ( default MENUITEM "Display RingBuffer Structure" ( &address=track.address() &struct="ringbuffer_t" Var.View %Open %String (&struct *)(&address) ) SEPARATOR MENUITEM "Dump Memory" ( &address=address.offset(track.address()) Data.dump &address /l /dialog ) ) // Mutex right-click menu MENU "RIOT.ML" ( default MENUITEM "Display Detailed Information" ( &address=track.address() TASK.&(sInfix)MuTeX &address ) SEPARATOR MENUITEM "Display Mutex Structure" ( &address=track.address() &struct="mutex_t" Var.View %Open %String (&struct *)(&address) ) SEPARATOR MENUITEM "Dump Memory" ( &address=address.offset(track.address()) Data.dump &address /l /dialog ) ) // Task List right-click menu menu "RIOT.TL" ( default menuitem "Display Detailed Info" ( &address=address.offset(track.address()) TASK.&(sInfix)TaskList &address ) separator menuitem "Display task struct" ( &address=track.address() ;&struct=task.&(sInfix)struct(tcb) &struct="thread_t" Var.View %Open %String (&struct*)(&address) ) separator menuitem "Display Stack Frame" ( &address=address.offset(track.address()) Var.Frame /Locals /Caller /Task &address ) menuitem "Display Registers" ( &address=address.offset(track.address()) Register /Task &address ) menuitem "Switch Context" "Register.TASK address.offset(track.address())" separator menuitem "Add to Stack Cov" "TASK.STK.ADD address.offset(track.address())" menuitem "Rm from Stack Cov" "TASK.STK.RM address.offset(track.address())" separator menuitem "Dump task entry" ( &address=address.offset(track.address()) Data.dump &address /l /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 )