//! DSK5416 Base Seed //# c54xx.cdb 4.60.34 object USERREGS :: MEM { param iComment :: "This object defines space for the DSP's memory mapped registers and can't be deleted" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "This object defines space for the DSP's memory mapped registers and can't be deleted" param base :: 96 param len :: 28 param iAllocHeap :: 0 param iHeapSize :: 1024 param iUserHeapId :: 0 param iHeapId :: @segment_name param iReqHeapCount :: 0 param space :: "data" param iIsModifiable :: 1 } object BIOSREGS :: MEM { param iComment :: "This object defines space for the BIOS on-chip registers and can't be deleted" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "This object defines space for the BIOS on-chip registers and can't be deleted" param base :: 124 param len :: 4 param iAllocHeap :: 0 param iHeapSize :: 1024 param iUserHeapId :: 0 param iHeapId :: @segment_name param iReqHeapCount :: 0 param space :: "data" param iIsModifiable :: 1 } object VECT :: MEM { param iComment :: "This object defines space for the DSP's interrupt vectors and can't be deleted" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "MEM" param iDelMsg :: "This object defines space for the DSP's interrupt vectors and can't be deleted" param base :: 32640 param len :: 128 param iAllocHeap :: 0 param iHeapSize :: 1024 param iUserHeapId :: 0 param iHeapId :: @segment_name param iReqHeapCount :: 0 param space :: "code" param iIsModifiable :: 1 } object IDATA :: MEM { param iComment :: "On-Chip DARAM0-3 in data memory" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param base :: 128 param len :: 28672 param iAllocHeap :: 1 param iHeapSize :: 1024 param iUserHeapId :: 0 param iHeapId :: @segment_name param iReqHeapCount :: 3 param space :: "data" param iIsModifiable :: 1 } object IPROG :: MEM { param iComment :: "On-Chip DARAM0-3 in program memory" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param base :: 28800 param len :: 3840 param iAllocHeap :: 0 param iHeapSize :: 1024 param iUserHeapId :: 0 param iHeapId :: @segment_name param iReqHeapCount :: 0 param space :: "code" param iIsModifiable :: 1 } class Module { prop Visible :: 1 prop Writable :: 1 prop IsConfMod :: (if self.gNumOf > 0 {1} else {0}) prop NoGen :: 0 prop IsDirty :: ($a = self.gDirty, self.gDirty = 0, $a) prop dataSize :: 0 prop error :: # ("Error: ", self.name, $1) prop warning :: ("Warning ...", self.name, $1) prop minBit :: ($a = 0, while (($1 & (1 << $a)) && $a < 32) {++$a}, $a) prop name :: ("") prop numBit :: ($a = $b = 0, while ($a < 32) {if ($1 & (1 << $a)) {++$b} }, $b) } class ObjectMgr { isa Module prop CanCreate :: (if (self.gNumOf < self.maxObjs()) {self.localCanCreate()} else {self.warning("Maximum number of objects already created")}) prop CanDelete :: (if (self.iDelMsg == "ok" || (self.iDelUser == self.gUser)) {if (self.iId >= 0 && self.iIsUsed) {self.localCanDelete()} else {self.warning("Object already deleted")}} else {self.warning(self.iDelMsg)}) prop Create :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanCreate()) == "ok") {if (($a = self.localCreate()) == "ok") {if (self.iIsUsed == 0) {self.mkId(if $0 > 1 {$2} else {-1}), self.iIsUsed = 1, GlobalStatus.gDirty = 1, self.gDirty = 1} } } , (self.gUser = "USER"), $a) prop Delete :: ((self.gUser = (if $0 > 0 {$1} else {"USER"})), if (($a = self.CanDelete()) == "ok") {if (($a = self.localDelete()) == "ok") {self.rmId(self.iId), self.iIsUsed = 0, GlobalStatus.gDirty = 1, self.gDirty = 1} } , (self.gUser = "USER"), $a) prop GetSetOf :: (self.gSetOf) prop GetNumOf :: (self.gNumOf) prop GetObjId :: (self.iId) prop GetPriority :: (self.iId) prop SetPriority :: (self.iId = $1) prop IsConfObj :: (self.iIsUsed) prop localCanCreate :: ("ok") prop localCanDelete :: ("ok") prop localCreate :: ("ok") prop localDelete :: ("ok") prop localInit :: (0) prop isFinite :: (if self.maxObjs() <= GBL.DSPWORDSIZE {1} else {0}) prop mkId :: (if (self.isFinite()) {if ($1 < 0) {self.iId = self.minBit(self.gSetOf)} else {self.iId = $1}, (self.gSetOf |= (1 << self.iId))} else {self.iId = 0}, ++self.gNumOf, self.iId) prop rmId :: (if (self.isFinite()) {self.gSetOf &= ~(1 << self.iId)} , --self.gNumOf) prop maxObjs :: (GBL.DSPWORDSIZE) prop isDriver :: (0) prop SortChildHierView :: (1) } type GlobalStatus { prop NoGen :: 1 prop Visible :: 0 prop Writable :: 0 prop Label :: "Current Configuration Status" prop GlobalIcon :: 101 prop InstanceIcon :: 101 prop GlobalHelpTopic :: (100) prop GlobalPropertyPage :: ("{9D3AD931-847B-11d0-A621-0000C070F3E9}") prop Status :: (# self.SeedVersion, # self.MinStackSize, # self.SysDataSize) global GENLIB :: "bioscfg.dll" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Generation Library" prop NoGen :: 1 prop Visible :: 0 prop Writable :: 0 } global DATE :: "Wed Oct 30 15:20:28 2002" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global GCONFVERS :: "@(#)*** xdc-a05" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global SysDataSize :: = ($a = 0, scan ($i; nil) {if ($i.dataSize() != nil) {$a = $a + $i.dataSize()} }, $a) { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "Estimated Data Size: %d" prop StatusField :: 1 prop NoGen :: 1 } global MinStackSize :: = ($a = 5, $a = $a + 10, $a = $a + 0, $b = 0, scan ($i; CLK) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (5 * $b), $b = 0, scan ($i; HWI) {if ($i.IsConfObj()) {if (($i.function != @HWI_unused) && ($i.function != @RESERVED)) {$b++} } }, $a = $a + (29 * $b), $b = 0, scan ($i; SWI) {if ($i.IsConfObj()) {if ($i.priority > $b) {$b = $i.priority} } }, $a = $a + (29 * $b), $b = 0, scan ($i; PRD) {if ($i.IsConfObj()) {$b |= 1} }, $a = $a + (7 * $b), $a) { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "Est. Min. Stack Size (MAUs): %d" prop StatusField :: 1 prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global ConfigWarnings :: = (if (self.MinStackSize > MEM.STACKSIZE) {"Application stack size is too small; decrease the number of SWI priorities or increase the stack in MEM."} else {"None"}) { prop Label :: "Warnings" prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global SeedVersion :: = "@(#)*** cuda-g38.1x" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } class EModule { isa Module prop IsXMod :: (1) prop Vendor :: ("") prop Version :: ("") } class EObjectMgr { isa ObjectMgr prop IsXMod :: (1) prop Vendor :: ("") prop Version :: ("") } class ModuleFolder { isa Module prop NoGen :: 1 } type SYSTEM { isa ModuleFolder prop Label :: "System" prop GlobalIcon :: 151 prop GlobalHelpTopic :: (500) prop GlobalPropertyPage :: ("{B936FB91-52A5-11d4-947C-0050048381B7}") global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type INS { isa ModuleFolder prop Label :: "Instrumentation" prop GlobalIcon :: 152 prop GlobalHelpTopic :: (501) prop GlobalPropertyPage :: ("{053C8F90-52A6-11d4-947C-0050048381B7}") global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type SCH { isa ModuleFolder prop Label :: "Scheduling" prop GlobalIcon :: 153 prop GlobalHelpTopic :: (502) prop GlobalPropertyPage :: ("{053C8F91-52A6-11d4-947C-0050048381B7}") global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type SYN { isa ModuleFolder prop Label :: "Synchronization" prop GlobalIcon :: 154 prop GlobalHelpTopic :: (503) prop GlobalPropertyPage :: ("{053C8F92-52A6-11d4-947C-0050048381B7}") global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type IOM { isa ModuleFolder prop Label :: "Input/Output" prop GlobalIcon :: 155 prop GlobalHelpTopic :: (504) prop GlobalPropertyPage :: ("{053C8F93-52A6-11d4-947C-0050048381B7}") global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type CSL { isa ModuleFolder prop Label :: "Chip Support Library" prop GlobalIcon :: 156 prop GlobalHelpTopic :: (1000) prop GlobalPropertyPage :: ("{053C8F94-52A6-11d4-947C-0050048381B7}") global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type PROJ { isa ObjectMgr prop name :: "PROJ" prop maxObjs :: 0 prop Label :: "Project Manager" prop GlobalIcon :: 121 prop InstanceIcon :: 122 prop InstanceHelpTopic :: (201) prop GlobalHelpTopic :: (101) prop InstancePropertyPage :: ("{AC3C77D1-890B-11d0-A621-0000C070F3E9}") prop GlobalPropertyPage :: ("{AC3C77D2-890B-11d0-A621-0000C070F3E9}") prop NoGen :: 1 prop Visible :: 0 global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global ALIASALL :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Generate C Names for All Objects" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global IGNOREWARNING :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Ignore Warnings" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global LIBPATH :: ".;../../lib;$(BIOSROOT)/lib" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Library Search Path" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global INCPATH :: ".;../../include;$(BIOSROOT)/include" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Include File Search Path" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global OBJDIR :: "." { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Object file directory" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global EXTEXE :: "out" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Executable File Extension" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global EXTLIB :: "lib" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Library File Extension" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global EXTASM :: "asm" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Assembly Language Source File Extension" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global EXTOBJ :: "obj" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Object File Extension" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst projType :: "Executable" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Executable,Library" prop Label :: "Target Type" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst projName :: "$(PROG)" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Target File Name" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst useRpt :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Use RPT Instruction" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst minimizeSpace :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Optimize for Space over Time" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst tmx :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Avoid TMX Silicon Bugs" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } } type PROJ_FILE { isa ObjectMgr prop Visible :: 0 prop Label :: "Project File Manager" prop InstanceHelpTopic :: (BIOSHELP_PROJ_FILE_INSTANCE) prop GlobalHelpTopic :: (BIOSHELP_PROJ_FILE_GLOBAL) prop InstancePropertyPage :: ("{AC3C77D3-890B-11d0-A621-0000C070F3E9}") prop GlobalPropertyPage :: ("{AC3C77D4-890B-11d0-A621-0000C070F3E9}") prop NoGen :: 1 global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst elemType :: "C Source" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "C Source,ASM Source,Library,Linker Command File" prop Label :: "Input File Type" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst elemName :: "$(PROG)" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Input File Name" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst optLevel :: "register+local+global" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "register,register+local,register+local+global,register+local+global+file" prop Label :: "Optimization Level" prop Visible :: 0 prop Writable :: if self.elemType == "C Source" {1} else {0} prop NoGen :: 1 } inst inline :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Inline Expansion" prop Visible :: 0 prop Writable :: if self.elemType == "C Source" {1} else {0} prop NoGen :: 1 } inst definitions :: "" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Additional Definitions" prop Visible :: 0 prop Writable :: if self.elemType == "C Source" {1} else {0} prop NoGen :: 1 } inst iParent :: 0 { prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } } type GBL { isa Module prop name :: "GBL" prop Label :: "Global Settings" prop IsContainedIn :: SYSTEM prop GenLinkPrologue :: (if ((GBL.ROM == 1) && (GBL.DSPTYPE == 54)) {"%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n%1S-lbios5402.o54%24t/* BIOS ROM library */%0t\n-l%2S%3S\n%15S%4S%5S%6S%12S%7S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _devLibSuffix, _chipStr"} else {"%10S\nSECTIONS {%4t\n.vers (COPY): {} /* version information */%0t\n}\n\n%1S-l%2S%3S\n%15S%4S%5S%6S%12S%7S\0, _autoInitStr, _board, _librarySuffix, _devLibStr, _biosLibStr, _rtdxLibStr, _rtsLibStr, _librarySuffix, _compilerModel, _lnkCmdStr, _lnkCmdFile, _cslLibStr, _chipType, _devLibSuffix, _chipStr"}) prop ConfigurationClass :: "{2779A121-92CC-11d1-A63D-0000C070F3E9}" prop GlobalIcon :: 105 prop InstanceIcon :: 106 prop GlobalHelpTopic :: (103) prop InstanceHelpTopic :: (103) prop InstancePropertyPage :: ("{B7240DE4-AA51-11cf-9BFE-0000C0AC14C7}") prop GlobalPropertyPage :: ("{B7240DE5-AA51-11cf-9BFE-0000C0AC14C7}") prop localInit :: (RTA_toHost.Create("HST"), RTA_fromHost.Create("HST"), RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL")) prop chipcall :: ("ok") prop IsConfMod :: 1 prop L2Check :: (if (self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711) {self.PCC = "mapped", if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} } else {if (self.DSPSUBTYPE == 6400) {self.PCC = "mapped", if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} } else {if (self.C621XL2CONFIGURE == 1) {self.C621XL2CONFIGURE = 0} else {if (self.C641XL2CONFIGURE == 1) {self.C641XL2CONFIGURE = 0, self.L2CONFIGALLOC = 0} }}}, self.L2CacheSizeCheck()) prop C621xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.L2MODEOPTS == "SRAM") {CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "1-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = 0xc000, CACHE_L2.len = 0x4000, if (($e = MEM.checkOverlap(CACHE_L2, CACHE_L2.base, CACHE_L2.base + CACHE_L2.len - 1)) != "ok") {CACHE_L2.base = $a, CACHE_L2.len = $b} , CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "2-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = 0x8000, CACHE_L2.len = 0x8000, if (($e = MEM.checkOverlap(CACHE_L2, CACHE_L2.base, CACHE_L2.base + CACHE_L2.len - 1)) != "ok") {CACHE_L2.base = $a, CACHE_L2.len = $b} , CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "3-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = 0x4000, CACHE_L2.len = 0xc000, if (($e = MEM.checkOverlap(CACHE_L2, CACHE_L2.base, CACHE_L2.base + CACHE_L2.len - 1)) != "ok") {CACHE_L2.base = $a, CACHE_L2.len = $b} , CACHE_L2.Delete("MEM")} else {if (self.L2MODEOPTS == "4-way cache") {CACHE_L2.Create("MEM"), CACHE_L2.base = 0x0000, CACHE_L2.len = 0x10000, if (($e = MEM.checkOverlap(CACHE_L2, CACHE_L2.base, CACHE_L2.base + CACHE_L2.len - 1)) != "ok") {CACHE_L2.base = $a, CACHE_L2.len = $b} , CACHE_L2.Delete("MEM")} }}}}, $e) prop C641xL2CacheSizeCheck :: ($e = "ok", $a = CACHE_L2.base, $b = CACHE_L2.len, if (self.C641XL2MODEOPTS == "4-way cache (0k)") {CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (32k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = 0xf8000, CACHE_L2.len = 0x8000, if (($e = MEM.checkOverlap(CACHE_L2, CACHE_L2.base, CACHE_L2.base + CACHE_L2.len - 1)) != "ok") {CACHE_L2.base = $a, CACHE_L2.len = $b} , CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (64k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = 0xf0000, CACHE_L2.len = 0x10000, if (($e = MEM.checkOverlap(CACHE_L2, CACHE_L2.base, CACHE_L2.base + CACHE_L2.len - 1)) != "ok") {CACHE_L2.base = $a, CACHE_L2.len = $b} , CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (128k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = 0xe0000, CACHE_L2.len = 0x20000, if (($e = MEM.checkOverlap(CACHE_L2, CACHE_L2.base, CACHE_L2.base + CACHE_L2.len - 1)) != "ok") {CACHE_L2.base = $a, CACHE_L2.len = $b} , CACHE_L2.Delete("MEM")} else {if (self.C641XL2MODEOPTS == "4-way cache (256k)") {CACHE_L2.Create("MEM"), CACHE_L2.base = 0xc0000, CACHE_L2.len = 0x40000, if (($e = MEM.checkOverlap(CACHE_L2, CACHE_L2.base, CACHE_L2.base + CACHE_L2.len - 1)) != "ok") {CACHE_L2.base = $a, CACHE_L2.len = $b} , CACHE_L2.Delete("MEM")} }}}}, $e) prop L2CacheSizeCheck :: ($e = "ok", scan ($i; MEM) {if ($i == CACHE_L2) {if (self.C621XL2CONFIGURE) {$e = self.C621xL2CacheSizeCheck()} else {if (self.C641XL2CONFIGURE) {$e = self.C641xL2CacheSizeCheck()} else {if ((self.DSPSUBTYPE == 6211 || self.DSPSUBTYPE == 6711)) {$e = self.C621xL2CacheSizeCheck()} else {if (self.DSPSUBTYPE == 6400) {$e = self.C641xL2CacheSizeCheck()} else {CACHE_L2.base = 0x0, CACHE_L2.len = 0x0, CACHE_L2.Delete("MEM")}}}}} }, $e) prop setCPUClock :: ($e = "ok", if ($1 != self.CPUCLOCK) {$a = self.CPUCLOCK, self.CPUCLOCK = $1, if (GBL.CALLBACKOBJ != nil) {$e = GBL.CALLBACKOBJ.call()} , if ($e != "ok") {self.CPUCLOCK = $a, GBL.CALLBACKOBJ.call()} } , if ($e == "ok") {"ok"} else {self.error($e)}) prop setCSLNAME :: (if (self.CALLMODEL == "near") {if self.CHIPTYPE == "5402" {"csl5402.lib"} else {if self.CHIPTYPE == "5409" {"csl5409.lib"} else {if self.CHIPTYPE == "5409A" {"csl5409A.lib"} else {if self.CHIPTYPE == "5410" {"csl5410.lib"} else {if self.CHIPTYPE == "5410A" {"csl5410A.lib"} else {if self.CHIPTYPE == "5416" {"csl5416.lib"} else {if self.CHIPTYPE == "5420" {"csl5420.lib"} else {if self.CHIPTYPE == "5421" {"csl5421.lib"} else {"CSL not available"}}}}}}}}} else {if self.CHIPTYPE == "5402" {"csl5402x.lib"} else {if self.CHIPTYPE == "5409" {"csl5409x.lib"} else {if self.CHIPTYPE == "5409A" {"csl5409Ax.lib"} else {if self.CHIPTYPE == "5410" {"csl5410x.lib"} else {if self.CHIPTYPE == "5410A" {"csl5410Ax.lib"} else {if self.CHIPTYPE == "5416" {"csl5416x.lib"} else {if self.CHIPTYPE == "5420" {"csl5420x.lib"} else {if self.CHIPTYPE == "5421" {"csl5421x.lib"} else {"CSL not available"}}}}}}}}}) prop _cint00Str :: "-u_c_int00 %24t/* link with alternate boot.obj */%0t\n" prop _autoInitStr :: "" prop _board :: (if (HST.RTDX == 1) {"lnkrtdx"} else {if (HST.DSM == 1) {"lnkdsm"} else {if (HST.EVM54 == 1) {"lnkevm54"} else {"lnknone"}}}) prop _dsptype :: GBL.DSPTYPE prop _compilerModel :: if self.CALLMODEL == "near" {""} else {"_ext"} prop _librarySuffix :: if self.CALLMODEL == "near" {".a54"} else {".a54f"} prop _rtsLibStr :: "-lrtsbios%8S%24t/* C and C++ run-time library support */%0t\n" prop _rtdxLibStr :: if RTDX.RTDXTYPE == "JTAG" {"-lrtdx%9S.lib %24t/* RTDX support */%0t\n"} else {"-lrtdxsim%9S.lib %24t/* RTDX support */%0t\n"} prop _devLibSuffix :: if self.CALLMODEL == "near" {".a54"} else {".a54f"} prop _chipStr :: if GBL.CHIPTYPE == "5441" {"-lchip5441%8S %24t/* 5441 support */%0t\n"} else {""} prop _biosLibStr :: if self.ENABLEINST {"-lbiosi%8S %24t/* DSP/BIOS support */%0t\n"} else {"-lbios%8S %24t/* DSP/BIOS support */%0t\n"} prop _devLibStr :: "-ldrivers%14S %24t/* device drivers support */%0t\n" prop _lnkCmdFile :: MEM.LNKCMDFILE prop _lnkCmdStr :: (if (MEM.LNKCMDFILE == "") {""} else {"-l%11S %24t/* User Specified Linker cmd file */%0t\n"}) prop _cslLibStr :: (if self.SUPPORTCSL {if self.CALLMODEL == "near" {"-lcsl%13S.lib\n"} else {"-lcsl%13Sx.lib\n"}} else {""}) prop _chipType :: self.CHIPTYPE prop AllocType :: (if (self.SUPPORTCSL) {"1\0, _cslAllocDesc, _cslmemSeg, _placement"} ) prop _cslAllocDesc :: ("%8t .csldata: {%12t\n *(.csldata)%8t\n }") prop _cslmemSeg :: MEM.BSSSEG prop _placement :: (0x7ffff / 2) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global PRODUCT :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 prop Visible :: 0 prop Writable :: 1 prop EnvField :: 1 } global CALLBACKOBJ :: CLK { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global CHIPCHAIN :: nil { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global TRACE :: "CD-01234567" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Trace Mask" prop NoGen :: 1 prop Visible :: 0 prop Writable :: 0 } global BOARD :: "c54xx" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Target Board Name" prop JSName :: "BOARDNAME" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global ROM :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Link to ROM Library" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global CPUCLOCK :: 320.000000 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global MIPS :: 160.000000 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: 0x04 prop Format :: "%.4f" prop Label :: "DSP Speed In MHz (CLKOUT)" prop JSName :: "CLKOUT" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: ($a = self.MIPS, $b = if (GBL.DSPTYPE == 62) {$1} else {$1 * 2}, $e = "ok", self.MIPS = $1, if (($e = self.setCPUClock($b)) != "ok") {self.MIPS = $a} , $e) } global OSTYPE :: "BIOS" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "BIOS" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global DSPTYPE :: 54 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "DSP Major Type" prop JSName :: "DSPTYPE" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global DSPSUBTYPE :: 54 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "DSP Type" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 } global CHIPTYPE :: "5416" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "5401,5402,5409,5409A,5410,5410A,5416,5420,5421,,5441,5471,other" prop Label :: "Chip Support Library (CSL)" prop JSName :: "CHIPTYPE" prop NoGen :: 1 prop Visible :: 1 prop Writable :: 1 prop Set :: (self.CHIPTYPE = $1, if ($1 == "other") {self.DISPCALLCSLCFGINIT = 0} , $e = "ok", if (GBL.CHIPCHAIN != nil) {$e = GBL.CHIPCHAIN.chipcall()} , $e) } global CHIPTYPE5441 :: = if self.CHIPTYPE == "5441" {1} else {0} { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global CHIPPRSC :: = if (self.CHIPTYPE == "5441" || self.CHIPTYPE == "5440" || self.CHIPTYPE == "5471") {1} else {0} { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global CSLNAME :: = self.setCSLNAME() { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Chip Support Library Name" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 } global DISPCALLCSLCFGINIT :: = self.CHIPTYPE != "other" { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Call CSL_cfgInit Initialization routine" prop Visible :: 0 prop Writable :: self.SUPPORTCSL prop NoGen :: 1 } global DSPNAME :: "TMS320C54XX" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global LOWPMST :: 44 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%02x" prop Style :: 0x01 | 0x02 prop Label :: "PMST(6-0)" prop JSName :: "LOWERPMST" prop Set :: (if ((($1 & 0x20) == 0) && (self.CALLMODEL != "near")) {self.error("Cannot set OVLY bit (bit 5) to 0 when far call model is selected")} else {self.LOWPMST = ($1 & 0x7f), "ok"}) prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global PMST :: = ((VECT.base & 0xff80) | GBL.LOWPMST) { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Style :: 0x01 | 0x02 prop Label :: "PMST(15-0)" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 0 } global SWWSR :: 17554 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Style :: 0x01 | 0x02 prop Label :: "SWWSR" prop JSName :: "SWWSR" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } global BSCR :: 40962 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Style :: 0x01 | 0x02 prop Label :: "BSCR" prop JSName :: "BSCR" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } global MODIFYCLKMD :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Modify CLKMD" prop JSName :: "MODIFYCLKMD" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop Set :: (if ($1 != self.MODIFYCLKMD) {self.MODIFYCLKMD = $1} , "ok") } global CLKMD :: 36871 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Style :: 0x01 | 0x02 prop Label :: "CLKMD - (PLL) Clock Mode Register" prop JSName :: "CLKMD" prop Visible :: 1 prop Writable :: self.MODIFYCLKMD prop NoGen :: 0 } global DSPARITHMETIC :: = (if (GBL.DSPTYPE == 62 && (GBL.DSPSUBTYPE / 100) == 67) {"FLOAT"} else {"FIXED"}) { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "FIXED,FLOAT" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global DSPWORDSIZE :: = (if (GBL.DSPTYPE == 30 || GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62) {32} else {16}) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "DSP Word Size" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global DSPCHARSIZE :: = (if GBL.DSPTYPE == 62 {8} else {GBL.DSPWORDSIZE}) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "DSP Byte Size" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global DATAPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {16} else {if (GBL.DSPTYPE == 55) {if (GBL.MEMORYMODEL == "SMALL") {16} else {23}} else {0}}}) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop iComment :: "Size of the Data Pointer" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global CODEPTRSIZE :: = (if (GBL.DSPTYPE == 62) {32} else {if (GBL.DSPTYPE == 54) {if (GBL.CALLMODEL == "near") {16} else {24}} else {if (GBL.DSPTYPE == 55) {24} else {0}}}) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop iComment :: "Size of Code Pointer" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global CALLMODEL :: "far" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "near,far" prop Label :: "Function Call Model" prop JSName :: "CALLMODEL" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: (if ($1 == "far") {if ((self.LOWPMST & 0x20) == 0) {self.error("To use the far model the OVLY bit in PMST (bit 5) must be set to 1")} else {if (CLK.gNumOf <= 0) {CLK.HOOKFXN = @CLK_F_frete} , self.CALLMODEL = $1, if (SWI.gNumOf > 0) {SWI.EXECFXN = @SWI_F_exec} , "ok"}} else {if (CLK.gNumOf <= 0) {CLK.HOOKFXN = @CLK_F_rete} , self.CALLMODEL = $1, if (SWI.gNumOf > 0) {SWI.EXECFXN = @SWI_F_exec} , "ok"}) } global AUTOINIT :: "ROM" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "ROM,RAM" prop Label :: "C Autoinitialization Model" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global USERINIT :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Call User Init Function" prop JSName :: "CALLUSERINITFXN" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop Set :: (if ($1 == 0) {self.USERINITFXN = @_FXN_F_nop, self.USERINIT = $1} else {self.USERINIT = $1}, "ok") } global USERINITFXN :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "User Init Function" prop JSName :: "USERINITFXN" prop Visible :: 1 prop Writable :: self.USERINIT prop NoGen :: 0 } global OLDAUTOCALCULATE :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "previous value for autocalculate" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global ENABLEINST :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable Real Time Analysis" prop JSName :: "ENABLEINST" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop Set :: (if ($1 != self.ENABLEINST) {if ($1) {RTA_toHost.Create("HST"), RTA_fromHost.Create("HST"), RTA_dispatcher.Create("HST"), IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = self.OLDAUTOCALCULATE} else {RTA_toHost.Delete("HST"), RTA_fromHost.Delete("HST"), RTA_dispatcher.Delete("HST"), IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), self.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0}, self.ENABLEINST = $1} , "ok") } global CGENERATE :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Do C Generation" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global FARMODE :: = if self.CALLMODEL == "near" {0} else {1} { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global SUPPORTCSL :: = self.CHIPTYPE != "other" { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 0 } global ENABLEALLTRC :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable All TRC Trace Event Classes" prop JSName :: "ENABLEALLTRC" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: (if ($1) {self.TRCMASKVALUE = 0xDBEF} else {self.TRCMASKVALUE = 0x4000}, self.ENABLEALLTRC = $1, "ok") } global TRCMASKVALUE :: 16384 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 0 } global CALLCSLCFGINIT :: = self.DISPCALLCSLCFGINIT { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 0 } global CDBPATH :: "" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "CDB search path in COFF file" prop JSName :: "CDBPATH" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } } type MEM { isa ObjectMgr prop Label :: "MEM - Memory Section Manager" prop name :: "MEM" prop DependsOn :: "SEM" prop IsContainedIn :: SYSTEM prop GlobalIcon :: 115 prop InstanceIcon :: 116 prop GlobalHelpTopic :: (108) prop InstanceHelpTopic :: (208) prop InstancePropertyPage :: ("{3D658E70-05E7-11d0-BD44-0020AFEE33C8}") prop GlobalPropertyPage :: ("{3D658E71-05E7-11d0-BD44-0020AFEE33C8}") prop GenLinkPrologue :: (if (GBL.DSPTYPE == 55) {"-stack 0x%1x\n-sysstack 0x%2x\n\nSECTIONS { .sysstack : fill = 0xfeeb {%12t\nGBL_sysstackbeg = .;\n*(.sysstack)\nGBL_sysstackend = GBL_sysstackbeg + 0x%2x -1 ;%12t\n _HWI_SYSSTKTOP = GBL_sysstackbeg; %12t\n _HWI_SYSSTKBOTTOM = (GBL_sysstackend+1);\n%8t} > %3s}%0t\n\nMEMORY {%4t\0, _cmd55stksz, _cmd55systksz, _sysstackSeg"} else {"-stack 0x%1x\nMEMORY {%4t\0, _stackSize"}) prop _stackSize :: MEM.STACKSIZE prop AllocType :: (if (GBL.FARMODE == 1) {if (self.REUSE == 0 && self.USERCMD == 0) {"20\0, _argsString, _argsSeg, _midPlace, \ _sysdataString, _sysdataSeg, _thirdPlace, \ _trcinitString, _trcinitSeg, _midPlace, \ _gblinitString, _gblinitSeg, _midPlace, \ _memObjString, _memObjSeg, _midPlace, \ _sysinitString, _initSeg, _sysinitPlace, \ _sysregsString, _regsSeg, _midPlace, \ _bssString, _bssSeg, _firstPlace, \ _farString, _farSeg, _secondPlace, \ _cinitString, _cinitSeg, _midPlace, \ _pinitString, _pinitSeg, _midPlace, \ _dataString, _dataSeg, _midPlace, \ _constString, _constSeg, _midPlace, \ _switchString, _switchSeg, _midPlace, \ _cioString, _cioSeg, _midPlace, \ _textString, _textSeg, _midPlace, \ _frtString, _frtSeg, _midPlace, \ _biosString, _biosSeg, _midPlace, \ _biosNORPTBString, _biosNORPTBSeg, _midPlace, \ _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"10\0, _argsString, _argsSeg, _midPlace, \ _sysdataString, _sysdataSeg, _thirdPlace, \ _trcinitString, _trcinitSeg, _midPlace, \ _gblinitString, _gblinitSeg, _midPlace, \ _memObjString, _memObjSeg, _midPlace, \ _sysinitString, _initSeg, _sysinitPlace, \ _sysregsString, _regsSeg, _midPlace, \ _biosString, _biosSeg, _midPlace, \ _biosNORPTBString, _biosNORPTBSeg, _midPlace, \ _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, \ _sysdataString, _sysdataSeg, _thirdPlace, \ _trcinitString, _trcinitSeg, _midPlace, \ _gblinitString, _gblinitSeg, _midPlace, \ _memObjString, _memObjSeg, _midPlace, \ _sysregsString, _regsSeg, _midPlace, \ _bssString, _bssSeg, _firstPlace, \ _farString, _farSeg, _secondPlace, \ _cinitString, _cinitSeg, _midPlace, \ _pinitString, _pinitSeg, _midPlace, \ _dataString, _dataSeg, _midPlace, \ _constString, _constSeg, _midPlace, \ _switchString, _switchSeg, _midPlace, \ _cioString, _cioSeg, _midPlace, \ _textString, _textSeg, _midPlace, \ _frtString, _frtSeg, _midPlace, \ _biosString, _biosSeg, _midPlace, \ _biosNORPTBString, _biosNORPTBSeg, _midPlace, \ _stackString, _stackSeg, _midPlace"} else {"9\0, _argsString, _argsSeg, _midPlace, \ _sysdataString, _sysdataSeg, _thirdPlace, \ _trcinitString, _trcinitSeg, _midPlace, \ _gblinitString, _gblinitSeg, _midPlace, \ _memObjString, _memObjSeg, _midPlace, \ _sysregsString, _regsSeg, _midPlace, \ _biosString, _biosSeg, _midPlace, \ _biosNORPTBString, _biosNORPTBSeg, _midPlace, \ _stackString, _stackSeg, _midPlace"}}}} else {if (self.REUSE == 0 && self.USERCMD == 0) {"19\0, _argsString, _argsSeg, _midPlace, \ _sysdataString, _sysdataSeg, _thirdPlace, \ _trcinitString, _trcinitSeg, _midPlace, \ _gblinitString, _gblinitSeg, _midPlace, \ _memObjString, _memObjSeg, _midPlace, \ _sysinitString, _initSeg, _sysinitPlace, \ _sysregsString, _regsSeg, _midPlace, \ _bssString, _bssSeg, _firstPlace, \ _farString, _farSeg, _secondPlace, \ _cinitString, _cinitSeg, _midPlace, \ _pinitString, _pinitSeg, _midPlace, \ _dataString, _dataSeg, _midPlace, \ _constString, _constSeg, _midPlace, \ _switchString, _switchSeg, _midPlace, \ _cioString, _cioSeg, _midPlace, \ _textString, _textSeg, _midPlace, \ _frtString, _frtSeg, _midPlace, \ _biosString, _biosSeg, _midPlace, \ _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 0 && self.USERCMD == 1) {"9\0, _argsString, _argsSeg, _midPlace, \ _sysdataString, _sysdataSeg, _thirdPlace, \ _trcinitString, _trcinitSeg, _midPlace, \ _gblinitString, _gblinitSeg, _midPlace, \ _memObjString, _memObjSeg, _midPlace, \ _sysinitString, _initSeg, _sysinitPlace, \ _sysregsString, _regsSeg, _midPlace, \ _biosString, _biosSeg, _midPlace, \ _stackString, _stackSeg, _midPlace"} else {if (self.REUSE == 1 && self.USERCMD == 0) {"18\0, _argsString, _argsSeg, _midPlace, \ _sysdataString, _sysdataSeg, _thirdPlace, \ _trcinitString, _trcinitSeg, _midPlace, \ _gblinitString, _gblinitSeg, _midPlace, \ _memObjString, _memObjSeg, _midPlace, \ _sysregsString, _regsSeg, _midPlace, \ _bssString, _bssSeg, _firstPlace, \ _farString, _farSeg, _secondPlace, \ _cinitString, _cinitSeg, _midPlace, \ _pinitString, _pinitSeg, _midPlace, \ _dataString, _dataSeg, _midPlace, \ _constString, _constSeg, _midPlace, \ _switchString, _switchSeg, _midPlace, \ _cioString, _cioSeg, _midPlace, \ _textString, _textSeg, _midPlace, \ _frtString, _frtSeg, _midPlace, \ _biosString, _biosSeg, _midPlace, \ _stackString, _stackSeg, _midPlace"} else {"8\0, _argsString, _argsSeg, _midPlace, \ _sysdataString, _sysdataSeg, _thirdPlace, \ _trcinitString, _trcinitSeg, _midPlace, \ _gblinitString, _gblinitSeg, _midPlace, \ _memObjString, _memObjSeg, _midPlace, \ _sysregsString, _regsSeg, _midPlace, \ _biosString, _biosSeg, _midPlace, \ _stackString, _stackSeg, _midPlace"}}}}) prop _firstPlace :: 0 prop _secondPlace :: 0 + 1 prop _thirdPlace :: 0 + 2 prop _midPlace :: (0x7ffff / 2) prop _sysinitPlace :: (0x7ffff / 2) prop _argsString :: ("%8t .args: fill=0 {%12t\n *(.args)\n . += 0x%1x;%8t\n }\0, _argsSize") prop _bssString :: ("%8t .bss: {}") prop _farString :: ("%8t .far: {}") prop _cinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CINITSEG == MEM.LOADCINITSEG) {"%8t .cinit: {}"} else {"%8t .cinit: {} load > %1s, run\0, _loadcinitSeg"}} else {"%8t .cinit: {}"}) prop _pinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.PINITSEG == MEM.LOADPINITSEG) {"%8t .pinit: {}"} else {"%8t .pinit: {} load > %1s, run\0, _loadpinitSeg"}} else {"%8t .pinit: {}"}) prop _trcinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TRCINITSEG == MEM.LOADTRCINITSEG) {"%8t .trcdata: {}"} else {"%8t .trcdata: {} load > %1s, run\0, _loadtrcinitSeg"}} else {"%8t .trcdata: {}"}) prop _gblinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSINITSEG == MEM.LOADBIOSINITSEG) {"%8t .gblinit: {}"} else {"%8t .gblinit: {} load > %1s, run\0, _loadgblinitSeg"}} else {"%8t .gblinit: {}"}) prop _dataString :: ("%8t .data: {}") prop _constString :: (if (self.ENABLELOADSEG == 1) {if (MEM.CONSTSEG == MEM.LOADCONSTSEG) {"%8t .const: {}"} else {"%8t .const: {} load > %1s, run\0, _loadconstSeg"}} else {"%8t .const: {}"}) prop _switchString :: (if (self.ENABLELOADSEG == 1) {if (MEM.SWITCHSEG == MEM.LOADSWITCHSEG) {"%8t .switch: {}"} else {"%8t .switch: {} load > %1s, run\0, _loadswitchSeg"}} else {"%8t .switch: {}"}) prop _sysmemString :: ("%8t .sysmem: {}") prop _cioString :: ("%8t .cio: {}") prop _memObjString :: ("%8t .mem: {}") prop _sysdataString :: (if ((GBL.ROM == 0) && (GBL.DSPTYPE == 54)) {"%8t .sysdata: align = 128 {%12t\n GBL_A_SYSPAGE = .;\n GBL_A_SYSDP = GBL_A_SYSPAGE >> 7;\n %8t }"} else {"%8t .sysdata: {}"}) prop _sysinitString :: (if (self.ENABLELOADSEG == 1) {if (MEM.INITSEG == MEM.LOADINITSEG) {"%8t .sysinit: {}"} else {"%8t .sysinit: {} load > %1s, run\0, _loadinitSeg"}} else {"%8t .sysinit: {}"}) prop _sysregsString :: ("%8t .sysregs: {}") prop _textString :: (if (self.ENABLELOADSEG == 1) {if (MEM.TEXTSEG == MEM.LOADTEXTSEG) {"%8t .text: {}"} else {"%8t .text: {} load > %1s, run\0, _loadtextSeg"}} else {"%8t .text: {}"}) prop _frtString :: ("%8t frt: {}") prop _biosString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSSEG == MEM.LOADBIOSSEG) {"%8t .bios: {}"} else {"%8t .bios: {} load > %1s, run\0, _loadbiosSeg"}} else {"%8t .bios: {}"}) prop _biosNORPTBString :: (if (self.ENABLELOADSEG == 1) {if (MEM.BIOSNORPTBSEG == MEM.LOADBIOSNORPTBSEG) {"%8t .bios:.norptb: {}"} else {"%8t .bios:.norptb: {} load > %1s, run\0, _loadbiosNORPTBSeg"}} else {"%8t .bios:.norptb: {}"}) prop _stackString :: (if (GBL.DSPTYPE == 62) {"%8t .stack: fill=0xc0ffee {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%12t\n _HWI_STKBOTTOM = GBL_stackbeg + 0x%1x - 4 & ~7;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize, _stackSize"} else {if (GBL.DSPTYPE == 54) {"%8t .stack: fill=0xbeef {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = ((GBL_stackbeg + 0x%1x - 1) & 0xfffe) ;%8t\n _HWI_STKBOTTOM = GBL_stackend;%12t\n _HWI_STKTOP = GBL_stackbeg;%8t\n }\0, _stackSize"} else {if (GBL.DSPTYPE == 55) {"%8t .stack: fill=0xbeef {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = (GBL_stackbeg + 0x%1x - 1) ;%12t\n _HWI_STKBOTTOM = (GBL_stackend+1);%12t\n _HWI_STKTOP = (GBL_stackbeg);%8t\n }\0, _cmd55stksz"} else {"%8t .stack: fill=0xbeef {%12t\n GBL_stackbeg = .;\n *(.stack)\n GBL_stackend = GBL_stackbeg + 0x%1x - 1;%8t\n }\0, _cmd55stksz"}}}) prop _memHdrSize :: 8 prop GenLinkEpilogue :: ("%0t}") prop _stackSeg :: MEM.STACKSEG prop _textSeg :: MEM.TEXTSEG prop _frtSeg :: MEM.TEXTSEG prop _biosSeg :: MEM.BIOSSEG prop _biosNORPTBSeg :: MEM.BIOSNORPTBSEG prop _dataSeg :: MEM.DATASEG prop _cioSeg :: MEM.CIOSEG prop _sysmemSeg :: MEM.SYSMEMSEG prop _constSeg :: MEM.CONSTSEG prop _initSeg :: MEM.INITSEG prop _pinitSeg :: MEM.PINITSEG prop _trcinitSeg :: MEM.TRCINITSEG prop _gblinitSeg :: MEM.BIOSINITSEG prop _regsSeg :: BIOSREGS prop _sysdataSeg :: MEM.SYSDATASEG prop _argsSeg :: MEM.ARGSSEG prop _argsSize :: MEM.ARGSSIZE prop _bssSeg :: MEM.BSSSEG prop _farSeg :: MEM.FARSEG prop _cinitSeg :: MEM.CINITSEG prop _memObjSeg :: MEM.CFGOBJSEG prop _switchSeg :: MEM.SWITCHSEG prop _loadtextSeg :: MEM.LOADTEXTSEG prop _loadbiosSeg :: MEM.LOADBIOSSEG prop _loadbiosNORPTBSeg :: MEM.LOADBIOSNORPTBSEG prop _loadconstSeg :: MEM.LOADCONSTSEG prop _loadinitSeg :: MEM.LOADINITSEG prop _loadpinitSeg :: MEM.LOADPINITSEG prop _loadtrcinitSeg :: MEM.LOADTRCINITSEG prop _loadgblinitSeg :: MEM.LOADBIOSINITSEG prop _loadcinitSeg :: MEM.LOADCINITSEG prop _loadswitchSeg :: MEM.LOADSWITCHSEG prop AllocInst :: (if (self.iAllocHeap == 1) {"1\0, _instAllocDesc, _objMemSeg, _placement"} ) prop _instAllocDesc :: (if self.INITSEG.iAllocHeap && self.REUSE && self.INITSEG == self {"%8t .%0r$heap: {%12t\n %0r$B = .;\n%12t\n _%0r_base = .;\n . += 0x%2x;\n *(.sysinit)\n %0r$L = . + 0x%3x - %0r$B;\n _%0r_length = . + 0x%3x - %0r$B;\n . += 0x%1x;%8t\n }\0, _heapsize, _sysinitgap, _heaplen"} else {"%8t .%0r$heap: {%12t\n %0r$B = .;\n _%0r_base = .;\n %0r$L = 0x%2x;\n _%0r_length = 0x%2x;\n . += 0x%1x;%8t\n }\0, _heapsize, _heaplen"}) prop _objMemSeg :: self prop _placement :: 0x7ffff - 1 prop _heapsize :: (self.iHeapSize) prop _heaplen :: (self.iHeapSize) prop _sysinitgap :: 2 * 1 prop GenInstLink :: (if GBL.DSPTYPE == 62 {"%0r %16t: origin = 0x%1x, %40tlen = 0x%2x%4t\0, _origin, _len"} else {if GBL.DSPTYPE == 55 {"%0r: %16torigin = 0x%1x, %40tlen = 0x%2x%4t\0, _cmd55origin, _cmd55len"} else {"PAGE %3d: %14t%0r: %26torigin = 0x%1x, %50tlen = 0x%2x%4t\0, _origin, _len, _page"}}) prop localInit :: ($d = "ok", scan ($i; MEM) {if ($i.space == "code" && $i.iAllocHeap == 1) {$d = self.error("Code memory cannot have a heap")} }, if (self.SEGZERO.iAllocHeap == 1) {self.SEGZERO.iReqHeapCount++} else {$d = self.error("Segment for DSP/BIOS objects must be a memory segment with a heap")}, if (self.MALLOCSEG.iAllocHeap == 1) {self.MALLOCSEG.iReqHeapCount++} else {$d = self.error("Segment for malloc()/free() must be a memory segment with a heap")}, $d) prop _page :: (self.page) prop _origin :: (self.base) prop _len :: (self.len) prop maxObjs :: (32767) prop codeMember :: (if GBL.DSPTYPE == 62 {$1.space == "code" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space == "code"} else {$1.space == "code/data"}}) prop dataMember :: (if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {(($1.space != "code") && ($1 != MEM_NULL)) && $1.space != "io"} else {(($1.space == "code/data") && ($1 != MEM_NULL))}}) prop dataNullMember :: (if GBL.DSPTYPE == 62 {$1.space == "data" || $1.space == "code/data"} else {if GBL.DSPTYPE == 54 {$1.space != "code" && $1.space != "io"} else {$1.space == "code/data"}}) prop dataCodeMember :: (if GBL.DSPTYPE == 62 {($1.space == "data" || $1.space == "code/data") && $1 != MEM_NULL} else {if GBL.DSPTYPE == 54 {$1.space == "code" && $1 != MEM_NULL} else {$1.space == "code/data" && $1 != MEM_NULL}}) prop memWritable :: (self.iIsModifiable && self.iDelUser != "MEM") prop checkOverlap :: ($f = if $3 == $2 - 1 {$2} else {$3}, $d = "ok", if (self.doCheckOverlap) {scan ($i; MEM) {if ($i != $1 && (GBL.DSPTYPE == 62 || GBL.DSPTYPE == 55 || $i.space == $1.space)) {if (!($i == CACHE_L2 && GBL.L2CONFIGURE == 0)) {$b = $i.base, $e = $i.base + $i.len - 1, if ($f >= $b && $2 <= $e) {$d = self.error("Segment will overlap with another memory segment or cache configuration")} } } }} , $d) prop checkHeapId :: ($e = "ok", scan ($i; MEM) {if ($i.iAllocHeap == 1 && $i.iUserHeapId == 1 && $i.iHeapId == $1 && $i.iHeapId != @segment_name) {$e = self.error("This identifier label is already in use"), break} }, $e) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 8 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumHeap :: = ($a = 0, scan ($i; MEM) {if ($i != MEM_NULL) {$a += $i.iAllocHeap} }, $a) { prop NoGen :: 0 } global REUSE :: = (if self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 {self.SAVEREUSE} else {0}) { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Reuse Startup Code Space" prop JSName :: "REUSECODESPACE" prop Visible :: 1 prop Writable :: self.INITSEG.space != "code" && self.INITSEG.iAllocHeap == 1 prop NoGen :: 1 prop Set :: (self.SAVEREUSE = $1, "ok") } global SAVEREUSE :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } global doCheckOverlap :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global MAPSELECT :: "Map 1" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Map Mode" prop JSName :: "MAPMODE" prop Enum :: "Map 0,Map 1" prop Visible :: GBL.DSPTYPE == 62 prop Writable :: 0 && GBL.DSPSUBTYPE != 6211 && GBL.DSPSUBTYPE != 6711 prop NoGen :: 1 prop Set :: (if ($1 != self.MAPSELECT) {if ($1 == "Map 0") {scan ($i; MEM) {if ($i.base >= 0x00000000 && $i.base <= 0x003fffff) {$i.base = $i.base + 0x01400000 - 0x00000000} else {if ($i.base >= 0x00400000 && $i.base <= 0x017fffff) {$i.base = $i.base + 0x00000000 - 0x00400000} }}} , if ($1 == "Map 1") {scan ($i; MEM) {if ($i.base >= 0x01400000 && $i.base <= 0x017fffff) {$i.base = $i.base + 0x00000000 - 0x01400000} else {if ($i.base >= 0x00000000 && $i.base <= 0x013fffff) {$i.base = $i.base + 0x00400000 - 0x00000000} }}} , if ($1 != "Map 0" && $1 != "Map 1") {self.error("Invalid memory map selection")} } , self.MAPSELECT = $1, "ok") } global ARGSSIZE :: 4 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Style :: 0x01 | 0x02 prop Label :: "Argument Buffer Size" prop JSName :: "ARGSSIZE" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: (if ($1 < 4) {self.error("The 'arguments' section must have at least 4 words.")} else {self.ARGSSIZE = $1, "ok"}) } global ARGSSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.dataMember($1) prop Label :: "Argument Buffer Section (.args)" prop JSName :: "ARGSSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "BIOS Data" } global BIOSSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.codeMember($1) prop Label :: "BIOS Code Section (.bios)" prop JSName :: "BIOSSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "BIOS Code" } global STACKSIZE :: 256 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Style :: 0x01 | 0x02 prop Label :: "Stack Size (MAUs)" prop JSName :: "STACKSIZE" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: (if ($1 < GlobalStatus.MinStackSize) {self.error("The software stack must be at least as large as the Estimated Minimum Stack Size.")} else {self.STACKSIZE = $1, "ok"}) } global USERCMD :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "User .cmd File For Non-DSP/BIOS Sections" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Compiler Sections" } global STACKSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.dataMember($1) prop Label :: "Stack Section (.stack)" prop JSName :: "STACKSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "BIOS Data" prop Set :: (if (GBL.DSPTYPE == 55) {(MEM.STACKSEG = $1), (MEM.SYSSTACKSEG = $1)} else {(MEM.STACKSEG = $1)}, "ok") } global ENABLELOADSEG :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Specify Separate Load Addresses" prop JSName :: "ENABLELOADADDR" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Load Address" } global LOADBIOSSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.codeMember($1) prop Label :: "Load Address - BIOS Code Section (.bios)" prop JSName :: "LOADBIOSSEG" prop Visible :: 1 prop Writable :: (self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global BIOSNORPTBSEG :: IPROG { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.codeMember($1) && (($1.base + $1.len) <= 0x8000)) prop Label :: "BIOS NORPTB Section (.bios:.norptb)" prop JSName :: "BIOSNORPTBSEG" prop Visible :: (GBL.FARMODE == 1) prop Writable :: (GBL.FARMODE == 1) prop NoGen :: 1 prop TabName :: "BIOS Code" } global LOADBIOSNORPTBSEG :: IPROG { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.codeMember($1) && (($1.base + $1.len) <= 0x8000)) prop Label :: "Load Address - BIOS NORPTB Section (.bios:.norptb)" prop JSName :: "LOADBIOSNORPTBSEG" prop Visible :: (GBL.FARMODE == 1) prop Writable :: (self.ENABLELOADSEG == 1) && (GBL.FARMODE == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global INITSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.codeMember($1) prop Label :: "Startup Code Section (.sysinit)" prop JSName :: "SYSINITSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "BIOS Code" } global LOADINITSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.codeMember($1) prop Label :: "Load Address - Startup Code Section (.sysinit)" prop JSName :: "LOADSYSINITSEG" prop Visible :: 1 prop Writable :: (self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global BIOSINITSEG :: IPROG { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.dataCodeMember($1) prop Label :: "DSP/BIOS Init Tables (.gblinit)" prop JSName :: "GBLINITSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "BIOS Data" } global TRCINITSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.dataCodeMember($1) prop Label :: "TRC Initial Value (.trcdata)" prop JSName :: "TRCDATASEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "BIOS Data" } global LOADBIOSINITSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.dataCodeMember($1) prop Label :: "Load Address - DSP/BIOS Init Tables (.gblinit)" prop JSName :: "LOADGBLINITSEG" prop Visible :: 1 prop Writable :: (self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global LOADTRCINITSEG :: = self.TRCINITSEG { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.dataCodeMember($1) prop Label :: "Load Address - TRC Initial Value (.trcdata)" prop JSName :: "LOADTRCDATASEG" prop Visible :: 1 prop Writable :: (self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global SYSDATASEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.dataMember($1) prop Label :: "DSP/BIOS Kernel State (.sysdata)" prop JSName :: "SYSDATASEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "BIOS Data" } global CFGOBJSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: self.dataMember($1) prop Label :: "DSP/BIOS Conf Sections (.*obj)" prop JSName :: "OBJSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "BIOS Data" } global NOHEAPS :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "No Dynamic Memory Heaps" prop JSName :: "NOMEMORYHEAPS" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: (if ($1) {self.SEGZERO.iReqHeapCount--, self.SEGZERO = MEM_NULL, self.MALLOCSEG.iReqHeapCount--, self.MALLOCSEG = MEM_NULL, TSK.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, scan ($i; MEM) {if ($i.iAllocHeap && $i != MEM_NULL) {$i.iAllocHeap = 0} }} , self.NOHEAPS = $1, "ok") } global SEGZERO :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap) prop Label :: "Segment For DSP/BIOS Objects" prop JSName :: "BIOSOBJSEG" prop Visible :: 1 prop Writable :: MEM.NOHEAPS == 0 prop NoGen :: 0 prop Set :: (if (self.SEGZERO.iReqHeapCount > 0) {self.SEGZERO.iReqHeapCount--} , self.SEGZERO = $1, self.SEGZERO.iReqHeapCount++, "ok") } global MALLOCSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataNullMember($1) && $1.iAllocHeap) prop Label :: "Segment For malloc() / free()" prop JSName :: "MALLOCSEG" prop Visible :: 1 prop Writable :: (MEM.NOHEAPS == 0) prop NoGen :: 0 prop Set :: (if (self.MALLOCSEG.iReqHeapCount > 0) {self.MALLOCSEG.iReqHeapCount--} , self.MALLOCSEG = $1, self.MALLOCSEG.iReqHeapCount++, "ok") } global LNKCMDFILE :: "" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Specify User Linker cmd File" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global TEXTSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.codeMember($1)) prop Label :: "Text Section (.text)" prop JSName :: "TEXTSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0) prop NoGen :: 1 prop TabName :: "Compiler Sections" } global LOADTEXTSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.codeMember($1)) prop Label :: "Load Address - Text Section (.text)" prop JSName :: "LOADTEXTSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global SWITCHSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataCodeMember($1)) prop Label :: "Switch Jump Tables (.switch)" prop JSName :: "SWITCHSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0) prop NoGen :: 1 prop TabName :: "Compiler Sections" } global LOADSWITCHSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataCodeMember($1)) prop Label :: "Load Address - Switch Jump Tables (.switch)" prop JSName :: "LOADSWITCHSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global BSSSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataMember($1)) prop Label :: "C Variables Section (.bss)" prop JSName :: "BSSSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0) prop NoGen :: 1 prop TabName :: "Compiler Sections" } global FARSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataMember($1)) prop Label :: "C Variables Section (.far)" prop JSName :: "FARSEG" prop Visible :: if GBL.DSPTYPE == 62 {1} else {0} prop Writable :: (self.USERCMD == 0) prop NoGen :: 1 prop TabName :: "Compiler Sections" } global CINITSEG :: IPROG { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataCodeMember($1)) prop Label :: "Data Initialization Section (.cinit)" prop JSName :: "CINITSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0) prop NoGen :: 1 prop TabName :: "Compiler Sections" } global LOADCINITSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataCodeMember($1)) prop Label :: "Load Address - Data Initialization Section (.cinit)" prop JSName :: "LOADCINITSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global PINITSEG :: IPROG { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataCodeMember($1)) prop Label :: "C Function Initialization Table (.pinit)" prop JSName :: "PINITSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0) prop NoGen :: 1 prop TabName :: "Compiler Sections" } global LOADPINITSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataCodeMember($1)) prop Label :: "Load Address - C Function Initialization Table (.pinit)" prop JSName :: "LOADPINITSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global CONSTSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataMember($1)) prop Label :: "Constant Section (.const)" prop JSName :: "CONSTSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0) prop NoGen :: 1 prop TabName :: "Compiler Sections" } global LOADCONSTSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataMember($1)) prop Label :: "Load Address - Constant Section (.const)" prop JSName :: "LOADCONSTSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0 && self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global DATASEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataMember($1)) prop Label :: "Data Section (.data)" prop JSName :: "DATASEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0) prop NoGen :: 1 prop TabName :: "Compiler Sections" } global CIOSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataMember($1)) prop Label :: "Data Section (.cio)" prop JSName :: "CIOSEG" prop Visible :: 1 prop Writable :: (self.USERCMD == 0) prop NoGen :: 1 prop TabName :: "Compiler Sections" } global SYSMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: (self.dataMember($1)) prop Label :: "Data Section (.sysmem)" prop JSName :: "SYSMEMSEG" prop Visible :: 0 prop Writable :: (self.USERCMD == 0) prop NoGen :: 1 prop TabName :: "Compiler Sections" } global STUBMEMSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.codeMember($1) prop Label :: "Function Stub Memory (.hwi)" prop JSName :: "HWISEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "BIOS Code" prop Set :: (self.STUBMEMSEG = $1, HWI.STUBMEMSEG = $1, "ok") } global LOADSTUBMEMSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.codeMember($1) prop Label :: "Load Address - Function Stub Memory (.hwi)" prop JSName :: "LOADHWISEG" prop Visible :: 1 prop Writable :: (self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } global RTDXTEXTMEMSEG :: = RTDX.TEXTMEMSEG { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.codeMember($1) prop Label :: "RTDX Text Segment (.rtdx_text)" prop JSName :: "RTDXTEXTSEG" prop Visible :: 1 prop Writable :: RTDX.USERTDX prop NoGen :: 1 prop TabName :: "BIOS Code" prop Set :: (self.RTDXTEXTMEMSEG = $1, RTDX.TEXTMEMSEG = $1, "ok") } global LOADRTDXTEXTMEMSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.codeMember($1) prop Label :: "Load Address - RTDX Text Segment (.rtdx_text)" prop JSName :: "LOADRTDXTEXTSEG" prop Visible :: 1 prop Writable :: (RTDX.USERTDX && self.ENABLELOADSEG == 1) prop NoGen :: 1 prop TabName :: "Load Address" } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst base :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%06x"} prop Style :: 0x02 prop Label :: "base" prop JSName :: "base" prop Visible :: 1 prop Writable :: (self.iIsModifiable) prop NoGen :: 1 prop Set :: ($e = "ok", if (($e = self.checkOverlap(self, $1, $1 + self.len - 1)) == "ok") {self.base = $1} , $e) } inst len :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"} prop Style :: 0x08 prop Label :: "len" prop JSName :: "len" prop Visible :: 1 prop Writable :: (self.memWritable) prop NoGen :: 0 prop Set :: (if (self.iAllocHeap && (self.iHeapSize > $1)) {self.error("Length must be larger than the heap size")} else {$e = self.checkOverlap(self, self.base, self.base + $1 - 1), if ($e == "ok") {self.len = $1, "ok"} else {$e}}) } inst page :: = (if GBL.DSPTYPE == 62 {-1} else {if GBL.DSPTYPE == 55 {-1} else {if self.space == "code" {0} else {if self.space == "data" {1} else {if self.space == "io" {2} else {3}}}}}) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } inst iAllocHeap :: if MEM.NOHEAPS == 1 {0} else {1} { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "create a heap in this memory" prop JSName :: "createHeap" prop Visible :: 1 prop Writable :: (self.space == "data" || self.space == "code/data") && MEM.NOHEAPS == 0 prop NoGen :: 0 prop Set :: ($a = "ok", if ($1 == 0 && self.iReqHeapCount > 0) {self.error("This heap is used by one or more of: segment for DSP/BIOS objects, segment for malloc()/free(), TSK default stack segment")} else {if ($1 == 0) {self.iUserHeapId = 0, self.iHeapId = @segment_name} else {if (self.len < self.iHeapSize) {$a = "Heap size is currently larger than len. The length must be as large as the heap size."} }, self.iAllocHeap = $1, MEM.gDirty = 1, $a}) } inst iHeapSize :: 0x0400 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"} prop Style :: 0x02 prop Label :: "heap size" prop JSName :: "heapSize" prop Visible :: 1 prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (MEM.NOHEAPS == 0) prop Set :: (if ($1 > self.len) {self.error("A heap cannot be larger than the memory segment that contains it.")} else {if ($1 == 0) {self.error("Heap size must be greater than zero.")} else {self.iHeapSize = $1, "ok"}}) prop NoGen :: 1 } inst iSegZero :: = MEM.SEGZERO inst iUserHeapId :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "enter a user defined heap identifier label" prop JSName :: "enableHeapLabel" prop Set :: (if ($1 == 0) {self.iHeapId = @segment_name} , self.iUserHeapId = $1, "ok") prop Visible :: 1 prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) prop NoGen :: 1 } inst iHeapId :: @segment_name { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "heap identifier label" prop JSName :: "heapLabel" prop Set :: ($e = self.checkHeapId($1), if ($e == "ok") {self.iHeapId = $1} , $e) prop Writable :: (self.iAllocHeap) && (self.iIsModifiable) && (self.NOHEAPS == 0) && (self.iUserHeapId) prop Visible :: 1 prop NoGen :: 0 } inst iReqHeapCount :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } inst space :: (if GBL.DSPTYPE == 55 {"code/data"} else {"data"}) { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: if GBL.DSPTYPE == 62 {"code,data,code/data"} else {if GBL.DSPTYPE == 54 {"code,data,io,other"} else {"code/data,io"}} prop JSName :: "space" prop Visible :: 1 prop Writable :: (self.memWritable) prop NoGen :: 1 prop Set :: ($a = $1, if ($1 == "code" && self.iAllocHeap == 1) {self.error("Cannot select code if a heap will be created")} else {self.space = $a, "ok"}) } inst iIsModifiable :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } object MEM_NULL :: MEM { param iComment :: "Place holder segment which allows user to disable heaps" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param base :: 0 param len :: 0 param iAllocHeap :: 1 param iHeapSize :: 1024 param iUserHeapId :: 0 param iHeapId :: @segment_name param iReqHeapCount :: 0 param space :: "data" param iIsModifiable :: 1 } type OBJ { isa ObjectMgr prop name :: "OBJ" prop Visible :: 0 prop AllocType :: (if (self.gNumOf > 0) {"1\0, _objMemDesc, _memSeg, _placement"} ) prop _objMemDesc :: ("%8t .obj: {}") prop _memSeg :: MEM.CFGOBJSEG prop _placement :: (0x7ffff / 2) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type CLK { isa ObjectMgr prop name :: "CLK" prop Label :: "CLK - Clock Manager" prop IsContainedIn :: SCH prop IsConfMod :: 1 prop GlobalIcon :: 103 prop InstanceIcon :: 104 prop InstanceHelpTopic :: (202) prop GlobalHelpTopic :: (102) prop InstancePropertyPage :: ("{EEB2AB41-51E3-11d0-A61D-0000C070F3E9}") prop GlobalPropertyPage :: ("{EEB2AB40-51E3-11d0-A61D-0000C070F3E9}") prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t _CLK_start = %7s;\n%8t CLK_F_isr = %6s;\n%8t CLK_F_gethtime = %5s;\n %1U_A_TABBEG = .;\n %4S\n %1U_A_TABEND = .;\n %1U_A_TABLEN = (. - %1U_A_TABBEG) / %2d;\n%4t} > %3s PAGE 1\0, name, _objSize, _memSeg, _linkString, clkFxn, _clkIsr, _clkStartFxn") prop _clkStartFxn :: if (GBL.SUPPORTCSL && self.USETIMER) {(if GBL.CHIPTYPE == "5441" {@_CLK_startPRSC} else {@_CLK_startNOPRSC})} else {@FXN_F_nop} prop GenLinkEpilogue :: ("%0t}\n_CLK_PRD = CLK_PRD;\n_CLK_COUNTSPMS = CLK_COUNTSPMS;\n_CLK_REGS = CLK_REGS;\n_CLK_USETIMER = CLK_USETIMER;\n_CLK_TIMERNUM = CLK_TIMERNUM;\n_CLK_TCR = CLK_TCR;\n_CLK_TDDR = CLK_TDDR;\n\0") prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no CLK objs */"} prop _memSeg :: CLK.OBJMEMSEG prop _objSize :: 1 prop clkFxn :: if (self.USETIMER == 1) {self.CLKFXN} else {@FXN_F_zero} prop maxObjs :: (32767) prop SortByField :: "iPri" prop SortGroups :: 1 prop localInit :: (if (GBL.CALLBACKOBJ != CLK) {CLK.gGBLChain = GBL.CALLBACKOBJ, GBL.CALLBACKOBJ = CLK} ) prop dataSize :: (1 * (CLK.gNumOf + 1)) prop localCanCreate :: (if self.USETIMER {"ok"} else {self.error("The CLK Manager must be enabled before inserting a CLK")}) prop adjustPrd :: (if GBL.DSPTYPE == 62 {0} else {1}) prop seizeHwi :: (if ($1.client == "USER" && $1.function != @HWI_unused) {self.error("Interrupt mapped to selected timer is already in use.")} else {$1.function = @CLK_F_isr, $1.client = "CLK", HWI.gDirty = 1, "ok"}) prop releaseHwi :: ($1.function = @HWI_unused, $1.client = "USER", HWI.gDirty = 1, "ok") prop setMicroseconds :: ($c = if self.FIXTDDR == 1 {(self.TDDR + 1.0) * (float(0xffff) + self.adjustPrd + 0.5) * 2 / GBL.CPUCLOCK} else {(0xf + 1.0) * (float(0xffff) + self.adjustPrd + 0.5) * 2 / GBL.CPUCLOCK}, if ($1 < $c && $1 > 0.1) {if (self.FIXTDDR == 0) {self.TDDR = int(round((1.0 * $1 * GBL.CPUCLOCK / 2) - 1) / (0xffff + self.adjustPrd))} , self.PRD = int(round(1.0 * $1 * GBL.CPUCLOCK / (2 * (self.TDDR + 1.0)))) - CLK.adjustPrd, self.MICROSECONDS = ((float((self.PRD)) + CLK.adjustPrd) * ((self.TDDR) + 1.0) * 2 / GBL.CPUCLOCK), if (self.CALLBACKOBJ != nil) {self.CALLBACKOBJ.call()} , "ok"} else {self.error("The on-chip timer does not have enough range to support this combination of DSP MIPS and Microseconds/Int")}) prop call :: ($a = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 2 / GBL.CPUCLOCK), $b = CLK.MICROSECONDS, $e = "ok", if (($e = self.setMicroseconds(CLK.MICROSECONDS)) == "ok") {if (CLK.gGBLChain != nil) {$e = CLK.gGBLChain.call()} , if ($e != "ok") {self.setMicroseconds($b), self.error($e)} else {"ok"}} else {$e}) prop _clkIsr :: (if GBL.CHIPTYPE == "5441" {"CLK_F_isr5441"} else {"CLK_F_isr54x"}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gGBLChain :: nil { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: self.USETIMER prop NoGen :: 1 } global REGS :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x02 } global TIMERNUM :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x02 } global USETIMER :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable CLK Manager" prop JSName :: "ENABLECLK" prop Visible :: 1 prop Writable :: if self.gNumOf > 0 {0} else {1} prop NoGen :: 0 prop Set :: (if ($1 == 1 && self.USETIMER == 0) {if (HWI_TINT.client == "USER" && HWI_TINT.function != @HWI_unused) {self.error("HWI Timer interrupt already in use.")} else {HWI_TINT.function = @CLK_F_isr, HWI_TINT.client = "CLK", HWI.gDirty = 1, self.USETIMER = 1, CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}, if (GBL.ENABLEINST == 1) {IDL_busyObj.Create("IDL"), IDL.USEIDLBUSYOBJ = 1, IDL_cpuLoad.Create("IDL"), IDL.AUTOCALCULATE = GBL.OLDAUTOCALCULATE} , "ok"}} else {if ($1 == 0 && self.USETIMER == 1) {if (self.gNumOf == 0) {CLK.TIMEFXN = @FXN_F_zero, HWI_TINT.function = @HWI_unused, HWI_TINT.client = "USER", HWI.gDirty = 1, self.USETIMER = 0, if (GBL.ENABLEINST == 1) {IDL_busyObj.Delete("IDL"), IDL.USEIDLBUSYOBJ = 0, IDL_cpuLoad.Delete("IDL"), GBL.OLDAUTOCALCULATE = IDL.AUTOCALCULATE, IDL.AUTOCALCULATE = 0} , "ok"} else {self.error("CLK cannot be disabled until all its objects are deleted.")}} else {"ok"}}) } global HIRES :: = 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Use high resolution time for internal timings" prop JSName :: "HIRESTIME" prop Visible :: 1 prop Writable :: self.USETIMER prop NoGen :: 1 prop Set :: (if (CLK.USETIMER) {CLK.HIRES = $1, if (CLK.USETIMER) {CLK.TIMEFXN = if CLK.HIRES {CLK.clkFxn()} else {@CLK_F_getltime}} , "ok"} else {self.error("CLK Manager must be enabled in order to get high resolution timings.")}) } global INSTRPERCLK :: 1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global MICROSECONDS :: 999.993774 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: 0x04 prop Format :: "%.4f" prop Label :: "Microseconds/Int" prop JSName :: "MICROSECONDS" prop Set :: (self.setMicroseconds($1)) prop Visible :: 1 prop Writable :: if ((CLK.PROGTIMREGS != 0) | (self.USETIMER == 0)) {0} else {1} prop NoGen :: 1 } global PROGTIMREGS :: = 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Directly configure on-chip timer registers" prop JSName :: "CONFIGURETIMER" prop Visible :: 1 prop Writable :: self.USETIMER prop NoGen :: 1 } global TCR :: = 0x20 | CLK.TDDR { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 | 0x02 prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global FIXTDDR :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Fix TDDR" prop JSName :: "FIXTDDR" prop Visible :: GBL.DSPTYPE != 62 prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62 prop NoGen :: 1 } global TDDR :: 2 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15" prop Label :: "TDDR Register" prop JSName :: "TCRTDDR" prop Set :: (CLK.TDDR = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 2 / GBL.CPUCLOCK), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok") prop Visible :: GBL.DSPTYPE != 62 prop Writable :: CLK.PROGTIMREGS && GBL.DSPTYPE != 62 prop NoGen :: 0 } global PRD :: 53332 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: if GBL.DSPWORDSIZE == 16 {0x01 | 0x02} else {0x02} prop Label :: "PRD Register" prop JSName :: "PRD" prop Set :: (CLK.PRD = $1, CLK.MICROSECONDS = ((float((CLK.PRD)) + CLK.adjustPrd) * ((CLK.TDDR) + 1.0) * 2 / GBL.CPUCLOCK), if (CLK.CALLBACKOBJ != nil) {CLK.CALLBACKOBJ.call()} , "ok") prop Visible :: 1 prop Writable :: if ((self.PROGTIMREGS) && (self.USETIMER)) {1} else {0} prop NoGen :: 0 } global COUNTSPMS :: = int(round(GBL.CPUCLOCK * 1000.0 / (CLK.TDDR + 1) / 2)) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" } global COUNTSPMSHIGH :: = ((self.COUNTSPMS & 0xffff0000) >> 16) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" } global INSTRUCTIONS :: = (1.0 * (float(CLK.PRD) + CLK.adjustPrd) * (CLK.TDDR + 1.0) * 1) { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: 0x04 prop Format :: "%.0f" prop Label :: "Instructions/Int" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 } global TIMEFXN :: = CLK.clkFxn() { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global HOOKFXN :: = (if self.gNumOf > 0 {(if (GBL.CHIPTYPE == "5441") {@CLK_F_run5441} else {@CLK_F_run})} else {(if GBL.CALLMODEL == "far" {@CLK_F_frete} else {@CLK_F_rete})}) { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global CLKFXN :: = (if (CLK.PRD == 0xffff) {@CLK_F_getfhtime} else {@CLK_F_getshtime}) { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global CALLBACKOBJ :: PRD { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst function :: @FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "function" prop JSName :: "fxn" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 } inst Order :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "order" prop NoGen :: 1 prop Writable :: 1 } inst iPri :: 0 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop NoGen :: 1 } } type PRD { isa ObjectMgr prop name :: "PRD" prop Label :: "PRD - Periodic Function Manager" prop IsContainedIn :: SCH prop GlobalIcon :: 119 prop InstanceIcon :: 120 prop InstanceHelpTopic :: (210) prop GlobalHelpTopic :: (110) prop InstancePropertyPage :: ("{B7240DE0-AA51-11cf-9BFE-0000C0AC14C7}") prop GlobalPropertyPage :: ("{B7240DE1-AA51-11cf-9BFE-0000C0AC14C7}") prop STSGetMaxFmt :: ("%g ticks") prop STSGetSumFmt :: (PRD.STSGetMaxFmt()) prop STSGetAvgFmt :: ("%.2f ticks") prop GetPeriod :: self.period prop IsOneShot :: if self.mode == "one-shot" {1} else {0} prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {\n%8t %1U_A_TABBEG = .;\n %4S\n %1U_A_TABEND = .;\n %1U_A_TABLEN = (. - %1U_A_TABBEG) / %2d;\n%4t} > %3s%5s\0, name, objSize, memSeg, linkString, pageString") prop GenLinkEpilogue :: ("%0t}\n\0") prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"} prop pageString :: if GBL.DSPTYPE == 62 {""} else {if GBL.DSPTYPE == 55 {""} else {" PAGE 1"}} prop memSeg :: PRD.OBJMEMSEG prop objSize :: if GBL.DSPTYPE == 55 {(8 * 1) * 2} else {(8 * 1)} prop dataSize :: ((8 * 1) * PRD.gNumOf) prop localInit :: (if (CLK.CALLBACKOBJ != nil) {self.error("PRD initialization failure")} , CLK.CALLBACKOBJ = PRD, if (PRD.USECLK && PRD_clock.iIsUsed == 0) {PRD_clock.Create("PRD")} ) prop localCanCreate :: (self.myCreate("can")) prop localCreate :: (STS.gNumEmbed += 1, self.myCreate("do")) prop localCanDelete :: (self.myDelete("can")) prop localDelete :: (STS.gNumEmbed -= 1, self.myDelete("do")) prop maxObjs :: (32767) prop myCreate :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (PRD_swi.iIsUsed) {"ok"} else {if (SWI.CanCreate() == "ok") {if ($1 == "do") {if (KNL_swi.iIsUsed == 1 && PRD_swi.pri == 0) {PRD_swi.pri = 1} , PRD_swi.Create("PRD")} else {"ok"}} else {self.error("Can't create an SWI for PRD (try deleting a SWI)")}}) prop myDelete :: (if (PRD_swi.function != @PRD_F_swi) {PRD_swi.function = @PRD_F_swi} , if (self.gNumOf == 1) {if ($1 == "do") {PRD_swi.Delete("PRD")} else {"ok"}} else {"ok"}) prop call :: (if (CLK.USETIMER != 0) {PRD.MICROSECONDS = CLK.MICROSECONDS} ) prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"prd.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PRD_Obj %0r;\n\0"} else {"extern PRD_Obj %0r;\n\0"}) prop SortByField :: "iPri" prop SortGroups :: 1 prop DEFAULT_THOOKFXN :: @KNL_tick_stub global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global USECLK :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Use CLK Manager to drive PRD" prop JSName :: "USECLK" prop Visible :: 1 prop Writable :: 1 prop Set :: (if ($1 == 1 && self.USECLK == 0) {if (CLK.USETIMER == 0) {self.error("In order to drive periodic functions, the CLK Manager must be enabled")} else {self.USECLK = 1, self.MICROSECONDS = CLK.MICROSECONDS, CLK.CALLBACKOBJ = PRD, PRD_clock.Create("PRD"), "ok"}} else {if ($1 == 0 && self.USECLK == 1) {self.USECLK = 0, self.MICROSECONDS = 0.0, CLK.CALLBACKOBJ = nil, PRD_clock.Delete("PRD")} , "ok"}) prop NoGen :: 1 } global MICROSECONDS :: 999.993774 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: 0x04 prop Format :: "%.1f" prop Label :: "Microseconds/Tick" prop JSName :: "MICROSECONDS" prop Visible :: 1 prop Writable :: self.USECLK == 0 prop NoGen :: 1 } global SCALAR :: = ($d = 2, $f = 0, while ($d <= 0x4000 && $f == 0) {scan ($i; PRD) {if (($i.period / $d) * $d != $i.period) {$f = 1} }, if ($f == 0) {$d = 2 * $d} }, $d / 2) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global THOOKFXN :: @KNL_tick_stub { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "System Tick Hook Function" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 0 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst period :: 0xffff { prop Label :: "period (ticks)" prop JSName :: "period" prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 | 0x02 prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop Set :: (if ($1 > 0) {self.period = $1, self.gDirty = 1, "ok"} else {self.error("Periodic function periods must be greater than 0")}) } inst mode :: "continuous" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "continuous,one-shot" prop JSName :: "mode" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } inst function :: @FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "fxn" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } inst arg0 :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "arg0" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } inst arg1 :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "arg1" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } inst milliseconds :: = ((self.period * PRD.MICROSECONDS) / 1000.0) { prop Label :: "period (ms)" prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: 0x04 prop Format :: "%.1f" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 } inst Order :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "order" prop NoGen :: 1 prop Writable :: 1 } inst iPri :: 0 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop NoGen :: 1 } } object PRD_swi :: SWI { param iComment :: "This Software ISR executes all configured PRD functions" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "PRD" param iDelMsg :: "This object is automatically deleted when all PRD objects are deleted" param function :: @PRD_F_swi param pri :: 1 param mailbox :: 0 param arg0 :: 0 param arg1 :: 0 param dorta :: 1 param Order :: 1 } object PRD_clock :: CLK { param iComment :: "This clock function calls PRD_tick from within the on-chip timer ISR" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "PRD" param iDelMsg :: "This object is automatically deleted by disabling the 'Use CLK Manager to drive PRD' option of PRD" param function :: @PRD_F_tick param Order :: 1 param iPri :: 0 } type RTDX { isa ObjectMgr prop Label :: "RTDX - Real-Time Data Exchange Settings" prop name :: "RTDX" prop IsConfMod :: self.USERTDX prop IsContainedIn :: IOM prop GlobalIcon :: 145 prop InstanceIcon :: 146 prop GlobalHelpTopic :: (113) prop InstanceHelpTopic :: (213) prop InstancePropertyPage :: ("{f80273c0-3838-11d2-a32c-006097656921}") prop GlobalPropertyPage :: ("{050a0600-3839-11d2-a32c-006097656921}") prop AllocType :: (if self.USERTDX {"2\0, _rtdxDataAllocDesc, _rtdxDataSeg, _placement, _rtdxTextAllocDesc, _rtdxTextSeg, _placement"} else {""}) prop _rtdxDataAllocDesc :: (" .%1L_data: {} \0, name") prop _rtdxTextAllocDesc :: (if (MEM.ENABLELOADSEG == 1) {if (MEM.RTDXTEXTMEMSEG == MEM.LOADRTDXTEXTMEMSEG) {" .%1L_text: {} \0, name"} else {" .%1L_text: {} load > %2s, run \0, name, _loadRtdxTextMemSeg"}} else {" .%1L_text: {} \0, name"}) prop _rtdxDataSeg :: RTDX.DATAMEMSEG prop _rtdxTextSeg :: MEM.RTDXTEXTMEMSEG prop _loadRtdxTextMemSeg :: MEM.LOADRTDXTEXTMEMSEG prop _placement :: (0x7ffff / 2) prop _objSize :: RTDX.BUFMEMSIZE prop GenLinkPrologue :: (if self.USERTDX {"_RTDX_interrupt_mask = 0x%1x;\n\0, _interruptMask"} else {""}) prop _interruptMask :: RTDX.MASK prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"rtdx.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {if (self.iChannelMode == "output") {"extern far RTDX_outputChannel %0r;\n\0"} else {"extern far RTDX_inputChannel %0r;\n\0"}} else {if (self.iChannelMode == "output") {"extern RTDX_outputChannel %0r;\n\0"} else {"extern RTDX_inputChannel %0r;\n\0"}}) prop dataSize :: ($d = 0, if (self.USERTDX) {$d = RTDX.BUFMEMSIZE} else {$d = 0}, scan ($a; RTDX) {if ($a.iChannelMode == "output") {$d += 1} else {$d += 3}}, $d) prop localCanCreate :: ($e = "ok", if (RTDX.USERTDX != 1) {$e = self.error("RTDX manager not enabled")} , $e) prop localInit :: (if (self.USERTDX) {RTDX_dataPump.Create("RTDX")} ) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global USERTDX :: = 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable Real-Time Data Exchange (RTDX)" prop JSName :: "ENABLERTDX" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop Set :: (if ($1 == 0) {if (HST.LNKTYPE == "RTDX") {self.error("RTDX is being used by HST; select a different host link type before attempting to disable RTDX")} else {if (self.gNumOf > 0) {self.error("Cannot disable RTDX until all RTDX objects are deleted.")} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, (RTDX_dataPump.Delete("RTDX")), "ok"}}} else {GlobalStatus.gDirty = 1, self.USERTDX = $1, (RTDX_dataPump.Create("RTDX")), "ok"}) } global USERTEXECUTION :: = 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable Real-Time Execution Control" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global RTDXTYPE :: "JTAG" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "JTAG,HSRTDX,Simulator" prop Label :: "RTDX Mode" prop JSName :: "MODE" prop Visible :: 1 prop Writable :: self.USERTDX prop NoGen :: 1 prop Set :: (self.RTDXTYPE = $1, if (RTDX.CALLBACKOBJ != nil) {RTDX.CALLBACKOBJ.call()} , "ok") } global DATAMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "RTDX Data Segment (.rtdx_data)" prop JSName :: "RTDXDATASEG" prop Visible :: 1 prop Writable :: self.USERTDX prop NoGen :: 0 } global BUFMEMSIZE :: = (256 + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 | 0x02 prop Label :: "RTDX Buffer Size (MAUs)" prop JSName :: "BUFSIZE" prop Visible :: 1 prop Writable :: self.USERTDX prop NoGen :: 0 prop Set :: (if (HST.RTDX == 0) {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, "ok"} else {if ($1 < (HST.MAXFRAMESET + 2) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) {self.error("size (in MAUs) must be at least: (largest configured HST channel framesize in words + 2) * (MAUs per word)")} else {self.BUFMEMSIZE = $1, GlobalStatus.gDirty = 1, if (HST.LNKTYPE == "RTDX") {self.MAXFRAMEALLOWED = (self.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2, "ok"} else {"ok"}}}) } global TEXTMEMSEG :: IPROG { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.codeMember($1) prop Label :: "RTDX Text Segment (.rtdx_text)" prop Visible :: 0 prop Writable :: self.USERTDX prop NoGen :: 1 } global MASK :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%08x" prop Style :: 0x02 prop Label :: "RTDX Interrupt Mask" prop JSName :: "INTERRUPTMASK" prop Visible :: 1 prop Writable :: self.USERTDX prop NoGen :: 1 prop Set :: (self.MASK = $1, "ok") } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iChannelMode :: "output" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Channel Mode" prop JSName :: "channelMode" prop Enum :: "input,output" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop Set :: (GlobalStatus.gDirty = 1, self.iChannelMode = $1, "ok") } } object RTDX_dataPump :: IDL { param iComment :: "This object cannot be deleted" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "RTDX" param iDelMsg :: "This object cannot be deleted" param function :: @_RTDX_Poll param cycles :: 0 param calibration :: 1 param Order :: 1 param iPri :: 0 } type HST { isa ObjectMgr prop name :: "HST" prop Label :: "HST - Host Channel Manager" prop IsContainedIn :: IOM prop FileStream :: 1 prop GlobalIcon :: 107 prop InstanceIcon :: 108 prop GlobalHelpTopic :: (104) prop InstanceHelpTopic :: (204) prop maxObjs :: (GBL.DSPWORDSIZE) prop dataSize :: ($b = 0, scan ($i; HST) {if ($i.IsConfObj()) {$b += (3 + $i.framesize) * $i.numframes + 25 + (5 * 1)} }, $b) prop InstancePropertyPage :: ("{B7240DEA-AA51-11cf-9BFE-0000C0AC14C8}") prop GlobalPropertyPage :: ("{B7240DEB-AA51-11cf-9BFE-0000C0AC14C8}") prop DependsOn :: "HWI" prop localCreate :: (PIP.gNumEmbed += 1, if (self.gNumOf == 0) {(LNK_dataPump.Create("HST"))} , "ok") prop localDelete :: (PIP.gNumEmbed -= 1, $b = 0, scan ($i; HST) {if ($i != self) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } } }, self.MAXFRAMESET = $b, if (self.gNumOf == 1) {(LNK_dataPump.Delete("HST"))} , "ok") prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, \ _dsmAllocDesc, _dsmMemSeg, _placement") prop _globalAllocDesc :: ("%8t .%1L: {%12t\n %1U_A_TABBEG = .;\n _%1U_A_TABBEG = .;\n %2S\n %1U_A_TABEND = .;\n _%1U_A_TABEND = .;\n %1U_A_TABLEN = (. - _%1U_A_TABBEG) / %3d;\n _%1U_A_TABLEN = (. - _%1U_A_TABBEG) / %3d;%8t\n }\0, name, _linkString, _objSize") prop _dsmAllocDesc :: ("%8t .dsm: {}") prop _placement :: (0x7ffff / 2) prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement") prop _instAllocDesc :: ("/* %0s buffer */\n.hst%2d: %3S\0, name, _objId, _alignString, _objAlign") prop _alignString :: if self.bufalign > 1 {"align = 0x%4x {}"} else {""} prop _objId :: self.iId prop _objAlign :: self.bufalign prop _objMemSeg :: self.bufseg prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"} prop _memSeg :: HST.OBJMEMSEG prop _dsmMemSeg :: HST.DSMBUFSEG prop _objSize :: (5 * 1) prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"hst.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far HST_Obj %0r;\n\0"} else {"extern HST_Obj %0r;\n\0"}) prop modifiable :: ((if self.iDelUser == "USER" {1} else {0})) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumEmbed :: 0 { prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global LNKTYPE :: "RTDX" { prop Label :: "Host Link Type" prop JSName :: "HOSTLINKTYPE" prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "RTDX,NONE" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: (if ($1 == "RTDX") {if (RTDX.USERTDX == 0) {self.error("RTDX module must be enabled before it can be used by HST")} else {if ((RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2 < self.MAXFRAMESET) {self.error("RTDX buffer size too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = (RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2, "ok"}}}} else {if ($1 == "Shared Memory") {if ((self.DSMMEMSIZE / 4) < self.MAXFRAMESET) {self.error("Shared memory buffer too small for largest configured HST channel")} else {if (self.LNKTYPE == "NONE") {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {self.LNKTYPE = $1, self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"}}} else {GlobalStatus.gDirty = 1, self.LNKTYPE = $1, "ok"}}) } global RTDX :: = if self.LNKTYPE == "RTDX" {1} else {0} { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Use RTDX for host link" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global DSM :: = if self.LNKTYPE == "Shared Memory" {1} else {0} { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Use Shared Memory for host link" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global EVM54 :: = if self.LNKTYPE == "EVM54" {1} else {0} { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Use EVM54's I/O ports for host link" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global NONE :: = if self.LNKTYPE == "NONE" {1} else {0} { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "No host link" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global MAXFRAMESET :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "MAXFRAMESET" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 0 } global MAXFRAMEALLOWED :: = if self.RTDX == 1 {(RTDX.BUFMEMSIZE / (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) - 2} else {self.DSMMEMSIZE / 4} { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "MAXFRAMEALLOWED" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 0 } global DSMBUFSEG :: = IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Shared Memory Segment" prop Visible :: 0 prop Writable :: self.DSM prop NoGen :: 0 } global DSMMEMSIZE :: = 1024 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 | 0x02 prop Label :: "Shared Memory Frame Size (MAUs)" prop Visible :: 0 prop Writable :: self.DSM prop NoGen :: 0 prop Set :: (if ($1 < HST.MAXFRAMESET * 4) {self.error("size (in MAUs) must be at least: 4 * largest configured HST channel framesize (in words)")} else {self.DSMMEMSIZE = $1, GlobalStatus.gDirty = 1, if (self.LNKTYPE == "Shared Memory") {self.MAXFRAMEALLOWED = self.DSMMEMSIZE / 4, "ok"} else {"ok"}}) } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst mode :: "output" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "mode" prop Enum :: "input,output" prop Visible :: 1 prop Writable :: self.modifiable() prop NoGen :: 0 } inst bufseg :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop Label :: "bufseg" prop JSName :: "bufSeg" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } inst bufalign :: 4 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 | 0x02 prop JSName :: "bufAlign" prop Visible :: 1 prop Writable :: self.modifiable() prop NoGen :: 1 prop Set :: (if ($1 < 4) {self.error("Alignment must be greater than or equal to 4")} else {if (($1 % 2) != 0) {self.error("Alignment must be a power of 2")} else {$i = $1, while ((($i % 2) == 0) && ($i != 2)) {$i = $i / 2}, if (($i % 2) != 0) {self.error("Alignment must be a power of 2")} else {self.bufalign = $1, "ok"}}}) } inst buf :: "" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } inst framesize :: 0x80 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "framesize (words)" prop JSName :: "frameSize" prop Style :: 0x01 | 0x02 prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {if (($1 > self.MAXFRAMEALLOWED) && ((self.RTDX == 1) || (self.DSM == 1))) {if (self.RTDX == 1) {self.error("size (in words) is limited to: (RTDX buffer size in MAUs) / (MAUs per word) - 2")} else {self.error("size (in words) is limited to: shared memory frame size (in MAUs)/4")}} else {self.framesize = $1, $b = 0, scan ($i; HST) {if ($i.IsConfObj()) {if ($i.framesize > $b) {$b = $i.framesize} } }, self.MAXFRAMESET = $b, GlobalStatus.gDirty = 1, "ok"}}) } inst numframes :: 2 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop JSName :: "numFrames" prop Visible :: 1 prop Writable :: self.modifiable() prop NoGen :: 0 prop Set :: (if ($1 < 1) {self.error("Channels must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"}) } inst stsflg :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "statistics" prop JSName :: "statistics" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } inst notify :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "notifyFxn" prop Visible :: 1 prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1}) prop NoGen :: 0 prop TabName :: "Notify Function" } inst arg0 :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "arg0" prop Visible :: 1 prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1}) prop NoGen :: 0 prop TabName :: "Notify Function" } inst arg1 :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "arg1" prop Visible :: 1 prop Writable :: (if self.iDelUser == "DHL" || self.iDelUser != "USER" {0} else {1}) prop NoGen :: 0 prop TabName :: "Notify Function" } inst lnk :: = if self.RTDX {"RTDX"} else {"NOTRTDX"} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "link type" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } inst iDHLAvailable :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Make this channel available for a new DHL device" prop JSName :: "availableForDHL" prop Set :: (if (($1 == 0) && (self.iDHLAvailable == 1)) {DHL.gChannelsAvailable--} else {if (($1 == 1) && (self.iDHLAvailable == 0)) {DHL.gChannelsAvailable++} }, self.iDHLAvailable = $1, "ok") prop Writable :: self.modifiable() prop Visible :: 1 prop NoGen :: 1 } } object LNK_dataPump :: IDL { param iComment :: "This object cannot be deleted" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HST" param iDelMsg :: "This object cannot be deleted" param function :: @LNK_F_dataPump param cycles :: 0 param calibration :: 1 param Order :: 2 param iPri :: 0 } object RTA_dispatcher :: IDL { param iComment :: "This object cannot be deleted" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HST" param iDelMsg :: "This object cannot be deleted" param function :: @RTA_F_dispatch param cycles :: 0 param calibration :: 1 param Order :: 3 param iPri :: 0 } object RTA_fromHost :: HST { param iComment :: "Used to access LOG and STS data" param iIsUsed :: 0 param iId :: 1 param iDelUser :: "HST" param iDelMsg :: "This object cannot be deleted" param mode :: "input" param bufseg :: IDATA param bufalign :: 4 param buf :: "" param framesize :: 4 param numframes :: 1 param stsflg :: 0 param notify :: @_FXN_F_nop param arg0 :: 0 param arg1 :: 0 param iDHLAvailable :: 0 } object RTA_toHost :: HST { param iComment :: "Used to access LOG and STS data" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HST" param iDelMsg :: "This object cannot be deleted" param mode :: "output" param bufseg :: IDATA param bufalign :: 4 param buf :: "" param framesize :: 64 param numframes :: 1 param stsflg :: 0 param notify :: @_FXN_F_nop param arg0 :: 0 param arg1 :: 0 param iDHLAvailable :: 0 } type HWI { isa ObjectMgr prop name :: "HWI" prop Label :: "HWI - Hardware Interrupt Service Routine Manager" prop IsContainedIn :: SCH prop SortChildHierView :: 0 prop GlobalIcon :: 109 prop InstanceIcon :: 110 prop InstanceHelpTopic :: (205) prop GlobalHelpTopic :: (105) prop dataSize :: (0 * HWI.gNumOf) prop localCanCreate :: (self.error("New hardware interrupt objects cannot be created")) prop InstancePropertyPage :: ("{B7240DE6-AA51-11cf-9BFE-0000C0AC14C7}") prop GlobalPropertyPage :: ("{B7240DE7-AA51-11cf-9BFE-0000C0AC14C7}") prop DependsOn :: "GBL,OBJ,CLK,IDL,LCK,LOG,MBX,MEM,PIP,PRD,QUE,RTDX,SEM,SIO,STS,SYS,DEV,UDEV,DGN,DHL,DPI" prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L_vec: {\n%8t GBL_F_chip = %5s;\n%4t} > VECT%4s\n.%1L: {%8t\n%3S\n%4t} > %2s%4s\n\0, name, _memSeg, _linkString, _pageString, _chip") prop GenLinkEpilogue :: ("%0t}\n\0") prop _pageString :: " PAGE 0" prop _chip :: (if GBL.CHIPTYPE == "5441" {"GBL_F_chip5441"} else {"GBL_F_chip54x"}) prop _memSeg :: MEM.STUBMEMSEG prop _loadstubSeg :: MEM.LOADSTUBMEMSEG prop _linkString :: ($b = 0, scan ($a; HWI) {if ($a.monitor != "Nothing") {$b = 1} }, if ($b == 1) {"*(.hwi)"} else {"/* no HWI stubs are necessary */"}) prop name2addr :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "ag", "ah", "al", "ar0", "ar1", "ar2", "ar3", "ar4", "ar5", "ar6", "ar7", "bg", "bh", "bk", "bl", "brc", "ifr", "imr", "pmst", "rea", "rsa", "st0", "st1", "treg", "tim", "trn"}) {if ($b == nil) {if ($a == $1) {$b = {0, 0, 0x18, @GBL_stackbeg, 0xa, 0x9, 0x8, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0xd, 0xc, 0x19, 0xb, 0x1a, 0x1, 0x0, 0x1d, 0x1c, 0x1b, 0x6, 0x7, 0xe, 0x24, 0xf}[$i]} , $i++} }, if ($b == nil) {$b = 0} , $b) prop name2type :: ($i = 0, $b = nil, scan ($a; {"Nothing", "Data Value", "Stack Pointer", "Top of SW Stack", "ag", "ah", "al", "ar0", "ar1", "ar2", "ar3", "ar4", "ar5", "ar6", "ar7", "bg", "bh", "bk", "bl", "brc", "ifr", "imr", "pmst", "rea", "rsa", "st0", "st1", "treg", "tim", "trn"}) {if ($b == nil) {if ($a == $1) {if ($i < 5) {$b = {"unsigned", "signed", "unsigned", "unsigned", "unsigned"}[$i]} } , $i++} }, if ($b == nil) {$b = "unsigned"} , $b) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: -1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 32 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global STUBMEMSEG :: SARAM03 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.codeMember($1) prop Label :: "Function Stub Memory" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst function :: @HWI_unused { prop JSName :: "fxn" prop Visible :: 1 prop Writable :: if ((self.function == @RESERVED) || (self.client != "USER")) {0} else {1} prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop NoGen :: 0 prop Set :: (self.function = $1, GlobalStatus.gDirty = 1, "ok") } inst iSTSObj :: HWI_RESETSTS { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst monitor :: "Nothing" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Nothing,Data Value,Stack Pointer,Top of SW Stack,ag,ah,al,ar0,ar1,ar2,ar3,ar4,ar5,ar6,ar7,bg,bh,bk,bl,brc,ifr,imr,pmst,rea,rsa,st0,st1,treg,tim,trn" prop JSName :: "monitor" prop Visible :: 1 prop Writable :: ((self.function != @HWI_unused && self.function != @RESERVED) && (self.iId != 0)) prop NoGen :: 0 prop Set :: (if ($1 != self.monitor) {$e = "ok", if ($1 == "Nothing") {if (($e = self.iSTSObj.Delete("HWI")) == "ok") {self.monitor = "Nothing", self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)} } else {if (self.iSTSObj.iIsUsed || ($e = self.iSTSObj.Create("HWI")) == "ok") {self.monitor = $1, if (self.monitor == "Data Value") {self.addr = self.saveAddr, self.dataType = self.saveType} else {self.addr = self.name2addr(self.monitor), self.dataType = self.name2type(self.monitor)}} else {self.monitor = "Nothing"}}, $e} else {"ok"}) } inst saveAddr :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst saveType :: "signed" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst addr :: 0 { prop JSName :: "addr" prop Visible :: 1 prop Writable :: (if self.monitor == "Data Value" {1} else {0}) prop NoGen :: 0 prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop Format :: if GBL.DSPTYPE == 62 {"0x%08x"} else {"0x%04x"} prop Set :: (self.addr = $1, self.saveAddr = $1, "ok") } inst dataType :: "signed" { prop Visible :: 1 prop Writable :: (if self.monitor == "Nothing" {0} else {1}) prop NoGen :: 0 prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "signed,unsigned" prop Label :: "type" prop JSName :: "dataType" prop Set :: (if (self.monitor != "Nothing") {self.dataType = $1, self.saveType = $1, "ok"} else {self.error("The monitor field must set to modify this field")}) } inst operation :: "STS_add(*addr)" { prop Visible :: 1 prop Writable :: (if self.monitor == "Nothing" {0} else {1}) prop NoGen :: 0 prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "operation" prop Enum :: "STS_add(*addr),STS_delta(*addr),STS_add(-*addr),STS_delta(-*addr),STS_add(|*addr|),STS_delta(|*addr|)" prop Set :: (if (self.monitor != "Nothing") {self.operation = $1, "ok"} else {self.error("The monitor field must set to modify this field")}) } inst client :: "USER" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } inst iUseDispatcher :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Use Dispatcher" prop JSName :: "useDispatcher" prop Visible :: 1 prop Writable :: if (self.client == "USER") {1} else {0} prop NoGen :: 0 prop TabName :: "Dispatcher" prop Set :: (if (self.function == @CLK_F_isr) {self.error("This HWI is being used by the system and cannot be modified")} else {self.iUseDispatcher = $1, "ok"}) } inst iArg :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Arg" prop JSName :: "arg" prop Visible :: 1 prop Writable :: if ((self.iUseDispatcher == 1) && (self.client == "USER")) {1} else {0} prop NoGen :: 0 prop TabName :: "Dispatcher" prop Set :: (self.iArg = $1, "ok") } inst iIntrMask :: "self" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Interrupt Mask" prop JSName :: "interruptMask" prop Enum :: "all,none,self,bitmask" prop Visible :: 1 prop Writable :: if (self.iUseDispatcher == 1) {1} else {0} prop NoGen :: 1 prop TabName :: "Dispatcher" prop Set :: (if ($1 == "all") {self.IntrMask = 0xffff} else {if ($1 == "self") {self.IntrMask = if (self.iId >= 16) {(1 << (self.iId - 16))} else {0}} else {if ($1 == "none") {self.IntrMask = 0} }}, self.iIntrMask = $1, "ok") } inst IntrMask :: if (self.iId >= 16) {(1 << (self.iId - 16))} else {0} { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Style :: 0x02 prop Label :: "Interrupt Bit Mask" prop JSName :: "interruptBitMask" prop Visible :: 1 prop Writable :: if ((self.iUseDispatcher == 1) && (self.iIntrMask == "bitmask")) {1} else {0} prop NoGen :: 0 prop TabName :: "Dispatcher" prop Set :: (if ($1 > 0xffff) {self.error("Invalid Number")} else {self.IntrMask = $1, "ok"}) } } object HWI_RS_STS :: STS { param iComment :: "provides statistics for the RS ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_RS :: HWI { param iComment :: "defines function for the RS ISR" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @_c_int00 param iSTSObj :: HWI_RS_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_NMI_STS :: STS { param iComment :: "provides statistics for the NMI ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_NMI :: HWI { param iComment :: "defines function for the NMI ISR" param iIsUsed :: 1 param iId :: 1 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_NMI_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT17_STS :: STS { param iComment :: "provides statistics for the SINT17 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT17 :: HWI { param iComment :: "defines function for the SINT17 ISR" param iIsUsed :: 1 param iId :: 2 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT17_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT18_STS :: STS { param iComment :: "provides statistics for the SINT18 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT18 :: HWI { param iComment :: "defines function for the SINT18 ISR" param iIsUsed :: 1 param iId :: 3 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT18_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT19_STS :: STS { param iComment :: "provides statistics for the SINT19 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT19 :: HWI { param iComment :: "defines function for the SINT19 ISR" param iIsUsed :: 1 param iId :: 4 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT19_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT20_STS :: STS { param iComment :: "provides statistics for the SINT20 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT20 :: HWI { param iComment :: "defines function for the SINT20 ISR" param iIsUsed :: 1 param iId :: 5 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT20_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT21_STS :: STS { param iComment :: "provides statistics for the SINT21 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT21 :: HWI { param iComment :: "defines function for the SINT21 ISR" param iIsUsed :: 1 param iId :: 6 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT21_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT22_STS :: STS { param iComment :: "provides statistics for the SINT22 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT22 :: HWI { param iComment :: "defines function for the SINT22 ISR" param iIsUsed :: 1 param iId :: 7 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT22_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT23_STS :: STS { param iComment :: "provides statistics for the SINT23 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT23 :: HWI { param iComment :: "defines function for the SINT23 ISR" param iIsUsed :: 1 param iId :: 8 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT23_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT24_STS :: STS { param iComment :: "provides statistics for the SINT24 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT24 :: HWI { param iComment :: "defines function for the SINT24 ISR" param iIsUsed :: 1 param iId :: 9 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT24_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT25_STS :: STS { param iComment :: "provides statistics for the SINT25 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT25 :: HWI { param iComment :: "defines function for the SINT25 ISR" param iIsUsed :: 1 param iId :: 10 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT25_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT26_STS :: STS { param iComment :: "provides statistics for the SINT26 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT26 :: HWI { param iComment :: "defines function for the SINT26 ISR" param iIsUsed :: 1 param iId :: 11 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT26_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT27_STS :: STS { param iComment :: "provides statistics for the SINT27 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT27 :: HWI { param iComment :: "defines function for the SINT27 ISR" param iIsUsed :: 1 param iId :: 12 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT27_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT28_STS :: STS { param iComment :: "provides statistics for the SINT28 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT28 :: HWI { param iComment :: "defines function for the SINT28 ISR" param iIsUsed :: 1 param iId :: 13 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT28_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT29_STS :: STS { param iComment :: "provides statistics for the SINT29 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT29 :: HWI { param iComment :: "RESERVED for RTDX" param iIsUsed :: 1 param iId :: 14 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @RESERVED param iSTSObj :: HWI_SINT29_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "RTDX" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_SINT30_STS :: STS { param iComment :: "provides statistics for the SINT30 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT30 :: HWI { param iComment :: "RESERVED for RTDX" param iIsUsed :: 1 param iId :: 15 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @RESERVED param iSTSObj :: HWI_SINT30_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "RTDX" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 0 } object HWI_INT0_STS :: STS { param iComment :: "provides statistics for the INT0 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_INT0 :: HWI { param iComment :: "defines function for the INT0 ISR" param iIsUsed :: 1 param iId :: 16 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_INT0_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 1 } object HWI_INT1_STS :: STS { param iComment :: "provides statistics for the INT1 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_INT1 :: HWI { param iComment :: "defines function for the INT1 ISR" param iIsUsed :: 1 param iId :: 17 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_INT1_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 2 } object HWI_INT2_STS :: STS { param iComment :: "provides statistics for the INT2 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_INT2 :: HWI { param iComment :: "defines function for the INT2 ISR" param iIsUsed :: 1 param iId :: 18 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_INT2_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 4 } object HWI_TINT_STS :: STS { param iComment :: "provides statistics for the TINT ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_TINT :: HWI { param iComment :: "defines function for the TINT ISR" param iIsUsed :: 1 param iId :: 19 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @CLK_F_isr param iSTSObj :: HWI_TINT_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "CLK" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 8 } object HWI_SINT4_STS :: STS { param iComment :: "provides statistics for the SINT4 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT4 :: HWI { param iComment :: "defines function for the SINT4 ISR" param iIsUsed :: 1 param iId :: 20 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT4_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 16 } object HWI_SINT5_STS :: STS { param iComment :: "provides statistics for the SINT5 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT5 :: HWI { param iComment :: "defines function for the SINT5 ISR" param iIsUsed :: 1 param iId :: 21 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT5_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 32 } object HWI_SINT6_STS :: STS { param iComment :: "provides statistics for the SINT6 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT6 :: HWI { param iComment :: "defines function for the SINT6 ISR" param iIsUsed :: 1 param iId :: 22 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT6_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 64 } object HWI_SINT7_STS :: STS { param iComment :: "provides statistics for the SINT7 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT7 :: HWI { param iComment :: "defines function for the SINT7 ISR" param iIsUsed :: 1 param iId :: 23 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT7_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 128 } object HWI_SINT8_STS :: STS { param iComment :: "provides statistics for the SINT8 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT8 :: HWI { param iComment :: "defines function for the SINT8 ISR" param iIsUsed :: 1 param iId :: 24 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT8_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 256 } object HWI_SINT9_STS :: STS { param iComment :: "provides statistics for the SINT9 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT9 :: HWI { param iComment :: "defines function for the SINT9 ISR" param iIsUsed :: 1 param iId :: 25 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT9_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 512 } object HWI_SINT10_STS :: STS { param iComment :: "provides statistics for the SINT10 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT10 :: HWI { param iComment :: "defines function for the SINT10 ISR" param iIsUsed :: 1 param iId :: 26 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT10_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 1024 } object HWI_SINT11_STS :: STS { param iComment :: "provides statistics for the SINT11 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT11 :: HWI { param iComment :: "defines function for the SINT11 ISR" param iIsUsed :: 1 param iId :: 27 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT11_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 2048 } object HWI_SINT12_STS :: STS { param iComment :: "provides statistics for the SINT12 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT12 :: HWI { param iComment :: "defines function for the SINT12 ISR" param iIsUsed :: 1 param iId :: 28 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT12_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 4096 } object HWI_SINT13_STS :: STS { param iComment :: "provides statistics for the SINT13 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT13 :: HWI { param iComment :: "defines function for the SINT13 ISR" param iIsUsed :: 1 param iId :: 29 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT13_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 8192 } object HWI_SINT14_STS :: STS { param iComment :: "provides statistics for the SINT14 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT14 :: HWI { param iComment :: "defines function for the SINT14 ISR" param iIsUsed :: 1 param iId :: 30 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT14_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 16384 } object HWI_SINT15_STS :: STS { param iComment :: "provides statistics for the SINT15 ISR" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HWI" param iDelMsg :: "This STS object is being used by a HWI object and cannot be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } object HWI_SINT15 :: HWI { param iComment :: "defines function for the SINT15 ISR" param iIsUsed :: 1 param iId :: 31 param iDelUser :: "HWI" param iDelMsg :: "Hardware interrupt objects cannot be deleted" param function :: @HWI_unused param iSTSObj :: HWI_SINT15_STS param monitor :: "Nothing" param saveAddr :: 0 param saveType :: "signed" param addr :: 0 param dataType :: "signed" param operation :: "STS_add(*addr)" param client :: "USER" param iUseDispatcher :: 0 param iArg :: 0 param iIntrMask :: "self" param IntrMask :: 32768 } type SWI { isa ObjectMgr prop name :: "SWI" prop Label :: "SWI - Software Interrupt Manager" prop IsContainedIn :: SCH prop GlobalIcon :: 123 prop InstanceIcon :: 124 prop InstanceHelpTopic :: (211) prop GlobalHelpTopic :: (111) prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0}) prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1}) prop STSGetMaxFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}}) prop STSGetSumFmt :: (SWI.STSGetMaxFmt()) prop STSGetAvgFmt :: (if (SWI.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if SWI.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}}) prop STSFilterMax :: ($a = if (CLK.HIRES) {$1 * CLK.INSTRPERCLK} else {$1}, $a = $a * (CLK.TDDR + 1), $a) prop STSFilterSum :: (SWI.STSFilterMax($1)) prop GetPriority :: (self.pri) prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %1U_A_TABBEG = .;\n %4S\n %1U_A_TABEND = .;\n %1U_A_TABLEN = (. - %1U_A_TABBEG) / %2d;%4t\n} > %3s%5s\0, name, objSize, memSeg, linkString, pageString") prop GenLinkEpilogue :: ("%0t}\n\0") prop linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"} prop pageString :: if GBL.DSPTYPE == 62 {""} else {if GBL.DSPTYPE == 55 {""} else {" PAGE 1"}} prop memSeg :: SWI.OBJMEMSEG prop objSize :: if GBL.DSPTYPE == 55 {(2 * (11 * 1))} else {(11 * 1)} prop maxObjs :: (32767) prop dataSize :: ((11 * 1) * SWI.gNumOf) prop localCanCreate :: (if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {"ok"}) prop localCreate :: (STS.gNumEmbed += 1, if (GBL.CALLMODEL == "far") {SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run} else {SWI.EXECFXN = @SWI_F_exec, SWI.RUNFXN = @SWI_F_run}, "ok") prop localDelete :: (STS.gNumEmbed -= 1, if (self.gNumOf == 1) {SWI.EXECFXN = @FXN_F_nop, SWI.RUNFXN = @FXN_F_nop} , "ok") prop SortByField :: "pri" prop SortGroups :: 15 prop InstancePropertyPage :: ("{B7240DEC-AA51-11cf-9BFE-0000C0AC14C7}") prop GlobalPropertyPage :: ("{B7240DED-AA51-11cf-9BFE-0000C0AC14C7}") prop DependsOn :: "GBL,OBJ,CLK,HST,HWI,IDL,LCK,LOG,MBX,MEM,PIP,PRD,QUE,RTDX,SEM,SIO,STS,SYS,DEV,UDEV,DGN,DHL,DPI" prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"swi.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SWI_Obj %0r;\n\0"} else {"extern SWI_Obj %0r;\n\0"}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global EHOOKFXN :: @GBL_NULL { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Enable Scheduler and Return to Idle Function" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 0 } global IHOOKFXN :: @GBL_NULL { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Exit Scheduler and Return to Idle Function" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 0 } global EXECFXN :: @SWI_F_exec { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Configured SWI executive" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global RUNFXN :: @SWI_F_run { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Configured SWI executive body" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global STSUNITS :: "raw" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "raw,milliseconds,microseconds" prop Label :: "Statistics Units" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst priority :: = (self.pri + 1) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "priority" prop JSName :: "" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst function :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "fxn" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 } inst pri :: 1 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" prop Label :: "priority" prop JSName :: "priority" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop Set :: ($a = self.pri, self.pri = $1, if (self == KNL_swi) {if ($1 != 0) {self.pri = $a, self.error("KNL_swi must remain at Priority 0.")} else {"ok"}} else {if ($1 == 0 && KNL_swi.iIsUsed == 1) {self.pri = $a, self.error("Priority 0 reserved for KNL_swi only.")} else {GlobalStatus.gDirty = 1, if (GlobalStatus.MinStackSize >= MEM.STACKSIZE) {self.pri = $a, self.error("System stack size (see MEM) is too small to support a new SWI priority level.")} else {if ($1 > 14) {self.pri = $a, self.error("SWI can only support 15 priority levels.")} else {"ok"}}}}) } inst mailbox :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 | 0x02 prop JSName :: "mailbox" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 } inst arg0 :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "arg0" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 } inst arg1 :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "arg1" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 } inst dorta :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } inst Order :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "order" prop NoGen :: 1 prop Writable :: 1 } } type TSK { isa ObjectMgr prop name :: "TSK" prop Label :: "TSK - Task Manager" prop IsConfMod :: self.USETSK prop IsContainedIn :: SCH prop DependsOn :: "GBL,OBJ,CLK,HST,HWI,IDL,LCK,LOG,MBX,MEM,PIP,PRD,QUE,RTDX,SEM,SIO,STS,SWI,SYS,DEV,UDEV,DGN,DHL,DPI,HOOK" prop GlobalIcon :: 143 prop InstanceIcon :: 144 prop GlobalHelpTopic :: (314) prop InstanceHelpTopic :: (414) prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}") prop GlobalPropertyPage :: ("{473C4A65-B1A8-11d0-9885-0020AFEE33C6}") prop SortByField :: "iPRI" prop SortGroups :: 17 prop AllocType :: (if (self.USETSK) {"1\0, _bssAllocDesc, _bssmemSeg, _placement"} else {""}) prop _objAllocDesc :: ("%8t .TSK$obj: {}") prop _bssAllocDesc :: ("%8t .tsk: {%12t\n *(.tsk)%8t\n }") prop _bssmemSeg :: self.OBJMEMSEG prop _objmemSeg :: MEM.CFGOBJSEG prop AllocInst :: (if self.iAUTOSTK {"1\0, _instStackDesc, _instStackSeg, _placement"} else {"0\0"}) prop _instStackDesc :: (if (GBL.DSPTYPE == 40) {"%8t .%0s$stk: fill = 0xC0FFEE {%12t\n %0s$stack = .;\n . += %1d;%8t\n }\0, _instStackSize"} else {"%8t .%0s$stk: {%12t\n *(.%0s$stk)%8t\n }\0"}) prop _self :: self prop _instStackSize :: self.iSTKSZ * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) prop _instStackSeg :: self.iSTKSEG prop _placement :: (0x7ffff / 2) prop localInit :: (KNL_swi.Create("SWI"), if (self.STACKSEG.iAllocHeap == 1) {self.STACKSEG.iReqHeapCount++, "ok"} else {self.error("TSK default stack segment must be a memory segment with a heap")}) prop HighTimeBased :: (if CLK.HIRES == 1 {1} else {0}) prop LowTimeBased :: (if CLK.HIRES == 1 {0} else {1}) prop STSGetMaxFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%g inst"} else {"%g ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}}) prop STSGetSumFmt :: (TSK.STSGetMaxFmt()) prop STSGetAvgFmt :: (if (TSK.STSUNITS == "raw") {if CLK.HIRES {"%.2f inst"} else {"%.2f ints"}} else {if TSK.STSUNITS == "microseconds" {"%.1f us"} else {"%.2f ms"}}) prop STSFilterMax :: ($a = if (CLK.HIRES) {$1 * CLK.INSTRPERCLK} else {$1}, $a = $a * (CLK.TDDR + 1), $a) prop STSFilterSum :: (TSK.STSFilterMax($1)) prop localCreate :: (STS.gNumEmbed += 1, "ok") prop localCanCreate :: ($e = "ok", if (GBL.DSPTYPE != 62) {if (TSK.STACKSIZE < GlobalStatus.MinStackSize) {$e = self.error("Stack size is too small")} } , if (TSK.USETSK != 1) {$e = self.error("TSK manager not enabled")} , $e) prop localDelete :: (STS.gNumEmbed -= 1, "ok") prop GenLinkPrologue :: (if (self.USETSK == 0) {"_KNL_swi = 0;"} ) prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"tsk.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far TSK_Obj %0r;\n\0"} else {"extern TSK_Obj %0r;\n\0"}) prop _objId :: self.iId prop dataSize :: ($d = 0, scan ($i; TSK) {$d += ($i.iSTKSZ + (4 + 21) * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE))}, $d) prop minStackSize :: ($a = self.STACKSIZE, scan ($i; TSK) {if ($i.STACKSIZE < $a) {$a = $i.STACKSIZE} }, $a) prop maxObjs :: (32767) prop GetPriority :: (self.iPRI) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 2 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global USETSK :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable TSK Manager" prop JSName :: "ENABLETSK" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: (if ($1 == 0) {if (self.gNumOf > 1) {self.error("Cannot disable TSK until all TSK objects are deleted.")} else {self.STACKSEG.iReqHeapCount--, TSK.STACKSEG = MEM_NULL, TSK.OBJMEMSEG = MEM_NULL, TSK_idle.iSTKSEG = MEM_NULL, TSK_idle.Delete("TSK"), KNL_swi.Delete("TSK"), PRD.THOOKFXN = @FXN_F_nop, self.USETSK = $1, "ok"}} else {$e = "ok", scan ($a; SWI) {if ($a != KNL_swi && $a.pri == 0 && $a.iIsUsed == 1) {$e = self.error("Cannot enable TSK when there are SWI objects at Priority 0."), break} }, if ($e == "ok") {TSK.STACKSEG = MEM_NULL, scan ($b; MEM) {if ($b.iAllocHeap && $b != MEM_NULL) {TSK.STACKSEG = $b, break} }, self.STACKSEG.iReqHeapCount++, self.USETSK = $1, TSK.OBJMEMSEG = SWI.OBJMEMSEG, TSK_idle.iSTKSEG = self.OBJMEMSEG, TSK_idle.Create("TSK"), KNL_swi.Create("TSK"), PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN, if (MEM.NOHEAPS) {self.STACKSEG.iReqHeapCount++, $e = "No Memory Heaps Are Allocated for Dynamic TSK creation"} , $e} else {$e}}) } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop JSName :: "OBJMEMSEG" prop MemberType :: MEM prop MemberTest :: MEM.dataNullMember($1) prop Label :: "Object Memory" prop Visible :: 1 prop Writable :: self.USETSK prop NoGen :: 1 } global CALLBACKOBJ :: nil { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global STACKSIZE :: 256 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Label :: "Default stack size (MAUs)" prop JSName :: "STACKSIZE" prop Visible :: 1 prop Writable :: self.USETSK prop Set :: ($e = "ok", if (GBL.DSPTYPE != 62) {if ($1 < GlobalStatus.MinStackSize) {$e = self.error("The default stack size must be at least as large as the Estimated Minimum Stack Size.")} } , if ($e == "ok") {self.STACKSIZE = $1} , $e) } global STACKSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataNullMember($1) && $1.iAllocHeap prop Label :: "Stack segment for dynamic tasks" prop JSName :: "STACKSEG" prop Visible :: 1 prop Writable :: self.USETSK && (MEM.NOHEAPS == 0) prop Set :: (if (self.STACKSEG.iReqHeapCount > 0) {self.STACKSEG.iReqHeapCount--} , self.STACKSEG = $1, self.STACKSEG.iReqHeapCount++, "ok") } global PRIORITY :: 1 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "PRIORITY" prop Enum :: "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15" prop Label :: "Default task priority" prop Visible :: 1 prop Writable :: self.USETSK } global CREATEFXN :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Create function" prop JSName :: "CREATEFXN" prop Visible :: 1 prop Writable :: self.USETSK prop TabName :: "Function Hooks" prop Set :: (self.CREATEFXN = $1, HOOK_KNL.createFxn = self.CREATEFXN, "ok") prop NoGen :: 1 } global VCREATEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doCreate} else {self.CREATEFXN} { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Visible :: 0 } global DELETEFXN :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Delete function" prop JSName :: "DELETEFXN" prop Visible :: 1 prop Writable :: self.USETSK prop TabName :: "Function Hooks" prop Set :: (self.DELETEFXN = $1, HOOK_KNL.deleteFxn = self.DELETEFXN, "ok") prop NoGen :: 1 } global VDELETEFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doDelete} else {self.DELETEFXN} { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Visible :: 0 } global EXITFXN :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Exit function" prop JSName :: "EXITFXN" prop Visible :: 1 prop Writable :: self.USETSK prop TabName :: "Function Hooks" prop Set :: (self.EXITFXN = $1, HOOK_KNL.exitFxn = self.EXITFXN, "ok") prop NoGen :: 1 } global VEXITFXN :: = if HOOK_KNL.iIsUsed == 1 {@__HOOK_doExit} else {self.EXITFXN} { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Visible :: 0 } global DOSWITCH :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Call switch function" prop JSName :: "CALLSWITCHFXN" prop Writable :: self.USETSK prop Visible :: 1 prop NoGen :: 1 prop Set :: (self.DOSWITCH = $1, HOOK_KNL.callSwitchFxn = self.DOSWITCH, "ok") prop TabName :: "Function Hooks" } global VSWFXN :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Switch function" prop JSName :: "SWITCHFXN" prop Visible :: 1 prop NoGen :: 1 prop Writable :: self.DOSWITCH && self.USETSK prop Set :: (self.VSWFXN = $1, HOOK_KNL.switchFxn = self.VSWFXN, "ok") prop TabName :: "Function Hooks" } global SWITCHFXN :: = if self.DOSWITCH {(if HOOK_KNL.iIsUsed == 1 {@__HOOK_doSwitch} else {self.VSWFXN})} else {0} { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "" prop TabName :: "Function Hooks" } global DOREADY :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Call ready function" prop JSName :: "CALLREADYFXN" prop Writable :: self.USETSK prop Visible :: 1 prop NoGen :: 1 prop Set :: (self.DOREADY = $1, HOOK_KNL.callReadyFxn = self.DOREADY, "ok") prop TabName :: "Function Hooks" } global VRDYFXN :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Ready function" prop JSName :: "READYFXN" prop Visible :: 1 prop Writable :: self.DOREADY && self.USETSK prop NoGen :: 1 prop Set :: (self.VRDYFXN = $1, HOOK_KNL.readyFxn = self.VRDYFXN, "ok") prop TabName :: "Function Hooks" } global READYFXN :: = if self.DOREADY {(if HOOK_KNL.iIsUsed == 1 {@__HOOK_doReady} else {self.VRDYFXN})} else {0} { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "" prop TabName :: "Function Hooks" } global NUM_HOOKS :: = HOOK.gNumOf { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 } global STSUNITS :: "raw" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "raw,milliseconds,microseconds" prop Label :: "Statistics Units" prop Visible :: 0 prop Writable :: self.USETSK prop NoGen :: 1 } global TSKTICK :: "PRD" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "PRD,User" prop Label :: "TSK tick driven by" prop JSName :: "DRIVETSKTICK" prop Visible :: 1 prop Writable :: self.USETSK prop NoGen :: 1 prop Set :: (if ($1 != self.TSKTICK) {if ($1 == "PRD") {PRD.THOOKFXN = PRD.DEFAULT_THOOKFXN} , if ($1 == "User") {PRD.THOOKFXN = @_FXN_F_nop} , if ($1 != "PRD" && $1 != "User") {self.error("Invalid TSK tick driver selection")} } , self.TSKTICK = $1, "ok") } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iFXN :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Task function" prop JSName :: "fxn" prop Visible :: 1 prop Writable :: if self.iDelUser == "TSK" {0} else {1} prop TabName :: "Function" } inst iARG0 :: 0 { prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}" prop Label :: "Task function argument 0" prop JSName :: "arg0" prop Visible :: 1 prop Writable :: if self.iDelUser == "TSK" {0} else {1} prop TabName :: "Function" } inst iARG1 :: 0 { prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}" prop Label :: "Task function argument 1" prop JSName :: "arg1" prop Visible :: 1 prop Writable :: if self.iDelUser == "TSK" {0} else {1} prop TabName :: "Function" } inst iARG2 :: 0 { prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}" prop Label :: "Task function argument 2" prop JSName :: "arg2" prop Visible :: 1 prop Writable :: if self.iDelUser == "TSK" {0} else {1} prop TabName :: "Function" } inst iARG3 :: 0 { prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}" prop Label :: "Task function argument 3" prop JSName :: "arg3" prop Visible :: 1 prop Writable :: if self.iDelUser == "TSK" {0} else {1} prop TabName :: "Function" } inst iARG4 :: 0 { prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}" prop Label :: "Task function argument 4" prop JSName :: "arg4" prop Visible :: 1 prop Writable :: if self.iDelUser == "TSK" {0} else {1} prop TabName :: "Function" } inst iARG5 :: 0 { prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}" prop Label :: "Task function argument 5" prop JSName :: "arg5" prop Visible :: 1 prop Writable :: if self.iDelUser == "TSK" {0} else {1} prop TabName :: "Function" } inst iARG6 :: 0 { prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}" prop Label :: "Task function argument 6" prop JSName :: "arg6" prop Visible :: 1 prop Writable :: if self.iDelUser == "TSK" {0} else {1} prop TabName :: "Function" } inst iARG7 :: 0 { prop Type :: "{E91790E0-0456-11d2-B8D0-006008BDB66F}" prop Label :: "Task function argument 7" prop JSName :: "arg7" prop Visible :: 1 prop Writable :: if self.iDelUser == "TSK" {0} else {1} prop TabName :: "Function" } inst iAUTOSTK :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Automatically allocate stack" prop JSName :: "autoAllocateStack" prop Set :: (if (($1 == 1) && (self.iAUTOSTK == 0)) {self.iSTKSZ = TSK.STACKSIZE} , self.iAUTOSTK = $1, "ok") prop Visible :: 1 prop Writable :: if self.iDelUser == "TSK" {0} else {1} } inst iMANSTK :: @null { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Manually allocated stack" prop JSName :: "manualStack" prop Visible :: 1 prop Writable :: self.iAUTOSTK == 0 } inst iSTKSZ :: TSK.STACKSIZE { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Label :: "Stack size (MAUs)" prop JSName :: "stackSize" prop Visible :: 1 prop Writable :: 1 prop Set :: ($a = $1, if ($a < 32) {if (GBL.DSPSUBTYPE == 62) {self.error("Task stack size is too small.")} else {if ($a < 32) {self.error("Task stack size is too small.")} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}}} else {self.iSTKSZ = ($1 - ($1 - 1) % 8 + 7), GlobalStatus.gDirty = 1, "ok"}) } inst iSTKSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: $1 == MEM_NULL || MEM.dataMember($1) prop Label :: "Stack Memory Segment" prop JSName :: "stackMemSeg" prop Visible :: 1 prop Writable :: 1 } inst iPRI :: TSK.PRIORITY { prop Label :: "Priority" prop JSName :: "priority" prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15" prop Visible :: 1 prop Writable :: 1 prop Set :: (if (self == TSK_idle) {if ($1 == 0) {"ok"} else {self.error("Cannot change the priority of the idle task.")}} else {if ($1 == 0) {self.error("Priority 0 is reserved for the system idle task")} else {self.iPRI = $1, "ok"}}) } inst iENV :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Environment pointer" prop JSName :: "envPointer" prop Visible :: 1 prop Writable :: self.iDelUser != "TSK" prop TabName :: "Advanced" } inst iEXITFLAG :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Don't shut down system while this task is still running" prop JSName :: "exitFlag" prop Visible :: 1 prop Writable :: 1 prop TabName :: "Advanced" } inst iUSETSKNAME :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Allocate Task Name on Target" prop JSName :: "allocateTaskName" prop Visible :: 1 prop Writable :: 1 prop TabName :: "Advanced" } inst iSTATREG :: 0x0000 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%08x" prop Label :: "Initial Status Register value" prop Visible :: 0 prop Writable :: 1 } inst Order :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "order" prop NoGen :: 1 prop Writable :: 1 } } object TSK_idle :: TSK { param iComment :: "This is the idle task; it only runs when no other task is ready" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "TSK" param iDelMsg :: "This task executes all IDL functions and cannot be deleted" param iFXN :: @_IDL_loop param iARG0 :: 0 param iARG1 :: 0 param iARG2 :: 0 param iARG3 :: 0 param iARG4 :: 0 param iARG5 :: 0 param iARG6 :: 0 param iARG7 :: 0 param iAUTOSTK :: 1 param iMANSTK :: @null param iSTKSZ :: 256 param iSTKSEG :: IDATA param iPRI :: 0 param iENV :: 0 param iEXITFLAG :: 1 param iUSETSKNAME :: 0 param iSTATREG :: 0 param Order :: 1 } object KNL_swi :: SWI { param iComment :: "This Software Interrupt calls the TSK scheduler" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "TSK" param iDelMsg :: "This object cannot be deleted in DSP/BIOS." param function :: @_KNL_run param pri :: 0 param mailbox :: 0 param arg0 :: 0 param arg1 :: 0 param dorta :: 1 param Order :: 2 } type IDL { isa ObjectMgr prop Label :: "IDL - Idle Function Manager" prop name :: "IDL" prop IsContainedIn :: SCH prop GlobalIcon :: 111 prop InstanceIcon :: 112 prop GlobalHelpTopic :: (106) prop InstanceHelpTopic :: (206) prop InstancePropertyPage :: ("{586735F1-770B-11d0-A61F-0000C070F3E9}") prop GlobalPropertyPage :: ("{586735F0-770B-11d0-A61F-0000C070F3E9}") prop GenLinkPrologue :: ("SECTIONS {%4t\n.%1L: {%8t\n %1U_A_TABBEG = .;\n %3S\n %1U_A_TABEND = .;\n %1U_A_TABLEN = (. - %1U_A_TABBEG) / %2d;\0, name, _objSize, _linkString") prop GenLinkEpilogue :: ("%8t %1U_A_CALBEG = .;\n %4S\n %1U_A_CALEND = .;\n %1U_A_CALLEN = (. - %1U_A_CALBEG) / %2d;%4t\n} > %3s%5s%0t\n}\n%6S\n\0, name, _objSize, _memSeg, _linkCalString, _pageString, _nilBusyObj") prop _linkString :: "*(.%1L)" prop _linkCalString :: "*(.%1Lcal)" prop _pageString :: if GBL.DSPTYPE == 62 {""} else {if GBL.DSPTYPE == 55 {""} else {" PAGE 1"}} prop _nilBusyObj :: (if ((IDL.USEIDLBUSYOBJ == 0) && (GBL.ROM == 1)) {"IDL_busyObj = 0;\n"} else {""}) prop _memSeg :: IDL.OBJMEMSEG prop _objSize :: if GBL.DSPTYPE == 55 {(2 * (2 * 1))} else {(2 * 1)} prop dataSize :: ((2 * 1) * (IDL.gNumOf + 1)) prop maxObjs :: (32767) prop SortByField :: "iPri" prop SortGroups :: 1 prop idlFxnSum :: ($a = 0, scan ($i; IDL) {$a += $i.cycles}, $a) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global AUTOCALCULATE :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Auto calculate idle loop instruction count" prop JSName :: "AUTOCALCULATE" prop Visible :: 1 prop Writable :: CLK.USETIMER prop Set :: (if ($1 == 1 && CLK.USETIMER == 0) {self.error("CLK must be enabled to do idle loop intruction count")} else {if ($1 == 1 && GBL.ENABLEINST == 0) {self.error("Real Time Analysis must be enabled to do idle loop instuction count")} else {self.AUTOCALCULATE = $1, "ok"}}) prop NoGen :: 1 } global USECLKIDLTIME :: = IDL.AUTOCALCULATE { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } global USEIDLBUSYOBJ :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global CALIBRFXN :: = (if (IDL.AUTOCALCULATE == 1) {if TSK.USETSK {@IDL_F_stub} else {@IDL_F_calibrate}} else {@GBL_NULL}) { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Idle Loop Auto-Calibrate Function" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 0 } global CALIBRERROR :: = (if (GBL.DSPTYPE == 62 && IDL.CALIBRFXN == @IDL_F_stub) {6} else {0}) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Idle Loop Auto-Calibrate Error" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } global LOOPOVERHEAD :: 0 { prop Label :: "Idle Loop Instruction Count" prop JSName :: "LOOPINSTCOUNT" prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 1 prop Writable :: self.AUTOCALCULATE == 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst function :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "fxn" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 } inst cycles :: 0 { prop Label :: "CPU cycles" prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: if (self.iDelUser == "USER") {1} else {0} prop NoGen :: 1 } inst calibration :: 1 { prop Label :: "Include in CPU load calibration" prop JSName :: "calibration" prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 1 prop Writable :: if (self.iDelUser == "USER") {1} else {0} prop NoGen :: 0 } inst Order :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "order" prop NoGen :: 1 prop Writable :: 1 } inst iPri :: 0 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop NoGen :: 1 } } object IDL_cpuLoad :: IDL { param iComment :: "This object is required by the system to acquire CPU load data" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "IDL" param iDelMsg :: "This object is required to compute CPU load and can't be deleted" param function :: @IDL_F_busy param cycles :: 0 param calibration :: 1 param Order :: 4 param iPri :: 0 } object IDL_busyObj :: STS { param iComment :: "This object is required by the system to accumulate CPU load statistics" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "IDL" param iDelMsg :: "This object is required to accumulate CPU load data and can't be deleted" param prev :: 0 param format :: "%g" param unittype :: "Not time based" param operation :: "Nothing" param iA :: 1 param iB :: 0 param iC :: 1 param prevhigh :: 0 param prevlow :: 0 } type LOG { isa ObjectMgr prop name :: "LOG" prop Label :: "LOG - Event Log Manager" prop IsContainedIn :: INS prop GlobalIcon :: 113 prop InstanceIcon :: 114 prop InstanceHelpTopic :: (207) prop GlobalHelpTopic :: (107) prop InstancePropertyPage :: ("{B7240DE8-AA51-11cf-9BFE-0000C0AC14C7}") prop GlobalPropertyPage :: ("{B7240DE9-AA51-11cf-9BFE-0000C0AC14C7}") prop maxObjs :: (32767) prop AllocType :: ("2\0, _globalAllocDesc, _memSeg, _placement, _printfAllocDesc, _memSeg, _placement") prop _globalAllocDesc :: ("%8t .%1L: {%12t\n %1U_A_TABBEG = .;\n _%1U_A_TABBEG = .;\n %2S\n %1U_A_TABEND = .;\n _%1U_A_TABEND = .;\n %1U_A_TABLEN = (. - _%1U_A_TABBEG) / %3d;\n _%1U_A_TABLEN = (. - _%1U_A_TABBEG) / %3d;%8t\n }\0, name, _linkString, _objSize") prop _printfAllocDesc :: ("%8t .printf (COPY): {}") prop _placement :: (0x7ffff / 2) prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement") prop _fillValue :: if GBL.DSPWORDSIZE == 16 {0xffff} else {0xffffffff} prop _instAllocDesc :: ("%8t /* %0s buffer */\n .%0s$buf: align = 0x%1x fill = 0x%2x {}\0, _objAlign, _fillValue") prop _objSize :: if GBL.DSPTYPE == 55 {(2 * (6 * 1))} else {(6 * 1)} prop _memSeg :: LOG.OBJMEMSEG prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"} prop _objAlign :: if GBL.DSPTYPE == 55 {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {self.buflen * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)} prop _objMemSeg :: self.bufseg prop LogType :: self.iType prop LogFormat :: self.iFormat prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"log.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far LOG_Obj %0r;\n\0"} else {"extern LOG_Obj %0r;\n\0"}) prop dataSize :: ($d = 0, scan ($i; LOG) {if ($i.IsConfObj()) {$d += $i.buflen} , $d += (6 * 1)}, $d) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global ENABLED :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Compile in logging" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst bufseg :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "bufseg" prop JSName :: "bufSeg" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } inst buflen :: 64 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "0,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768" prop Label :: "buflen (words)" prop JSName :: "bufLen" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop Set :: (GlobalStatus.gDirty = 1, self.buflen = $1, "ok") } inst logtype :: "circular" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "circular,fixed" prop Label :: "logtype" prop JSName :: "logType" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } inst iType :: "printf" { prop Label :: "datatype" prop JSName :: "dataType" prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "printf,raw data" prop Visible :: 1 prop Writable :: if self.iType == "system" {0} else {1} prop NoGen :: 1 } inst iFormat :: "0x%x, 0x%x, 0x%x" { prop Label :: "format" prop JSName :: "format" prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 1 prop Writable :: if self.iType == "raw data" {1} else {0} prop NoGen :: 1 } } object LOG_system :: LOG { param iComment :: "This object is required by the system to accumulate execution trace information" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "LOG" param iDelMsg :: "LOG_system is a system log and cannot be deleted." param bufseg :: IDATA param buflen :: 64 param logtype :: "circular" param iType :: "system" param iFormat :: "0x%x, 0x%x, 0x%x" } type PIP { isa ObjectMgr prop Label :: "PIP - Buffered Pipe Manager" prop IsContainedIn :: IOM prop GlobalIcon :: 117 prop InstanceIcon :: 118 prop GlobalHelpTopic :: (109) prop InstanceHelpTopic :: (209) prop name :: "PIP" prop maxObjs :: (32767) prop dataSize :: ($b = 0, scan ($i; PIP) {if ($i.IsConfObj()) {$b += (3 + $i.framesize) * $i.numframes + 25} }, $b) prop InstancePropertyPage :: ("{B7240DF0-AA51-11cf-9BFE-0000C0AC14C8}") prop GlobalPropertyPage :: ("{B7240DF1-AA51-11cf-9BFE-0000C0AC14C8}") prop localCreate :: ("ok") prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement") prop _globalAllocDesc :: ("%8t .%1L: {%12t\n %1U_A_TABBEG = .;\n _%1U_A_TABBEG = .;\n %2S\n %1U_A_TABEND = .;\n _%1U_A_TABEND = .;\n %1U_A_TABLEN = (. - _%1U_A_TABBEG) / %3d;\n _%1U_A_TABLEN = (. - _%1U_A_TABBEG) / %3d;%8t\n }\0, name, _linkString, _objSize") prop AllocInst :: ("1\0, _instAllocDesc, _objMemSeg, _placement") prop _instAllocDesc :: (if self.bufalign > 1 {"%8t /* %0s buffer */\n .pip%1d: align = 0x%2x {}\0, _objId, _objAlign"} else {"%8t /* %0s buffer */\n .pip%1d: {}\0, _objId"}) prop _placement :: (0x7ffff / 2) prop _objId :: self.iId prop _objAlign :: self.bufalign prop _objMemSeg :: self.bufseg prop _linkString :: if (self.gNumOf + self.gNumEmbed) > 0 {"*(.%1L)"} else {"/* no %1U objects */"} prop _memSeg :: PIP.OBJMEMSEG prop _objSize :: 25 prop mkId :: (self.iId = self.gNextId++, self.gNumOf++, self.iId) prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"pip.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far PIP_Obj %0r;\n\0"} else {"extern PIP_Obj %0r;\n\0"}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global gNumEmbed :: 0 { prop NoGen :: 0 } global gNextId :: 0 inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst bufseg :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop JSName :: "bufSeg" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 1 } inst bufalign :: 1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "bufAlign" prop Style :: 0x01 | 0x02 prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 1 } inst buf :: "" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } inst framesize :: 8 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "framesize (words)" prop JSName :: "frameSize" prop Style :: 0x01 | 0x02 prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 prop Set :: (if ($1 < 1) {self.error("framesize must be >= 1.")} else {GlobalStatus.gDirty = 1, self.framesize = $1, "ok"}) } inst numframes :: 2 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop JSName :: "numFrames" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 prop Set :: (if ($1 < 1) {self.error("Pipes must contain at least 1 frame.")} else {GlobalStatus.gDirty = 1, self.numframes = $1, "ok"}) } inst monitor :: "reader" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "monitor" prop Enum :: "reader,writer,none" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } inst notifyWriter :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "notifyWriterFxn" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 prop TabName :: "Notify Functions" } inst nwarg0 :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "notifyWriterArg0" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 prop TabName :: "Notify Functions" } inst nwarg1 :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "notifyWriterArg1" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 prop TabName :: "Notify Functions" } inst notifyReader :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "notifyReaderFxn" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 prop TabName :: "Notify Functions" } inst nrarg0 :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "notifyReaderArg0" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 prop TabName :: "Notify Functions" } inst nrarg1 :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop JSName :: "notifyReaderArg1" prop Visible :: 1 prop Writable :: (if self.iDelUser == "USER" {1} else {0}) prop NoGen :: 0 prop TabName :: "Notify Functions" } } type SEM { isa ObjectMgr prop name :: "SEM" prop Label :: "SEM - Semaphore Manager" prop IsContainedIn :: SYN prop GlobalIcon :: 137 prop InstanceIcon :: 138 prop GlobalHelpTopic :: (310) prop InstanceHelpTopic :: (410) prop InstancePropertyPage :: ("{D01ACC04-38DD-11d1-988B-0020AFEE33C6}") prop GlobalPropertyPage :: ("{D01ACC05-38DD-11d1-988B-0020AFEE33C6}") prop maxObjs :: (32767) prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} ) prop _globalAllocDesc :: ("%8t .sem: {}") prop _placement :: (0x7ffff / 2) prop _memSeg :: self.OBJMEMSEG prop dataSize :: ((9 + 4) * SEM.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"sem.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SEM_Obj %0r;\n\0"} else {"extern SEM_Obj %0r;\n\0"}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global CALLBACKOBJ :: nil { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iCount :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x02 prop Label :: "Initial semaphore count" prop JSName :: "count" prop Visible :: 1 prop Writable :: 1 } } type MBX { isa ObjectMgr prop name :: "MBX" prop Label :: "MBX - Mailbox Manager" prop IsContainedIn :: SYN prop GlobalIcon :: 131 prop InstanceIcon :: 132 prop GlobalHelpTopic :: (307) prop InstanceHelpTopic :: (407) prop InstancePropertyPage :: ("{0EB45D44-38C1-11d1-988B-0020AFEE33C6}") prop GlobalPropertyPage :: ("{0EB45D45-38C1-11d1-988B-0020AFEE33C6}") prop maxObjs :: (32767) prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} ) prop _bssAllocDesc :: ("%8t .mbx: {}") prop _placement :: (0x7ffff / 2) prop _memSeg :: self.OBJMEMSEG prop AllocInst :: ("1\0 _instAllocDesc, _instMemSeg, _placement") prop _instAllocDesc :: ("%8t .%0s$que: {%12t\n %0s$queElems = .;\n . += %1d;%8t\n }\0, _qElemSize") prop _instMemSeg :: self.iMbxSeg prop _qElemSize :: (if (GBL.DSPTYPE == 55) {(2 + self.iMsgSize) * self.iMbxLength * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * 2} else {(2 + self.iMsgSize) * self.iMbxLength * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)}) prop dataSize :: ($d = 0, scan ($i; MBX) {$d += (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE) * (($i.iMsgSize + 2) * $i.iMbxLength + 30)}, $d) prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"mbx.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far MBX_Obj %0r;\n\0"} else {"extern MBX_Obj %0r;\n\0"}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global CALLBACKOBJ :: nil { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iMsgSize :: 1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x02 prop Label :: "Message Size" prop JSName :: "messageSize" prop Visible :: 1 prop Writable :: 1 prop Set :: (if ($1 == 0) {self.error("Message size cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMsgSize = $1, "ok"}) } inst iMbxLength :: 1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x02 prop Label :: "Mailbox Length" prop JSName :: "length" prop Visible :: 1 prop Writable :: 1 prop Set :: (if ($1 == 0) {self.error("Mailbox length cannot be zero")} else {GlobalStatus.gDirty = 1, self.iMbxLength = $1, "ok"}) } inst iMbxSeg :: MBX.OBJMEMSEG { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Element memory segment" prop JSName :: "elementSeg" prop Visible :: 1 prop Writable :: 1 } } type QUE { isa ObjectMgr prop name :: "QUE" prop Label :: "QUE - Atomic Queue Manager" prop IsContainedIn :: SYN prop GlobalIcon :: 133 prop InstanceIcon :: 134 prop IsConfMod :: 1 prop GlobalHelpTopic :: (309) prop InstanceHelpTopic :: (409) prop InstancePropertyPage :: ("{D01ACC01-38DD-11d1-988B-0020AFEE33C6}") prop GlobalPropertyPage :: ("{D01ACC02-38DD-11d1-988B-0020AFEE33C6}") prop maxObjs :: (32767) prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} ) prop _globalAllocDesc :: ("%8t .que: {}") prop _placement :: (0x7ffff / 2) prop _memSeg :: self.OBJMEMSEG prop dataSize :: (2 * QUE.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"que.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far QUE_Obj %0r;\n\0"} else {"extern QUE_Obj %0r;\n\0"}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global CALLBACKOBJ :: nil { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type LCK { isa ObjectMgr prop name :: "LCK" prop Label :: "LCK - Resource Lock Manager" prop IsContainedIn :: SYN prop GlobalIcon :: 129 prop InstanceIcon :: 130 prop IsConfMod :: 1 prop GlobalHelpTopic :: (306) prop InstanceHelpTopic :: (406) prop InstancePropertyPage :: ("{0EB45D40-38C1-11d1-988B-0020AFEE33C6}") prop GlobalPropertyPage :: ("{0EB45D41-38C1-11d1-988B-0020AFEE33C6}") prop maxObjs :: (32767) prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} ) prop _bssAllocDesc :: ("%8t .lck: {}") prop _objAllocDesc :: ("%8t .LCK$obj: {}") prop _placement :: (0x7ffff / 2) prop _memSeg :: self.OBJMEMSEG prop dataSize :: ((9 + 2) * LCK.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global CALLBACKOBJ :: nil { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type SIO { isa ObjectMgr prop name :: "SIO" prop Label :: "SIO - Stream Input and Output Manager" prop IsContainedIn :: IOM prop GlobalIcon :: 139 prop InstanceIcon :: 140 prop GlobalHelpTopic :: (311) prop InstanceHelpTopic :: (411) prop InstancePropertyPage :: ("{7C4C9A60-763E-11d1-988B-0020AFEE33C6}") prop GlobalPropertyPage :: ("{7C4C9A61-763E-11d1-988B-0020AFEE33C6}") prop maxObjs :: (32767) prop AllocType :: (if (self.gNumOf > 0) {"2\0, _bssAllocDesc, _memSeg, _placement, _objAllocDesc, _memSeg, _placement"} ) prop _bssAllocDesc :: ("%8t .SIO$bss: {%12t\n *(.SIO$bss)%8t\n }") prop _objAllocDesc :: ("%8t .SIO$obj: {%12t\n *(.SIO$obj)%8t\n }") prop _placement :: (0x7ffff / 2) prop _memSeg :: self.OBJMEMSEG prop AllocInst :: ("1\0, _instBufDesc, _instBufSeg, _placement") prop _instBufDesc :: ("%8t .%0s$bufs: {}") prop _instBufSeg :: self.iBufSegid prop defDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($j == nil && $i.iIsTerminal != 0 && $i.iIsVirtual == 0) {$j = $i, break} }} }, $j) prop setDev :: ($h = nil, $i = nil, $j = nil, scan ($h; nil) {if ($h.isDriver == 1) {scan ($i; $h) {if ($i == $1) {$j = $i} }} }, $j) prop localCanCreate :: (if (self.defDev == nil) {self.error("A driver device must be created before creating a stream.")} else {"ok"}) prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"sio.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far SIO_Obj %0r;\n\0"} else {"extern SIO_Obj %0r;\n\0"}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumEmbed :: 0 { prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDevice :: SIO.defDev { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop TypeTest :: $1.isDriver == 1 prop Label :: "Device" prop JSName :: "deviceName" prop Set :: (if (($1.iIsTerminal == 0) && (self.iDevCtrlParam == "")) {self.error("To select a stacking device, enter first a terminal device in Device Control Parameter")} else {if ($1.iIsVirtual == 1) {self.error("The device you have selected is a virtual instance, you must select a non-virtual device")} else {self.iDevice = self.setDev($1), "ok"}}) prop Visible :: 1 prop Writable :: 1 } inst iDevCtrlParam :: "" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Device Control Parameter" prop JSName :: "controlParameter" prop Visible :: 1 prop Writable :: 1 } inst iDevId :: = self.iDevice.iDevId inst iFxns :: = self.iDevice.iFxns inst iMode :: "input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "input,output" prop Label :: "Mode" prop JSName :: "mode" prop Visible :: 1 prop Writable :: 1 } inst iBufsize :: 0x80 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x02 prop Label :: "Buffer size" prop JSName :: "bufSize" prop Visible :: 1 prop Writable :: 1 } inst iNbufs :: 2 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Label :: "Number of buffers" prop JSName :: "numBufs" prop Visible :: 1 prop Writable :: 1 } inst iBufSegid :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Place buffers in memory segment" prop JSName :: "bufSegId" prop Visible :: 1 prop Writable :: self.iAllocBuf == 1 } inst iAlign :: 1 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768" prop Label :: "Buffer alignment" prop JSName :: "bufAlign" prop Visible :: 1 prop Writable :: self.iAllocBuf == 1 } inst iFlush :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Flush" prop JSName :: "flush" prop Visible :: 1 prop Writable :: 1 } inst iModelName :: "Standard" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Standard,Issue/Reclaim" prop Label :: "Model" prop JSName :: "modelName" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: (self.iModel = if $1 == "Standard" {"SIO_STANDARD"} else {"SIO_ISSUERECLAIM"}, self.iModelName = $1, "ok") } inst iAllocBuf :: = self.iSaveAllocBuf { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Allocate Static Buffer(s)" prop JSName :: "allocStaticBuf" prop Visible :: 1 prop Writable :: 1 prop Set :: (self.iSaveAllocBuf = $1, "ok") } inst iSaveAllocBuf :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } inst iModel :: "SIO_STANDARD" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "SIO_STANDARD,SIO_ISSUERECLAIM" prop Visible :: 0 prop Writable :: 0 } inst iTimeout :: = if self.iModel == "SIO_ISSUERECLAIM" {self.iSaveTimeout} else {-1} { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Timeout for I/O operation" prop JSName :: "timeout" prop Visible :: 1 prop Writable :: self.iModel == "SIO_ISSUERECLAIM" prop Set :: (self.iSaveTimeout = $1, "ok") } inst iSaveTimeout :: -1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } } type STS { isa ObjectMgr prop name :: "STS" prop Label :: "STS - Statistics Object Manager" prop IsContainedIn :: INS prop GlobalIcon :: 125 prop InstanceIcon :: 126 prop InstanceHelpTopic :: (212) prop GlobalHelpTopic :: (112) prop AllocType :: ("1\0, _globalAllocDesc, _memSeg, _placement") prop _globalAllocDesc :: ("%8t .%1L: {%12t\n %1U_A_TABBEG = .;\n _%1U_A_TABBEG = .;\n %2S\n %1U_A_TABEND = .;\n _%1U_A_TABEND = .;\n %1U_A_TABLEN = (. - _%1U_A_TABBEG) / %3d;\n _%1U_A_TABLEN = (. - _%1U_A_TABBEG) / %3d;%8t\n }\0, name, _linkString, _objSize") prop _placement :: (0x7ffff / 2) prop _linkString :: if self.gNumOf > 0 {"*(.%1L)"} else {"/* no %1U objects */"} prop _memSeg :: STS.OBJMEMSEG prop _objSize :: if GBL.DSPTYPE == 55 {(2 * (4 * 2))} else {(4 * 2)} prop dataSize :: ((4 * 2) * (STS.gNumOf + STS.gNumEmbed)) prop maxObjs :: (32767) prop InstancePropertyPage :: ("{B7240DEE-AA51-11cf-9BFE-0000C0AC14C7}") prop GlobalPropertyPage :: ("{B7240DEF-AA51-11cf-9BFE-0000C0AC14C7}") prop STSGetMaxFmt :: (self.format) prop STSGetSumFmt :: (self.format) prop STSGetAvgFmt :: ("%.2f") prop STSFilterSum :: ((self.iA * $1 + self.iB * $2) / (1.0 * self.iC)) prop STSFilterMax :: ((self.iA * $1 + self.iB) / (1.0 * self.iC)) prop HighTimeBased :: (if self.unittype == "High resolution time based" {1} else {0}) prop LowTimeBased :: (if self.unittype == "Low resolution time based" {1} else {0}) prop cGen :: 1 prop cHeaderName :: if self.gNumOf > 0 {"sts.h"} else {""} prop cGenHInst :: (if (GBL.DSPTYPE == 62) {"extern far STS_Obj %0r;\n\0"} else {"extern STS_Obj %0r;\n\0"}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global gNumEmbed :: 2 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst prev :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 1 prop Writable :: (if (self.iDelUser == "USER" || self.iDelUser == "HWI") {1} else {0}) prop JSName :: "previousVal" prop NoGen :: GBL.DSPTYPE != 40 && GBL.DSPTYPE != 62 prop Set :: (self.prev = $1, self.prevlow = $1 & 0xffff, self.prevhigh = ($1 >> 16) & 0xffff, "ok") } inst format :: "%g" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 1 prop Label :: "format" prop NoGen :: 1 } inst unittype :: "Not time based" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Not time based,High resolution time based,Low resolution time based" prop Label :: "unit type" prop JSName :: "unitType" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: (self.unittype = $1, if ($1 == "High resolution time based") {self.iA = CLK.INSTRPERCLK * (CLK.TDDR + 1), self.iB = 0, self.iC = 1, self.operation = "A * x"} else {if ($1 == "Low resolution time based") {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "A * x"} else {self.iA = 1, self.iB = 0, self.iC = 1, self.operation = "Nothing"}}, "ok") } inst operation :: "Nothing" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Nothing,A * x,A * x + B,(A * x + B) / C" prop Label :: "host operation" prop JSName :: "operation" prop Visible :: 1 prop Writable :: (if self.unittype == "Not time based" {1} else {0}) prop NoGen :: 1 prop Set :: (self.operation = $1, if ($1 == "Nothing") {self.iA = 1, self.iB = 0, self.iC = 1} else {if ($1 == "A * x") {self.iB = 0, self.iC = 1} else {if ($1 == "A * x + B") {self.iC = 1} }}, "ok") } inst iA :: 1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 1 prop Writable :: (if (self.unittype != "Not time based" || self.operation == "Nothing") {0} else {1}) prop Label :: "A" prop JSName :: "numA" prop NoGen :: 1 } inst iB :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 1 prop Writable :: (if (self.unittype != "Not time based" || self.operation == "Nothing" || self.operation == "A * x") {0} else {1}) prop Label :: "B" prop JSName :: "numB" prop NoGen :: 1 } inst iC :: 1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 1 prop Writable :: (if (self.unittype == "Not time based" && self.operation == "(A * x + B) / C") {1} else {0}) prop Label :: "C" prop JSName :: "numC" prop NoGen :: 1 } inst prevhigh :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: GBL.DSPTYPE == 40 || GBL.DSPTYPE == 62 } inst prevlow :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 0 } } type SYS { isa Module prop name :: "SYS" prop Label :: "SYS - System Settings" prop IsContainedIn :: SYSTEM prop GlobalIcon :: 141 prop InstanceIcon :: 142 prop IsConfMod :: 1 prop GlobalHelpTopic :: (313) prop InstanceHelpTopic :: (413) prop InstancePropertyPage :: ("{473C4A62-B1A8-11d0-9885-0020AFEE33C6}") prop GlobalPropertyPage :: ("{473C4A63-B1A8-11d0-9885-0020AFEE33C6}") prop AllocType :: (if self.PUTCFXN == @_UTL_doPutc {"2\0, _globalAllocDesc, _memSeg, _midPlace, \ _traceString, _traceSeg, _midPlace"} else {"1\0, _globalAllocDesc, _memSeg, _midPlace"}) prop _globalAllocDesc :: ("%8t .sys: {}") prop _traceString :: ("%8t .trace: fill = 0x0 {%12t\n_SYS_PUTCBEG = .;\n. += 0x%1x;\n_SYS_PUTCEND = . - 1;%8t\n }\0, _traceSize") prop _midPlace :: (0x7ffff / 2) prop _memSeg :: MEM.CFGOBJSEG prop _traceSeg :: SYS.TRACESEG prop _traceSize :: SYS.TRACESIZE global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global CALLBACKOBJ :: nil { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global TRACESIZE :: 512 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "%d" prop Style :: 0x01 | 0x02 prop Label :: "Trace Buffer Size" prop JSName :: "TRACESIZE" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global TRACESEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Trace Buffer Memory" prop JSName :: "TRACESEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } global ABORTFXN :: @_UTL_doAbort { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Abort Function" prop JSName :: "ABORTFXN" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } global ERRORFXN :: @_UTL_doError { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Error Function" prop JSName :: "ERRORFXN" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } global EXITFXN :: @_UTL_halt { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Exit Function" prop JSName :: "EXITFXN" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } global PUTCFXN :: @_UTL_doPutc { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Putc Function" prop JSName :: "PUTCFXN" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } } type SIODRIVER { isa ModuleFolder prop Label :: "SIO Drivers" prop IsContainedIn :: SIO prop GlobalIcon :: 127 prop GlobalHelpTopic :: (BIOSHELP_DEV_FOLDER) prop GlobalPropertyPage :: ("{A2BCEC70-5365-11d4-947C-0050048381B7}") global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type DEV { isa ObjectMgr prop name :: "DEV" prop Visible :: 0 prop AllocType :: (if (self.gNumOf > 0) {"1\0, _bssAllocDesc, _memSeg, _placement"} ) prop _bssAllocDesc :: ("%8t .dev: {}") prop _memSeg :: MEM.CFGOBJSEG prop _placement :: (0x7ffff / 2) prop DependsOn :: "GBL,OBJ,CLK,IDL,LCK,LOG,MBX,MEM,PIP,PRD,QUE,RTDX,SEM,SIO,STS,SYS,UDEV,DGN,DHL,DPI" global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type UDEV { isa ObjectMgr prop name :: "UDEV" prop Label :: "User-Defined Devices" prop IsContainedIn :: SIODRIVER prop GlobalIcon :: 127 prop InstanceIcon :: 128 prop GlobalHelpTopic :: (315) prop InstanceHelpTopic :: (415) prop InstancePropertyPage :: ("{7AE86AA0-35C0-11d1-988B-0020AFEE33C6}") prop GlobalPropertyPage :: ("{7AE86AA1-35C0-11d1-988B-0020AFEE33C6}") prop maxObjs :: (32767) prop isDriver :: (1) prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} ) prop _globalAllocDesc :: ("%8t .udev: {}") prop _placement :: (0x7ffff / 2) prop _memSeg :: MEM.CFGOBJSEG global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iFxns :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "DEV_Fxns table" prop JSName :: "fxnTable" prop Visible :: 1 prop Writable :: 1 } inst iParams :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Parameters" prop JSName :: "params" prop Visible :: 1 prop Writable :: 1 } inst iDevId :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Device ID" prop JSName :: "deviceId" prop Visible :: 1 prop Writable :: 1 } inst iInit :: 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Init Fxn" prop JSName :: "initFxn" prop Visible :: 1 prop Writable :: 1 } inst iIsStacking :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Stacking Device" prop JSName :: "stackingDevice" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } inst iIsTerminal :: = if self.iIsStacking {0} else {1} { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } inst iIsVirtual :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } } type DGN { isa ObjectMgr prop name :: "DGN" prop Label :: "DGN - Software Generator Driver" prop IsContainedIn :: SIODRIVER prop GlobalIcon :: 127 prop InstanceIcon :: 128 prop GlobalHelpTopic :: (302) prop InstanceHelpTopic :: (402) prop InstancePropertyPage :: ("{054FE166-B014-11d0-9885-0020AFEE33C6}") prop GlobalPropertyPage :: ("{054FE167-B014-11d0-9885-0020AFEE33C6}") prop maxObjs :: (32767) prop isDriver :: (1) prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} ) prop _globalAllocDesc :: ("%8t .dgn: {}") prop _placement :: (0x7ffff / 2) prop _memSeg :: MEM.CFGOBJSEG global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDevice :: "user" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: if GBL.DSPARITHMETIC == "FLOAT" {"user,sine,random,constant,printFloat,printHex,printInt"} else {"user,sine,random,constant,printHex,printInt"} prop Label :: "Device category" prop JSName :: "device" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop Set :: ($a = $1, if ($a != self.iDevice) {self.iDevice = $a, self.iUserFxn = @_FXN_F_nop} , if ($a == "user") {self.iUserFxn = self.iSaveUserFxn} , if ($a == "printFloat") {self.iUserFxn = @_DGN_printFloat} , if ($a == "printHex") {self.iUserFxn = @_DGN_printHex} , if ($a == "printInt") {self.iUserFxn = @_DGN_printInt} , "ok") } inst iUseDefaults :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Use default parameters" prop Visible :: 1 prop JSName :: "useDefaultParam" prop Writable :: self.iDevice == "sine" || self.iDevice == "constant" || self.iDevice == "random" || self.iDevice == "user" } inst iDevId :: = if self.iDevice == "constant" {@DGN_CONST} else {if self.iDevice == "random" {@DGN_RAND} else {if self.iDevice == "sine" {@DGN_SINE} else {@DGN_USER}}} { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Device ID" prop JSName :: "deviceId" prop Visible :: 1 prop Writable :: 0 } inst iIsTerminal :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } inst iIsVirtual :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } inst iConstant :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1.0} { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04} prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"} prop Label :: "Constant value" prop JSName :: "constant" prop Visible :: 1 prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "constant" || self.iDevice == "user") } inst iRandSeed :: 1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Seed value" prop JSName :: "seedValue" prop Visible :: 1 prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user") } inst iRandLower :: if GBL.DSPARITHMETIC == "FIXED" {-32767} else {0.0} { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04} prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"} prop Label :: "Lower limit" prop JSName :: "lowerLimit" prop Visible :: 1 prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user") } inst iRandUpper :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04} prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"} prop Label :: "Upper limit" prop JSName :: "upperLimit" prop Visible :: 1 prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "random" || self.iDevice == "user") } inst iSineGain :: if GBL.DSPARITHMETIC == "FIXED" {32767} else {1.0} { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04} prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"} prop Label :: "Gain" prop JSName :: "gain" prop Visible :: 1 prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user") } inst iSineFreq :: if GBL.DSPARITHMETIC == "FIXED" {1} else {1000.0} { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04} prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"} prop Label :: "Frequency (Hz)" prop JSName :: "frequency" prop Visible :: 1 prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user") } inst iSinePhase :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0.0} { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Style :: if GBL.DSPARITHMETIC == "FIXED" {0} else {0x04} prop Format :: if GBL.DSPARITHMETIC == "FIXED" {"%d"} else {"%f"} prop Label :: "Phase (radians)" prop JSName :: "phase" prop Visible :: 1 prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user") } inst iSineRate :: if GBL.DSPARITHMETIC == "FIXED" {256} else {44000} { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Sample rate (samples/sec)" prop JSName :: "rate" prop Visible :: 1 prop Writable :: self.iUseDefaults == 0 && (self.iDevice == "sine" || self.iDevice == "user") } inst iUserFxn :: if self.iDevice == "printFloat" {@_DGN_printFloat} else {if self.iDevice == "printHex" {@_DGN_printHex} else {if self.iDevice == "printInt" {@_DGN_printInt} else {@_FXN_F_nop}}} { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "User function" prop JSName :: "fxn" prop Visible :: 1 prop Writable :: self.iDevice == "user" prop Set :: (self.iUserFxn = $1, self.iSaveUserFxn = self.iUserFxn, "ok") } inst iSaveUserFxn :: @_FXN_F_nop { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iUserArg :: = 0 { prop Type :: "{7C434D01-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "User function argument" prop JSName :: "arg" prop Visible :: 1 prop Writable :: self.iDevice == "user" } inst iFxns :: @_DGN_FXNS { prop NoGen :: 1 } } type DHL { isa ObjectMgr prop name :: "DHL" prop Label :: "DHL - Host Link Driver" prop IsContainedIn :: SIODRIVER prop GlobalHelpTopic :: (303) prop InstanceHelpTopic :: (403) prop InstancePropertyPage :: ("{9C29DA20-90F9-11d1-988B-0020AFEE33C6}") prop GlobalPropertyPage :: ("{9C29DA21-90F9-11d1-988B-0020AFEE33C6}") prop GlobalIcon :: 127 prop InstanceIcon :: 128 prop Visible :: 1 prop isDriver :: 1 prop dataSize :: (8 + 11 * DHL.gNumOf * (GBL.DSPWORDSIZE / GBL.DSPCHARSIZE)) prop localCanCreate :: (if (self.gChannelsAvailable > 0) {"ok"} else {self.warning("No HST channels are available for a new DHL device.")}) prop localCreate :: (self.gChannelsAvailable--, self.seizeHSTChannel(self.iHSTChannel), "ok") prop seizeHSTChannel :: ($1.iDelUser = "DHL", $1.iDHLAvailable = 0, $1.notify = @_DHL_notify, $1.arg0 = $1.iId, "ok") prop localDelete :: (self.gChannelsAvailable++, self.releaseHSTChannel(self.iHSTChannel), "ok") prop releaseHSTChannel :: ($1.iDelUser = "USER", $1.iDHLAvailable = 1, $1.notify = @_FXN_F_nop, $1.arg0 = 0, "ok") prop AllocType :: (if (self.gNumOf > 0) {"1\0, _globalAllocDesc, _memSeg, _placement"} ) prop _globalAllocDesc :: "%8t .dhl: {}" prop _memSeg :: self.OBJMEMSEG prop _placement :: (0x7ffff / 2) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gChannelsAvailable :: 0 global OBJMEMSEG :: IDATA { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: MEM prop MemberTest :: MEM.dataMember($1) prop Label :: "Object Memory" prop JSName :: "OBJMEMSEG" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iHSTChannel :: (scan ($i; HST) {if ($i.iDHLAvailable == 1) {$a = $i} }, $a) { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop Label :: "Underlying HST Channel" prop JSName :: "hstChannel" prop MemberType :: HST prop MemberTest :: (if (($1.iDHLAvailable == 1) || ($1 == self.iHSTChannel)) {1} else {0}) prop Set :: (if ($1.iDHLAvailable != 1) {self.error("This channel is already in use.")} else {self.releaseHSTChannel(self.iHSTChannel), self.seizeHSTChannel($1), self.iHSTChannel = $1, "ok"}) prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 } inst iMode :: = self.iHSTChannel.mode { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Mode" prop JSName :: "mode" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 0 } inst iDevId :: = (self.iHSTChannel.iId) { prop NoGen :: 0 } inst iIsTerminal :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } inst iIsVirtual :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } inst iFxns :: @_DHL_FXNS { prop NoGen :: 1 } } type DPI { isa ObjectMgr prop name :: "DPI" prop Label :: "DPI - Pipe Driver" prop IsContainedIn :: SIODRIVER prop GlobalIcon :: 127 prop InstanceIcon :: 128 prop GlobalHelpTopic :: (304) prop InstanceHelpTopic :: (404) prop InstancePropertyPage :: ("{7FE06FA0-2DE9-11d1-988B-0020AFEE33C6}") prop GlobalPropertyPage :: ("{7FE06FA1-2DE9-11d1-988B-0020AFEE33C6}") prop maxObjs :: (32767) prop isDriver :: (1) prop localCreate :: (self.gCurDevId += 1, "ok") global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gCurDevId :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDevId :: DPI.gCurDevId { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop Writable :: 0 prop Set :: (self.error("DPI.iDevId parameter no longer settable, it is now handled automatically")) } inst iIsVirtual :: 0 { prop Label :: "Allow virtual instances of this device." prop JSName :: "allowVirtual" prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop Set :: (if ($1 == 1) {$a = "ok", $b = 1, scan ($i; SIO) {if ($i.iDevice == self) {$a = self.error("This DPI instance is being used by one or more SIO instances, cannot reconfigure"), $b = 0} }, if ($b == 1) {self.iIsVirtual = 1} , $a} else {self.iIsVirtual = 0, "ok"}) } inst iIsTerminal :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 } inst iFxns :: @_DPI_FXNS { prop NoGen :: 1 } } type HOOK { isa ObjectMgr prop name :: "HOOK" prop Label :: "HOOK - Module Hook Manager" prop IsContainedIn :: SYSTEM prop DependsOn :: "GBL,OBJ,CLK,HST,HWI,IDL,LCK,LOG,MBX,MEM,PIP,PRD,QUE,RTDX,SEM,SIO,STS,SWI,SYS,DEV,UDEV,DGN,DHL,DPI" prop InstancePropertyPage :: ("{473C4A64-B1A8-11d0-9885-0020AFEE33C6}") prop GlobalIcon :: 181 prop InstanceIcon :: 182 prop GlobalHelpTopic :: (318) prop InstanceHelpTopic :: (418) prop localCreate :: (if (self.gNumOf == 0) {HOOK_KNL.iIsUsed = 1, self.mkId(0)} , "ok") prop localDelete :: (if (self.gNumOf == 2) {HOOK_KNL.iIsUsed = 0, self.rmId} , "ok") prop maxObjs :: (32767) prop SortByField :: "iPri" prop SortGroups :: 1 global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global KNLID :: = (HOOK_KNL.Order - 1) { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst initFxn :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Initialization function" prop JSName :: "initFxn" prop Visible :: 1 prop Writable :: 1 } inst createFxn :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Create function" prop JSName :: "createFxn" prop Visible :: 1 prop Writable :: self.iDelUser == "USER" } inst deleteFxn :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Delete function" prop JSName :: "deleteFxn" prop Visible :: 1 prop Writable :: self.iDelUser == "USER" } inst exitFxn :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Exit function" prop JSName :: "exitFxn" prop Visible :: 1 prop Writable :: self.iDelUser == "USER" } inst callSwitchFxn :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Call switch function" prop JSName :: "callSwitchFxn" prop Visible :: 1 prop Writable :: self.iDelUser == "USER" } inst switchFxn :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Switch function" prop JSName :: "switchFxn" prop Visible :: 1 prop Writable :: self.callSwitchFxn } inst callReadyFxn :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Call ready function" prop JSName :: "callReadyFxn" prop Visible :: 1 prop Writable :: self.iDelUser == "USER" } inst readyFxn :: @_FXN_F_nop { prop Type :: "{7C434D00-1629-11d0-9BFE-0000C0AC14C7}" prop Label :: "Ready function" prop JSName :: "readyFxn" prop Visible :: 1 prop Writable :: self.callReadyFxn } inst Order :: 2 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop JSName :: "order" prop NoGen :: 1 prop Writable :: 1 } inst iPri :: 0 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Visible :: 0 prop NoGen :: 1 } } object HOOK_KNL :: HOOK { param iComment :: "Used to support TSK function hooks (cannot be deleted)" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "HOOK" param iDelMsg :: "This hook instance is used by TSK and cannot be deleted" param initFxn :: @_FXN_F_nop param createFxn :: @_FXN_F_nop param deleteFxn :: @_FXN_F_nop param exitFxn :: @_FXN_F_nop param callSwitchFxn :: 0 param switchFxn :: @_FXN_F_nop param callReadyFxn :: 0 param readyFxn :: @_FXN_F_nop param Order :: 1 param iPri :: 0 } type DMAFOLDER { prop Label :: "DMA - Direct Memory Access Controller" prop GlobalIcon :: 157 prop GlobalPropertyPage :: "{B936FB91-49A5-11d4-967C-0050048381B7}" prop GlobalHelpTopic :: 1020 prop IsContainedIn :: CSL prop NoGen :: 1 } type dmaCfg { isa ObjectMgr prop name :: "DMA" prop Label :: "DMA Configuration Manager" prop JSName :: "DMA" prop GlobalHelpTopic :: 1021 prop InstanceHelpTopic :: 1021 prop GlobalIcon :: 157 prop InstanceIcon :: 158 prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-00105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-0000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop IsContainedIn :: DMAFOLDER prop cGen :: 1 prop cStruct :: 1 prop cStructType :: "DMA_Config" prop cHeaderName :: if self.gNumOf > 0 {"csl_dma.h"} else {""} prop NoGen :: 1 prop maxObjs :: (6) prop localCreate :: (if (gDMAConfig0.iIsUsed == 0) {self.gName = gDMAConfig0, gDMAConfig0.iIsUsed = 1} else {if (gDMAConfig1.iIsUsed == 0) {self.gName = gDMAConfig1, gDMAConfig1.iIsUsed = 1} else {if (gDMAConfig2.iIsUsed == 0) {self.gName = gDMAConfig2, gDMAConfig2.iIsUsed = 1} else {if (gDMAConfig3.iIsUsed == 0) {self.gName = gDMAConfig3, gDMAConfig3.iIsUsed = 1} else {if (gDMAConfig4.iIsUsed == 0) {self.gName = gDMAConfig4, gDMAConfig4.iIsUsed = 1} else {self.gName = gDMAConfig5, gDMAConfig5.iIsUsed = 1}}}}}, "ok") prop localDelete :: (self.gName.iIsUsed = 0, "ok") prop PRIOR_VALUE_update :: (self.PRIOR_VALUE = if ($1 == "High") {0x0001} else {0x0000}) prop PRIOR_SETUP_update :: (self.PRIOR_SETUP = if ($1 == 0x0001) {"High"} else {"Low"}) prop AUTOINT_DMMCR :: (if (self.AUTOINIT_SETUP == 0) {0x0000} else {0x8000}) prop CTMOD_DMMCR :: (if (self.CTMOD_SETUP == "Multiframe") {0x0000} else {0x1000}) prop DINM_DMMCR :: (if (self.DINM_SETUP == "Based on IMOD bit") {0x4000} else {0x0000}) prop IMOD_DMMCR :: (if (self.CTMOD_SETUP == "ABU") {if (self.IMOD1_SETUP == "Full Buffer Only") {0x0000} else {0x2000}} else {if (self.IMOD2_SETUP == "End of Block") {0x0000} else {0x2000}}) prop DMS_DMMCR :: (if (self.DMS_SETUP == "Program Space") {0x0000} else {if (self.DMS_SETUP == "Data Space") {0x0040} else {0x0080}}) prop DMD_DMMCR :: (if (self.DMD_SETUP == "Program Space") {0x0000} else {if (self.DMD_SETUP == "Data Space") {0x0001} else {0x0002}}) prop SRCADDR_HC_DMSRC :: (self.SRCADDR_HC_SETUP & 0xFFFF) prop DMSRC_HC_VALUE_update :: (self.SRCADDR_HC_DMSRC()) prop DMSRC_HC_L_SETUP_update :: (self.SRCADDR_HC_SETUP &= 0xFFFF0000, self.SRCADDR_HC_SETUP |= ($1 & 0xFFFF)) prop DMSRC_HC_U_SETUP_update :: (self.SRCADDR_HC_SETUP &= 0xFFFF, self.SRCADDR_HC_SETUP |= ($1 << 16)) prop SRCADDR_SYM_DMSRC :: (self.SRCADDR_SYM_SETUP) prop DMSRC_SYM_VALUE_update :: (self.SRCADDR_SYM_DMSRC()) prop DMSRC_SYM_SETUP_update :: (self.SRCADDR_SYM_SETUP = $1) prop DESADDR_HC_DMDST :: (self.DESADDR_HC_SETUP & 0xFFFF) prop DMDST_HC_VALUE_update :: (self.DESADDR_HC_DMDST()) prop DMDST_HC_L_SETUP_update :: (self.DESADDR_HC_SETUP &= 0xFFFF0000, self.DESADDR_HC_SETUP |= ($1 & 0xFFFF)) prop DMDST_HC_U_SETUP_update :: (self.DESADDR_HC_SETUP &= 0xFFFF, self.DESADDR_HC_SETUP |= ($1 << 16)) prop DESADDR_SYM_DMDST :: (self.DESADDR_SYM_SETUP) prop DMDST_SYM_VALUE_update :: (self.DESADDR_SYM_DMDST()) prop DMDST_SYM_SETUP_update :: (self.DESADDR_SYM_SETUP = $1) prop SIND_DMMCR :: (if (self.SIND_SETUP == "No Modification") {0x0000} else {if (self.SIND_SETUP == "Postincrement") {0x0100} else {if (self.SIND_SETUP == "Post-decrement") {0x0200} else {if (self.SIND_SETUP == "DMIDX0") {0x0300} else {if (self.SIND_SETUP == "DMIDX1") {0x0400} else {if (self.SIND_SETUP == "DMIDX0 and DMFRI0") {0x0500} else {0x0600}}}}}}) prop DIND_DMMCR :: (if (self.DIND_SETUP == "No Modification") {0x0000} else {if (self.DIND_SETUP == "Postincrement") {0x0004} else {if (self.DIND_SETUP == "Post-decrement") {0x0008} else {if (self.DIND_SETUP == "DMIDX0") {0x000C} else {if (self.DIND_SETUP == "DMIDX1") {0x0010} else {if (self.DIND_SETUP == "DMIDX0 and DMFRI0") {0x0014} else {0x0018}}}}}}) prop DMMCR_VALUE_update :: (self.AUTOINT_DMMCR() | self.CTMOD_DMMCR() | self.DINM_DMMCR() | self.IMOD_DMMCR() | self.DMS_DMMCR() | self.DMD_DMMCR() | self.SIND_DMMCR() | self.DIND_DMMCR()) prop DMMCR_SETUP_update :: (self.AUTOINIT_SETUP = if ($1 & 0x8000) {1} else {0}, self.CTMOD_SETUP = if ($1 & 0x1000) {"ABU"} else {"Multiframe"}, self.DINM_SETUP = if ($1 & 0x4000) {"Based on IMOD bit"} else {"None"}, self.IMOD1_SETUP = if ($1 & 0x2000) {"Half and Full Buffer"} else {"Full Buffer Only"}, self.IMOD2_SETUP = if ($1 & 0x2000) {"End of Frame and Block"} else {"End of Block"}, self.DMS_SETUP = if ($1 & 0x0080) {"I/O Space"} else {if ($1 & 0x0040) {"Data Space"} else {"Program Space"}}, self.DMD_SETUP = if ($1 & 0x0002) {"I/O Space"} else {if ($1 & 0x0001) {"Data Space"} else {"Program Space"}}, self.SIND_SETUP = if (($1 & 0x0600) == 0x0600) {"DMIDX1 and DMFRI1"} else {if (($1 & 0x0500) == 0x0500) {"DMIDX0 and DMFRI0"} else {if (($1 & 0x0400) == 0x0400) {"DMIDX1"} else {if (($1 & 0x0300) == 0x0300) {"DMIDX0"} else {if (($1 & 0x0200) == 0x0200) {"Post-decrement"} else {if (($1 & 0x0100) == 0x0100) {"Postincrement"} else {"No Modification"}}}}}}, self.DIND_SETUP = if (($1 & 0x0018) == 0x0018) {"DMIDX1 and DMFRI1"} else {if (($1 & 0x0014) == 0x0014) {"DMIDX0 and DMFRI0"} else {if (($1 & 0x0010) == 0x0010) {"DMIDX1"} else {if (($1 & 0x000C) == 0x000C) {"DMIDX0"} else {if (($1 & 0x0008) == 0x0008) {"Post-decrement"} else {if (($1 & 0x0004) == 0x0004) {"Postincrement"} else {"No Modification"}}}}}}) prop DSYN_DMSFC :: (if ((GBL.CHIPTYPE == "5402") || (GBL.CHIPTYPE == "5401")) {if (self.DSYN_5402_SETUP == "No Event") {0x0000} else {if (self.DSYN_5402_SETUP == "McBSP 0 Receive Event (REVT0)") {0x1000} else {if (self.DSYN_5402_SETUP == "McBSP 0 Transmit Event (XEVT0)") {0x2000} else {if (self.DSYN_5402_SETUP == "McBSP 1 Receive Event (REVT1)") {0x5000} else {if (self.DSYN_5402_SETUP == "McBSP 1 Transmit Event (XEVT1)") {0x6000} else {if (self.DSYN_5402_SETUP == "Timer 0 Interrupt") {0xD000} else {if (self.DSYN_5402_SETUP == "External Interrupt 3 (INT3)") {0xE000} else {0xF000}}}}}}}} else {if ((GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5471")) {if (self.DSYN_5409_SETUP == "No Event") {0x0000} else {if (self.DSYN_5409_SETUP == "McBSP 0 Receive Event (REVT0)") {0x1000} else {if (self.DSYN_5409_SETUP == "McBSP 0 Transmit Event (XEVT0)") {0x2000} else {if (self.DSYN_5409_SETUP == "McBSP 2 Receive Event (REVT2)") {0x3000} else {if (self.DSYN_5409_SETUP == "McBSP 2 Transmit Event (XEVT2)") {0x4000} else {if (self.DSYN_5409_SETUP == "McBSP 1 Receive Event (REVT1)") {0x5000} else {if (self.DSYN_5409_SETUP == "McBSP 1 Transmit Event (XEVT1)") {0x6000} else {if (self.DSYN_5409_SETUP == "Timer Interrupt 0") {0xD000} else {0xE000}}}}}}}}} else {if ((GBL.CHIPTYPE == "5410") || (GBL.CHIPTYPE == "5416")) {if (self.DSYN_5410_SETUP == "No Event") {0x0000} else {if (self.DSYN_5410_SETUP == "McBSP 0 Receive Event (REVT0)") {0x1000} else {if (self.DSYN_5410_SETUP == "McBSP 0 Transmit Event (XEVT0)") {0x2000} else {if (self.DSYN_5410_SETUP == "McBSP 2 Receive Event (REVT2)") {0x3000} else {if (self.DSYN_5410_SETUP == "McBSP 2 Transmit Event (XEVT2)") {0x4000} else {if (self.DSYN_5410_SETUP == "McBSP 1 Receive Event (REVT1)") {0x5000} else {if (self.DSYN_5410_SETUP == "McBSP 1 Transmit Event (XEVT1)") {0x6000} else {if (self.DSYN_5410_SETUP == "McBSP 0 Receive EventA (REVTA0)") {0x7000} else {if (self.DSYN_5410_SETUP == "McBSP 0 Transmit EventA (XEVTA0)") {0x8000} else {if (self.DSYN_5410_SETUP == "McBSP 2 Receive EventA (REVTA2)") {0x9000} else {if (self.DSYN_5410_SETUP == "McBSP 2 Transmit EventA (XEVTA2)") {0xA000} else {if (self.DSYN_5410_SETUP == "McBSP 1 Receive EventA (REVTA1)") {0xB000} else {if (self.DSYN_5410_SETUP == "McBSP 1 Transmit EventA (XEVTA1)") {0xC000} else {if (self.DSYN_5410_SETUP == "Timer Interrupt 0") {0xD000} else {0xE000}}}}}}}}}}}}}}} else {if ((GBL.CHIPTYPE == "5420") || (GBL.CHIPTYPE == "5421")) {if (self.DSYN_5420_SETUP == "No Event") {0x0000} else {if (self.DSYN_5420_SETUP == "McBSP 0 Receive Event (REVT0)") {0x1000} else {if (self.DSYN_5420_SETUP == "McBSP 0 Transmit Event (XEVT0)") {0x2000} else {if (self.DSYN_5420_SETUP == "McBSP 2 Receive Event (REVT2)") {0x3000} else {if (self.DSYN_5420_SETUP == "McBSP 2 Transmit Event (XEVT2)") {0x4000} else {if (self.DSYN_5420_SETUP == "McBSP 1 Receive Event (REVT1)") {0x5000} else {if (self.DSYN_5420_SETUP == "McBSP 1 Transmit Event (XEVT1)") {0x6000} else {if (self.DSYN_5420_SETUP == "FIFO Receive Buffer Not Empty") {0x7000} else {0x8000}}}}}}}}} else {if ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) {if (self.DSYN_5440_SETUP == "No Event") {0x0000} else {if (self.DSYN_5440_SETUP == "McBSP 0 Receive Event (REVT0)") {0x1000} else {if (self.DSYN_5440_SETUP == "McBSP 0 Transmit Event (XEVT0)") {0x2000} else {if (self.DSYN_5440_SETUP == "McBSP 2 Receive Event (REVT2)") {0x3000} else {if (self.DSYN_5440_SETUP == "McBSP 2 Transmit Event (XEVT2)") {0x4000} else {if (self.DSYN_5440_SETUP == "McBSP 1 Receive Event (REVT1)") {0x5000} else {0x6000}}}}}}} }}}}) prop DBLW_DMSFC :: (if (self.DBLW_SETUP == "Single(16-bits)") {0x0000} else {0x0800}) prop FRMCNT_DMSFC :: (self.FRMCNT_SETUP - 1) prop DSYN_5402_SETUP_update :: (self.DSYN_5402_SETUP = ($a = $1 & 0xF000, if ($a == 0x1000) {"McBSP 0 Receive Event (REVT0)"} else {if ($a == 0x2000) {"McBSP 0 Transmit Event (XEVT0)"} else {if ($a == 0x5000) {"McBSP 1 Receive Event (REVT1)"} else {if ($a == 0x6000) {"McBSP 1 Transmit Event (XEVT1)"} else {if ($a == 0xD000) {"Timer 0 Interrupt"} else {if ($a == 0xE000) {"External Interrupt 3 (INT3)"} else {if ($a == 0xF000) {"Timer 1 Interrupt"} else {"No Event"}}}}}}})) prop DSYN_5409_SETUP_update :: (self.DSYN_5409_SETUP = ($a = $1 & 0xF000, if ($a == 0x1000) {"McBSP 0 Receive Event (REVT0)"} else {if ($a == 0x2000) {"McBSP 0 Transmit Event (XEVT0)"} else {if ($a == 0x3000) {"McBSP 2 Receive Event (REVT2)"} else {if ($a == 0x4000) {"McBSP 2 Transmit Event (XEVT2)"} else {if ($a == 0x5000) {"McBSP 1 Receive Event (REVT1)"} else {if ($a == 0x6000) {"McBSP 1 Transmit Event (XEVT1)"} else {if ($a == 0xD000) {"Timer Interrupt 0"} else {if ($a == 0xE000) {"External Interrupt 3 (INT3)"} else {"No Event"}}}}}}}})) prop DSYN_5410_SETUP_update :: (self.DSYN_5410_SETUP = ($a = $1 & 0xF000, if ($a == 0x1000) {"McBSP 0 Receive Event (REVT0)"} else {if ($a == 0x2000) {"McBSP 0 Transmit Event (XEVT0)"} else {if ($a == 0x3000) {"McBSP 2 Receive Event (REVT2)"} else {if ($a == 0x4000) {"McBSP 2 Transmit Event (XEVT2)"} else {if ($a == 0x5000) {"McBSP 1 Receive Event (REVT1)"} else {if ($a == 0x6000) {"McBSP 1 Transmit Event (XEVT1)"} else {if ($a == 0x7000) {"McBSP 0 Receive EventA (REVTA0)"} else {if ($a == 0x8000) {"McBSP 0 Transmit EventA (XEVTA0)"} else {if ($a == 0x9000) {"McBSP 2 Receive EventA (REVTA2)"} else {if ($a == 0xA000) {"McBSP 2 Transmit EventA (XEVTA2)"} else {if ($a == 0xB000) {"McBSP 1 Receive EventA (REVTA1)"} else {if ($a == 0xC000) {"McBSP 1 Transmit EventA (XEVTA1)"} else {if ($a == 0xD000) {"Timer Interrupt 0"} else {if ($a == 0xE000) {"External Interrupt 3 (INT3)"} else {"No Event"}}}}}}}}}}}}}})) prop DSYN_5420_SETUP_update :: (self.DSYN_5420_SETUP = ($a = $1 & 0xF000, if ($a == 0x1000) {"McBSP 0 Receive Event (REVT0)"} else {if ($a == 0x2000) {"McBSP 0 Transmit Event (XEVT0)"} else {if ($a == 0x3000) {"McBSP 2 Receive Event (REVT2)"} else {if ($a == 0x4000) {"McBSP 2 Transmit Event (XEVT2)"} else {if ($a == 0x5000) {"McBSP 1 Receive Event (REVT1)"} else {if ($a == 0x6000) {"McBSP 1 Transmit Event (XEVT1)"} else {if ($a == 0x7000) {"FIFO Receive Buffer Not Empty"} else {if ($a == 0x8000) {"FIFO Transmit Buffer Not Full"} else {"No Event"}}}}}}}})) prop DSYN_5440_SETUP_update :: (self.DSYN_5440_SETUP = ($a = $1 & 0xF000, if ($a == 0x1000) {"McBSP 0 Receive Event (REVT0)"} else {if ($a == 0x2000) {"McBSP 0 Transmit Event (XEVT0)"} else {if ($a == 0x3000) {"McBSP 2 Receive Event (REVT2)"} else {if ($a == 0x4000) {"McBSP 2 Transmit Event (XEVT2)"} else {if ($a == 0x5000) {"McBSP 1 Receive Event (REVT1)"} else {if ($a == 0x6000) {"McBSP 1 Transmit Event (XEVT1)"} else {"No Event"}}}}}})) prop DMSFC_SETUP_update :: (self.DBLW_SETUP = if ($1 & 0x0800) {"Double(32-bits)"} else {"Single(16-bits)"}, self.FRMCNT_SETUP = ($1 & 0x00FF) + 1) prop DMSFC_VALUE_update :: (self.DSYN_DMSFC() | self.DBLW_DMSFC() | self.FRMCNT_DMSFC()) prop ELEMCT_DMCTR :: if (self.CTMOD_SETUP == "ABU") {(self.ELEMCT_SETUP)} else {(self.ELEMCT_SETUP - 1)} prop DMCTR_VALUE_update :: (self.ELEMCT_DMCTR()) prop DMCTR_SETUP_update :: if (self.CTMOD_SETUP == "ABU") {(self.ELEMCT_SETUP = $1)} else {(self.ELEMCT_SETUP = $1 + 1)} prop DMGSA_HC_VALUE_update :: self.DMGSA_HC_SETUP prop DMGSA_SYM_VALUE_update :: self.DMGSA_SYM_SETUP prop DMGSA_HC_SETUP_update :: (self.DMGSA_HC_SETUP = $1) prop DMGSA_SYM_SETUP_update :: (self.DMGSA_SYM_SETUP = $1) prop DMGDA_HC_VALUE_update :: self.DMGDA_HC_SETUP prop DMGDA_SYM_VALUE_update :: self.DMGDA_SYM_SETUP prop DMGDA_HC_SETUP_update :: (self.DMGDA_HC_SETUP = $1) prop DMGDA_SYM_SETUP_update :: (self.DMGDA_SYM_SETUP = $1) prop DMGCR_SETUP_update :: (self.DMGCR_SETUP = $1 + 1) prop DMGFR_SETUP_update :: (self.DMGFR_SETUP = $1 + 1) prop srcSym :: if ((self.srcAddrFormat == "Symbolic") && (self.DMSRC_SYM_VALUE != "NULL")) {self.DMSRC_SYM_VALUE} else {""} prop dstSym :: if ((self.dstAddrFormat == "Symbolic") && (self.DMDST_SYM_VALUE != "NULL")) {self.DMDST_SYM_VALUE} else {""} prop dmgsaSym :: if ((self.dmgsaFormat == "Symbolic") && (self.DMGSA_SYM_VALUE != "NULL")) {self.DMGSA_SYM_VALUE} else {""} prop dmgdaSym :: if ((self.dmgdaFormat == "Symbolic") && (self.DMGDA_SYM_VALUE != "NULL")) {self.DMGDA_SYM_VALUE} else {""} prop externStr :: if (((self.dmgdaFormat == "Symbolic") && (self.DMGDA_SYM_VALUE != "NULL")) || ((self.dmgsaFormat == "Symbolic") && (self.DMGSA_SYM_VALUE != "NULL")) || ((self.dstAddrFormat == "Symbolic") && (self.DMDST_SYM_VALUE != "NULL")) || ((self.srcAddrFormat == "Symbolic") && (self.DMSRC_SYM_VALUE != "NULL"))) {"extern Uint16 "} else {""} prop srcStr :: if ((self.srcAddrFormat == "Symbolic") && (self.DMSRC_SYM_VALUE != "NULL")) {"%9s"} else {""} prop firstComma :: if ((self.srcAddrFormat == "Symbolic") && (self.DMSRC_SYM_VALUE != "NULL")) && (((self.dmgdaFormat == "Symbolic") && (self.DMGDA_SYM_VALUE != "NULL")) || ((self.dmgsaFormat == "Symbolic") && (self.DMGSA_SYM_VALUE != "NULL")) || ((self.dstAddrFormat == "Symbolic") && (self.DMDST_SYM_VALUE != "NULL"))) {", "} else {""} prop dstStr :: if ((self.dstAddrFormat == "Symbolic") && (self.DMDST_SYM_VALUE != "NULL")) {"%10s"} else {""} prop secondComma :: if ((self.dstAddrFormat == "Symbolic") && (self.DMDST_SYM_VALUE != "NULL")) && (((self.dmgdaFormat == "Symbolic") && (self.DMGDA_SYM_VALUE != "NULL")) || ((self.dmgsaFormat == "Symbolic") && (self.DMGSA_SYM_VALUE != "NULL"))) {", "} else {""} prop dmgsaStr :: if ((self.dmgsaFormat == "Symbolic") && (self.DMGSA_SYM_VALUE != "NULL")) {"%11s"} else {""} prop thirdComma :: if ((self.dmgsaFormat == "Symbolic") && (self.DMGSA_SYM_VALUE != "NULL")) && ((self.dmgdaFormat == "Symbolic") && (self.DMGDA_SYM_VALUE != "NULL")) {", "} else {""} prop dmgdaStr :: if ((self.dmgdaFormat == "Symbolic") && (self.DMGDA_SYM_VALUE != "NULL")) {"%12s"} else {""} prop termStr :: if (((self.dmgdaFormat == "Symbolic") && (self.DMGDA_SYM_VALUE != "NULL")) || ((self.dmgsaFormat == "Symbolic") && (self.DMGSA_SYM_VALUE != "NULL")) || ((self.dstAddrFormat == "Symbolic") && (self.DMDST_SYM_VALUE != "NULL")) || ((self.srcAddrFormat == "Symbolic") && (self.DMSRC_SYM_VALUE != "NULL"))) {";\n"} else {""} prop cGenCInst :: ("%1S%2S%3S%4S%5S%6S%7S%8S%13S\n\0, externStr,srcStr,firstComma,dstStr,secondComma,dmgsaStr,thirdComma,dmgdaStr,srcSym,dstSym,dmgsaSym,dmgdaSym,termStr") prop dmsrcSymbol :: self.DMSRC_SYM_VALUE prop dmdstSymbol :: self.DMDST_SYM_VALUE prop dmgsaSymbol :: self.DMGSA_SYM_VALUE prop dmgdaSymbol :: self.DMGDA_SYM_VALUE prop dmsrcStruct :: self prop dmdstStruct :: self prop dmsrcpStruct :: self.gName prop dmdstpStruct :: self.gName prop dmsrcdpStruct :: if ((GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421")) {self.gName} else {self} prop dmdstdpStruct :: if ((GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421")) {self.gName} else {self} prop dmgsaStruct :: if ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) {self} else {self.gName} prop dmgdaStruct :: if ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) {self} else {self.gName} prop dmsrcShift :: if ((self.srcAddrFormat == "Symbolic") && (self.DMSRC_SYM_VALUE != "NULL")) {"%5t%13s.dmsrc = (DMA_AdrPtr)((Uint32)(&%21s) & 0xFFFF);\n%0t"} else {""} prop dmdstShift :: if ((self.dstAddrFormat == "Symbolic") && (self.DMDST_SYM_VALUE != "NULL")) {"%5t%14s.dmdst = (DMA_AdrPtr)((Uint32)(&%22s) & 0xFFFF);\n%0t"} else {""} prop dmsrcpShift :: if ((self.srcAddrFormat == "Symbolic") && (self.DMSRCP_SYM_VALUE != "NULL")) {"%5t%15s.gbldmsrcp = (Uint16)((Uint32)(&%21s) >> 16);\n%0t"} else {""} prop dmdstpShift :: if ((self.dstAddrFormat == "Symbolic") && (self.DMDSTP_SYM_VALUE != "NULL")) {"%5t%16s.gbldmdstp = (Uint16)((Uint32)(&%22s) >> 16);\n%0t"} else {""} prop dmsrcdpShift :: if (((GBL.CHIPTYPE != "5401") && (GBL.CHIPTYPE != "5402") && (GBL.CHIPTYPE != "5410") && (GBL.CHIPTYPE != "5420") && (self.srcAddrFormat == "Symbolic") && (self.DMSRCDP_SYM_VALUE != "NULL")) && (GBL.CHIPTYPE != "5409") && (GBL.CHIPTYPE != "5416") && (GBL.CHIPTYPE != "5421")) {"%5t%17s.dmsrcdp = (Uint16)((Uint32)(&%21s) >> 16);\n%0t"} else {""} prop gdmsrcdpShift :: if (((GBL.CHIPTYPE != "5401") && (GBL.CHIPTYPE != "5402") && (GBL.CHIPTYPE != "5410") && (GBL.CHIPTYPE != "5420") && (self.srcAddrFormat == "Symbolic") && (self.DMSRCDP_SYM_VALUE != "NULL")) && ((GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421"))) {"%5t%17s.gbldmsrcdp = (Uint16)((Uint32)(&%21s) >> 16);\n%0t"} else {""} prop dmdstdpShift :: if (((GBL.CHIPTYPE != "5401") && (GBL.CHIPTYPE != "5402") && (GBL.CHIPTYPE != "5410") && (GBL.CHIPTYPE != "5420") && (self.dstAddrFormat == "Symbolic") && (self.DMDSTDP_SYM_VALUE != "NULL")) && (GBL.CHIPTYPE != "5409") && (GBL.CHIPTYPE != "5416") && (GBL.CHIPTYPE != "5421")) {"%5t%18s.dmdstdp = (Uint16)((Uint32)(&%22s) >> 16);\n%0t"} else {""} prop gdmdstdpShift :: if (((GBL.CHIPTYPE != "5401") && (GBL.CHIPTYPE != "5402") && (GBL.CHIPTYPE != "5410") && (GBL.CHIPTYPE != "5420") && (self.dstAddrFormat == "Symbolic") && (self.DMDSTDP_SYM_VALUE != "NULL")) && ((GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421"))) {"%5t%18s.gbldmdstdp = (Uint16)((Uint32)(&%22s) >> 16);\n%0t"} else {""} prop dmgsaShift :: if (((self.dmgsaFormat == "Symbolic") && (self.DMGSA_SYM_VALUE != "NULL")) && ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441"))) {"%5t%19s.dmgsa = (DMA_AdrPtr)((Uint32)(&%23s) & 0xFFFF);\n%0t"} else {""} prop gdmgsaShift :: if (((self.dmgsaFormat == "Symbolic") && (self.DMGSA_SYM_VALUE != "NULL")) && (GBL.CHIPTYPE != "5416") && (GBL.CHIPTYPE != "5421") && (GBL.CHIPTYPE != "5440") && (GBL.CHIPTYPE != "5441")) {"%5t%19s.gbldmgsa = (DMA_AdrPtr)((Uint32)(&%23s) & 0xFFFF);\n%0t"} else {""} prop dmgdaShift :: if (((self.dmgsaFormat == "Symbolic") && (self.DMGDA_SYM_VALUE != "NULL")) && ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441"))) {"%5t%20s.dmgda = (DMA_AdrPtr)((Uint32)(&%24s) & 0xFFFF);\n%0t"} else {""} prop gdmgdaShift :: if (((self.dmgsaFormat == "Symbolic") && (self.DMGDA_SYM_VALUE != "NULL")) && (GBL.CHIPTYPE != "5416") && (GBL.CHIPTYPE != "5421") && (GBL.CHIPTYPE != "5440") && (GBL.CHIPTYPE != "5441")) {"%5t%20s.gbldmgda = (DMA_AdrPtr)((Uint32)(&%24s) & 0xFFFF);\n%0t"} else {""} prop cGenFxnPreInst :: ("%1S%2S%3S%4S%5S%6S%7S%8S%9S%10S%11S%12S\0, dmsrcShift,dmdstShift,dmsrcpShift,dmdstpShift,dmsrcdpShift,gdmsrcdpShift,dmdstdpShift,gdmdstdpShift,dmgsaShift,gdmgsaShift,dmgdaShift,gdmgdaShift,dmsrcStruct,dmdstStruct,dmsrcpStruct,dmdstpStruct,dmsrcdpStruct,dmdstdpStruct,dmgsaStruct,dmgdaStruct,dmsrcSymbol,dmdstSymbol,dmgsaSymbol,dmgdaSymbol") global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst FREE :: "Stop Immediately" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Stop Immediately,Do Not Stop" prop Label :: "Breakpoint Emulation Behavior (FREE)" prop JSName :: "dmaDmprecFree" prop Visible :: 1 prop Writable :: 1 prop TabName :: "General" prop NoGen :: 1 prop cGen :: 0 prop Set :: (self.FREE = $1, if ($1 == "Do Not Stop") {self.gName.FREE_VALUE = 0x0001} else {self.gName.FREE_VALUE = 0x0000}, "ok") } inst gName :: gDMAConfig0 { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop Label :: "Global Config Name" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 0 prop TabName :: "General" } inst PRIOR_SETUP :: "Low" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Low,High" prop Label :: "Channel Priority" prop JSName :: "dmaDmprecDprc" prop Visible :: 1 prop Writable :: 1 prop TabName :: "Transfer Modes" prop NoGen :: 0 prop cGen :: 0 prop Set :: (self.PRIOR_SETUP = $1, self.PRIOR_VALUE_update($1), "ok") } inst AUTOINIT_SETUP :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable Autoinitialization" prop JSName :: "dmaDmmcrAutoinit" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop cGen :: 0 prop TabName :: "AutoInit" prop Set :: (self.AUTOINIT_SETUP = $1, self.DMMCR_VALUE = self.DMMCR_VALUE_update(), "ok") } inst CTMOD_SETUP :: "Multiframe" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Multiframe,ABU" prop Label :: "ABU/Multiframe (CTMOD)" prop JSName :: "dmaDmmcrCtmod" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop cGen :: 0 prop TabName :: "Transfer Modes" prop Set :: (self.CTMOD_SETUP = $1, self.DMMCR_VALUE = self.DMMCR_VALUE_update(), if (($1 == "ABU") && (self.DMCTR_VALUE > 0)) {self.DMCTR_VALUE = self.ELEMCT_SETUP} else {if (($1 == "Multiframe") && (self.DMCTR_VALUE > 0)) {self.DMCTR_VALUE = self.ELEMCT_SETUP - 1} }, "ok") } inst DINM_SETUP :: "None" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "None,Based on IMOD bit" prop Label :: "Interrupt Generation " prop JSName :: "dmaDmmcrDinm" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Transfer Modes" prop Set :: (self.DINM_SETUP = $1, self.DMMCR_VALUE = self.DMMCR_VALUE_update(), "ok") } inst IMOD1_SETUP :: "Full Buffer Only" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Full Buffer Only,Half and Full Buffer" prop Label :: "ABU Interrupt At:" prop JSName :: "dmaDmmcrImod1" prop Visible :: 1 prop Writable :: ((self.CTMOD_SETUP == "ABU") && (self.DINM_SETUP == "Based on IMOD bit")) prop NoGen :: 0 prop cGen :: 0 prop TabName :: "Transfer Modes" prop Set :: (self.IMOD1_SETUP = $1, self.DMMCR_VALUE = self.DMMCR_VALUE_update(), "ok") } inst IMOD2_SETUP :: "End of Block" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "End of Block,End of Frame and Block" prop Label :: "Multiframe Interrupt At:" prop JSName :: "dmaDmmcrImod0" prop Visible :: 1 prop Writable :: ((self.CTMOD_SETUP == "Multiframe") && (self.DINM_SETUP == "Based on IMOD bit")) prop NoGen :: 0 prop cGen :: 0 prop TabName :: "Transfer Modes" prop Set :: (self.IMOD2_SETUP = $1, self.DMMCR_VALUE = self.DMMCR_VALUE_update(), "ok") } inst DMS_SETUP :: "Program Space" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Program Space,Data Space,I/O Space" prop Label :: "Source Address Space" prop JSName :: "dmaDmmcrDms" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop cGen :: 0 prop TabName :: "Source/Destination" prop Set :: (self.DMS_SETUP = $1, self.DMMCR_VALUE = self.DMMCR_VALUE_update(), if ($1 == "Data Space") {if (self.srcAddrFormat == "Symbolic") {self.DMSRCDP_SYM_VALUE = self.SRCADDR_SYM_SETUP, self.DMSRCP_SYM_VALUE = "NULL", self.gName.DMSRCDP_SYM_VALUE = self.SRCADDR_SYM_SETUP, self.gName.DMSRCP_SYM_VALUE = "NULL"} else {self.DMSRCDP_HC_VALUE = ((self.SRCADDR_HC_SETUP >> 16) & 0x000000FF), self.DMSRCP_HC_VALUE = 0, self.gName.DMSRCDP_HC_VALUE = ((self.SRCADDR_HC_SETUP >> 16) & 0x000000FF), self.gName.DMSRCP_HC_VALUE = 0}} else {if ($1 == "Program Space") {if (self.srcAddrFormat == "Symbolic") {self.DMSRCP_SYM_VALUE = self.SRCADDR_SYM_SETUP, self.DMSRCDP_SYM_VALUE = "NULL", self.gName.DMSRCP_SYM_VALUE = self.SRCADDR_SYM_SETUP, self.gName.DMSRCDP_SYM_VALUE = "NULL"} else {self.DMSRCP_HC_VALUE = ((self.SRCADDR_HC_SETUP >> 16) & 0x000000FF), self.DMSRCDP_HC_VALUE = 0, self.gName.DMSRCP_HC_VALUE = ((self.SRCADDR_HC_SETUP >> 16) & 0x000000FF), self.gName.DMSRCDP_HC_VALUE = 0}} }, "ok") } inst DMD_SETUP :: "Program Space" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Program Space,Data Space,I/O Space" prop Label :: "Destination Address Space" prop JSName :: "dmaDmmcrDmd" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop cGen :: 0 prop TabName :: "Source/Destination" prop Set :: (self.DMD_SETUP = $1, self.DMMCR_VALUE = self.DMMCR_VALUE_update(), if ($1 == "Data Space") {if (self.dstAddrFormat == "Symbolic") {self.DMDSTDP_SYM_VALUE = self.DSTADDR_SYM_SETUP, self.DMDSTP_SYM_VALUE = "NULL", self.gName.DMDSTDP_SYM_VALUE = self.DSTADDR_SYM_SETUP, self.gName.DMDSTP_SYM_VALUE = "NULL"} else {self.DMDSTDP_HC_VALUE = ((self.DSTADDR_HC_SETUP >> 16) & 0x000000FF), self.DMDSTP_HC_VALUE = 0, self.gName.DMDSTDP_HC_VALUE = ((self.DSTADDR_HC_SETUP >> 16) & 0x000000FF), self.gName.DMDSTP_HC_VALUE = 0}} else {if ($1 == "Program Space") {if (self.dstAddrFormat == "Symbolic") {self.DMDSTP_SYM_VALUE = self.DSTADDR_SYM_SETUP, self.DMDSTDP_SYM_VALUE = "NULL", self.gName.DMDSTP_SYM_VALUE = self.DSTADDR_SYM_SETUP, self.gName.DMDSTDP_SYM_VALUE = "NULL"} else {self.DMDSTP_HC_VALUE = ((self.DSTADDR_HC_SETUP >> 16) & 0x000000FF), self.DMDSTDP_HC_VALUE = 0, self.gName.DMDSTP_HC_VALUE = ((self.DSTADDR_HC_SETUP >> 16) & 0x000000FF), self.gName.DMDSTDP_HC_VALUE = 0}} }, "ok") } inst srcAddrFormat :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Source Address Format" prop JSName :: "dmaDmsrcFormat" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Source/Destination" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.srcAddrFormat = $1, self.srcAddrFormatAd = $1, self.gName.srcAddrFormat = $1, "ok") } inst SRCADDR_HC_SETUP :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%06x" prop Label :: "Source Address - Numeric" prop JSName :: "dmaDmsrcNumeric" prop Visible :: 1 prop Writable :: self.srcAddrFormat == "Numeric" prop NoGen :: 1 prop TabName :: "Source/Destination" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.SRCADDR_HC_SETUP = $1, if (self.DMS_SETUP == "Data Space") {self.DMSRCDP_HC_VALUE = (($1 >> 16) & 0x000000FF), self.DMSRCP_HC_VALUE = 0, self.gName.DMSRCDP_HC_VALUE = (($1 >> 16) & 0x000000FF), self.gName.DMSRCP_HC_VALUE = 0} else {self.DMSRCP_HC_VALUE = (($1 >> 16) & 0x000000FF), self.DMSRCDP_HC_VALUE = 0, self.gName.DMSRCP_HC_VALUE = (($1 >> 16) & 0x000000FF), self.gName.DMSRCDP_HC_VALUE = 0}, self.DMSRC_HC_VALUE = self.DMSRC_HC_VALUE_update(), "ok") } inst SRCADDR_SYM_SETUP :: "NULL" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Source Address - Symbolic" prop JSName :: "dmaDmsrcSymbolic" prop Visible :: 1 prop Writable :: self.srcAddrFormat == "Symbolic" prop NoGen :: 1 prop TabName :: "Source/Destination" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.SRCADDR_SYM_SETUP = $1, if (self.DMS_SETUP == "Data Space") {self.DMSRCDP_SYM_VALUE = $1, self.DMSRCP_SYM_VALUE = "NULL", self.gName.DMSRCDP_SYM_VALUE = $1, self.gName.DMSRCP_SYM_VALUE = "NULL"} else {self.DMSRCP_SYM_VALUE = $1, self.DMSRCDP_SYM_VALUE = "NULL", self.gName.DMSRCP_SYM_VALUE = $1, self.gName.DMSRCDP_SYM_VALUE = "NULL"}, self.DMSRC_SYM_VALUE = self.DMSRC_SYM_VALUE_update(), "ok") } inst dstAddrFormat :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Destination Address Format" prop JSName :: "dmaDmdstFormat" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Source/Destination" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.dstAddrFormat = $1, self.dstAddrFormatAd = $1, self.gName.dstAddrFormat = $1, "ok") } inst DESADDR_HC_SETUP :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%06x" prop Label :: "Destination Address - Numeric" prop JSName :: "dmaDmdstNumeric" prop Visible :: 1 prop Writable :: self.dstAddrFormat == "Numeric" prop NoGen :: 1 prop TabName :: "Source/Destination" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.DESADDR_HC_SETUP = $1, if (self.DMD_SETUP == "Data Space") {self.DMDSTDP_HC_VALUE = (($1 >> 16) & 0x000000FF), self.DMDSTP_HC_VALUE = 0, self.gName.DMDSTDP_HC_VALUE = (($1 >> 16) & 0x000000FF), self.gName.DMDSTP_HC_VALUE = 0} else {self.DMDSTP_HC_VALUE = (($1 >> 16) & 0x000000FF), self.DMDSTDP_HC_VALUE = 0, self.gName.DMDSTP_HC_VALUE = (($1 >> 16) & 0x000000FF), self.gName.DMDSTDP_HC_VALUE = 0}, self.DMDST_HC_VALUE = self.DMDST_HC_VALUE_update(), "ok") } inst DESADDR_SYM_SETUP :: "NULL" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Destination Address - Symbolic" prop JSName :: "dmaDmdstSymbolic" prop Visible :: 1 prop Writable :: self.dstAddrFormat == "Symbolic" prop NoGen :: 1 prop TabName :: "Source/Destination" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.DESADDR_SYM_SETUP = $1, if (self.DMD_SETUP == "Data Space") {self.DMDSTDP_SYM_VALUE = $1, self.DMDSTP_SYM_VALUE = "NULL", self.gName.DMDSTDP_SYM_VALUE = $1, self.gName.DMDSTP_SYM_VALUE = "NULL"} else {self.DMDSTP_SYM_VALUE = $1, self.DMDSTDP_SYM_VALUE = "NULL", self.gName.DMDSTP_SYM_VALUE = $1, self.gName.DMDSTDP_SYM_VALUE = "NULL"}, self.DMDST_SYM_VALUE = self.DMDST_SYM_VALUE_update(), "ok") } inst SIND_SETUP :: "No Modification" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "No Modification,Postincrement,Post-decrement,DMIDX0,DMIDX1,DMIDX0 and DMFRI0,DMIDX1 and DMFRI1" prop Label :: "Source Address Transfer Index" prop JSName :: "dmaDmmcrSind" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop cGen :: 0 prop TabName :: "Source/Destination" prop Set :: (self.SIND_SETUP = $1, self.DMMCR_VALUE = self.DMMCR_VALUE_update(), "ok") } inst DIND_SETUP :: "No Modification" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "No Modification,Postincrement,Post-decrement,DMIDX0,DMIDX1,DMIDX0 and DMFRI0,DMIDX1 and DMFRI1" prop Label :: "Destination Address Transfer Index" prop JSName :: "dmaDmmcrDind" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop cGen :: 0 prop TabName :: "Source/Destination" prop Set :: (self.DIND_SETUP = $1, self.DMMCR_VALUE = self.DMMCR_VALUE_update(), "ok") } inst DMIDX0 :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Element Address Index Register 0 (DMIDX0)" prop JSName :: "dmaDmidx0" prop Visible :: 1 prop Writable :: ((self.DIND_SETUP == "DMIDX0") || (self.DIND_SETUP == "DMIDX0 and DMFRI0") || (self.SIND_SETUP == "DMIDX0") || (self.SIND_SETUP == "DMIDX0 and DMFRI0")) prop NoGen :: 1 prop TabName :: "Source/Destination" prop Set :: (self.DMIDX0 = $1, self.DMIDX0_VALUE = $1, self.gName.DMIDX0_VALUE = $1, "ok") } inst DMIDX1 :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Element Address Index Register 1 (DMIDX1)" prop JSName :: "dmaDmidx1" prop Visible :: 1 prop Writable :: ((self.DIND_SETUP == "DMIDX1") || (self.DIND_SETUP == "DMIDX1 and DMFRI1") || (self.SIND_SETUP == "DMIDX1") || (self.SIND_SETUP == "DMIDX1 and DMFRI1")) prop NoGen :: 1 prop TabName :: "Source/Destination" prop Set :: (self.DMIDX1 = $1, self.DMIDX1_VALUE = $1, self.gName.DMIDX1_VALUE = $1, "ok") } inst DMFRI0 :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Frame Address Index Register 0 (DMFRI0)" prop JSName :: "dmaDmfri0" prop Visible :: 1 prop Writable :: ((self.DIND_SETUP == "DMIDX0 and DMFRI0") || (self.SIND_SETUP == "DMIDX0 and DMFRI0")) prop NoGen :: 1 prop TabName :: "Source/Destination" prop Set :: (self.DMFRI0 = $1, self.DMFRI0_VALUE = $1, self.gName.DMFRI0_VALUE = $1, "ok") } inst DMFRI1 :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Frame Address Index Register 1 (DMFRI1)" prop JSName :: "dmaDmfri1" prop Visible :: 1 prop Writable :: ((self.DIND_SETUP == "DMIDX1 and DMFRI1") || (self.SIND_SETUP == "DMIDX1 and DMFRI1")) prop NoGen :: 1 prop TabName :: "Source/Destination" prop Set :: (self.DMFRI1 = $1, self.DMFRI1_VALUE = $1, self.gName.DMFRI1_VALUE = $1, "ok") } inst DSYN_5402_SETUP :: "No Event" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "No Event,McBSP 0 Receive Event (REVT0),McBSP 0 Transmit Event (XEVT0),McBSP 1 Receive Event (REVT1),McBSP 1 Transmit Event (XEVT1),Timer 0 Interrupt,External Interrupt 3 (INT3),Timer 1 Interrupt" prop Label :: "Sync Event" prop JSName :: "dmaDmsfcnDsyn02" prop Visible :: ((GBL.CHIPTYPE == "5401") || (GBL.CHIPTYPE == "5402")) prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Transfer Modes" prop Set :: (self.DSYN_5402_SETUP = $1, self.DMSFC_VALUE = self.DMSFC_VALUE_update(), "ok") } inst DSYN_5409_SETUP :: "No Event" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "No Event,McBSP 0 Receive Event (REVT0),McBSP 0 Transmit Event (XEVT0),McBSP 2 Receive Event (REVT2),McBSP 2 Transmit Event (XEVT2),McBSP 1 Receive Event (REVT1),McBSP 1 Transmit Event (XEVT1),Timer Interrupt 0,External Interrupt 3 (INT3)" prop Label :: "Sync Event" prop JSName :: "dmaDmsfcnDsyn09" prop Visible :: ((GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5471")) prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Transfer Modes" prop Set :: (self.DSYN_5409_SETUP = $1, self.DMSFC_VALUE = self.DMSFC_VALUE_update(), "ok") } inst DSYN_5410_SETUP :: "No Event" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "No Event,McBSP 0 Receive Event (REVT0),McBSP 0 Transmit Event (XEVT0),McBSP 2 Receive Event (REVT2),McBSP 2 Transmit Event (XEVT2),McBSP 1 Receive Event (REVT1),McBSP 1 Transmit Event (XEVT1),McBSP 0 Receive EventA (REVTA0),McBSP 0 Transmit EventA (XEVTA0),McBSP 2 Receive EventA (REVTA2),McBSP 2 Transmit EventA (XEVTA2),McBSP 1 Receive EventA (REVTA1),McBSP 1 Transmit EventA (XEVTA1),Timer Interrupt 0,External Interrupt 3 (INT3)" prop Label :: "Sync Event" prop JSName :: "dmaDmsfcnDsyn10" prop Visible :: ((GBL.CHIPTYPE == "5410") || (GBL.CHIPTYPE == "5416")) prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Transfer Modes" prop Set :: (self.DSYN_5410_SETUP = $1, self.DMSFC_VALUE = self.DMSFC_VALUE_update(), "ok") } inst DSYN_5420_SETUP :: "No Event" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "No Event,McBSP 0 Receive Event (REVT0),McBSP 0 Transmit Event (XEVT0),McBSP 2 Receive Event (REVT2),McBSP 2 Transmit Event (XEVT2),McBSP 1 Receive Event (REVT1),McBSP 1 Transmit Event (XEVT1),FIFO Receive Buffer Not Empty,FIFO Transmit Buffer Not Full" prop Label :: "Sync Event" prop JSName :: "dmaDmsfcnDsyn20" prop Visible :: ((GBL.CHIPTYPE == "5420") || (GBL.CHIPTYPE == "5421")) prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Transfer Modes" prop Set :: (self.DSYN_5420_SETUP = $1, self.DMSFC_VALUE = self.DMSFC_VALUE_update(), "ok") } inst DSYN_5440_SETUP :: "No Event" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "No Event,McBSP 0 Receive Event (REVT0),McBSP 0 Transmit Event (XEVT0),McBSP 2 Receive Event (REVT2),McBSP 2 Transmit Event (XEVT2),McBSP 1 Receive Event (REVT1),McBSP 1 Transmit Event (XEVT1)" prop Label :: "Sync Event" prop JSName :: "dmaDmsfcnDsyn40" prop Visible :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Transfer Modes" prop Set :: (self.DSYN_5440_SETUP = $1, self.DMSFC_VALUE = self.DMSFC_VALUE_update(), "ok") } inst DBLW_SETUP :: "Single(16-bits)" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Single(16-bits),Double(32-bits)" prop Label :: "Element Size (WORD MODE)" prop JSName :: "dmaDmsfcDblw" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 0 prop cGen :: 0 prop TabName :: "Source/Destination" prop Set :: (self.DBLW_SETUP = $1, self.DMSFC_VALUE = self.DMSFC_VALUE_update(), "ok") } inst FRMCNT_SETUP :: 1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Number of Frames (FRAME COUNT + 1)" prop JSName :: "dmaDmsfcFrameCount" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 0 prop TabName :: "Source/Destination" prop Set :: (if (($1 > 0) && ($1 <= 256)) {self.FRMCNT_SETUP = $1, self.DMSFC_VALUE = self.DMSFC_VALUE_update()} else {self.error("Frame Count out of Range")}, "ok") } inst ELEMCT_SETUP :: 1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Elements per Frame(ELEMENT COUNT + 1)" prop JSName :: "dmaDmctr" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Source/Destination" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (if ($1 > 0) {self.ELEMCT_SETUP = $1, self.DMCTR_VALUE = self.DMCTR_VALUE_update()} else {self.error("Element Count must be greater than 0")}, "ok") } inst AUTOIX_SETUP :: "All Channels Use Channel 0 Reload Registers" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "All Channels Use Channel 0 Reload Registers,Each Channel Uses its Own Reload Registers" prop Label :: "Global Reload Register Usage (AUTOIX) " prop JSName :: "dmaAutoix" prop Visible :: 1 prop Writable :: (self.AUTOINIT_SETUP) && ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "AutoInit" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.AUTOIX_SETUP = $1, if ($1 == "All Channels Use Channel 0 Reload Registers") {self.AUTOIX_VALUE = 0x0000, self.gName.AUTOIX_VALUE = 0x0000} else {self.AUTOIX_VALUE = 0x0001, self.gName.AUTOIX_VALUE = 0x0001}, "ok") } inst dmgsaFormat :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Global Source Address Format" prop JSName :: "dmaDmgsaFormat" prop Visible :: 1 prop Writable :: self.AUTOINIT_SETUP prop NoGen :: 1 prop TabName :: "AutoInit" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.dmgsaFormat = $1, self.dmgsaAdFormat = $1, self.gName.dmgsaFormat = $1, "ok") } inst DMGSA_HC_SETUP :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Source Address Reload (DMGSA) - Numeric" prop JSName :: "dmaDmgsaNumeric" prop Visible :: 1 prop Writable :: ((self.AUTOINIT_SETUP)) && (self.dmgsaFormat == "Numeric") prop NoGen :: 1 prop TabName :: "AutoInit" prop Set :: (self.DMGSA_HC_SETUP = $1, self.DMGSA_HC_VALUE = self.DMGSA_HC_VALUE_update(), self.gName.DMGSA_HC_VALUE = $1, "ok") } inst DMGSA_SYM_SETUP :: "NULL" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Source Address Reload (DMGSA) - Symbolic" prop JSName :: "dmaDmgsaSymbolic" prop Visible :: 1 prop Writable :: ((self.AUTOINIT_SETUP)) && (self.dmgsaFormat == "Symbolic") prop NoGen :: 1 prop TabName :: "AutoInit" prop Set :: (self.DMGSA_SYM_SETUP = $1, self.DMGSA_SYM_VALUE = self.DMGSA_SYM_VALUE_update(), self.gName.DMGSA_SYM_VALUE = $1, "ok") } inst dmgdaFormat :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Global Destination Address Format" prop JSName :: "dmaDmgdaFormat" prop Visible :: 1 prop Writable :: self.AUTOINIT_SETUP prop NoGen :: 1 prop TabName :: "AutoInit" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.dmgdaFormat = $1, self.dmgdaAdFormat = $1, self.gName.dmgdaFormat = $1, "ok") } inst DMGDA_HC_SETUP :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Destination Address Reload (DMGDA) - Numeric" prop JSName :: "dmaDmgdaNumeric" prop Visible :: 1 prop Writable :: ((self.AUTOINIT_SETUP)) && (self.dmgdaFormat == "Numeric") prop NoGen :: 1 prop TabName :: "AutoInit" prop Set :: (self.DMGDA_HC_SETUP = $1, self.DMGDA_HC_VALUE = self.DMGDA_HC_VALUE_update(), self.gName.DMGDA_HC_VALUE = $1, "ok") } inst DMGDA_SYM_SETUP :: "NULL" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Destination Address Reload (DMGDA) - Symbolic" prop JSName :: "dmaDmgdaSymbolic" prop Visible :: 1 prop Writable :: ((self.AUTOINIT_SETUP)) && (self.dmgdaFormat == "Symbolic") prop NoGen :: 1 prop TabName :: "AutoInit" prop Set :: (self.DMGDA_SYM_SETUP = $1, self.DMGDA_SYM_VALUE = self.DMGDA_SYM_VALUE_update(), self.gName.DMGDA_SYM_VALUE = $1, "ok") } inst DMGCR_SETUP :: 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "Element Count Reload (DMGCR + 1)" prop JSName :: "dmaDmgcr" prop Visible :: 1 prop Writable :: self.AUTOINIT_SETUP prop NoGen :: 1 prop TabName :: "AutoInit" prop Set :: (if (($1 > 0) && ($1 <= 65536)) {self.DMGCR_SETUP = $1, self.DMGCR_VALUE = $1 - 1, self.gName.DMGCR_VALUE = $1 - 1} else {self.error("Count value is outside limits")}, "ok") } inst DMGFR_SETUP :: 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "Frame Count Reload (DMGFR + 1)" prop JSName :: "dmaDmgfr" prop Visible :: 1 prop Writable :: self.AUTOINIT_SETUP prop NoGen :: 1 prop TabName :: "AutoInit" prop Set :: (if (($1 > 0) && ($1 <= 65536)) {self.DMGFR_SETUP = $1, self.DMGFR_VALUE = $1 - 1, self.gName.DMGFR_VALUE = $1 - 1} else {self.error("Count value is outside limits")}, "ok") } inst DMA_man :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Set Manually" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" } inst PRIOR_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Channel Priority (0x0000 or 0x0001)" prop JSName :: "dmaDmprecDprcAdv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.PRIOR_VALUE = $1 & 0x0001, self.PRIOR_SETUP_update($1 & 0x0001), "ok") } inst AUTOIX_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Global Reload Register Usage in Autoinit Mode (AUTOIX : 0x0000 or 0x0001)" prop JSName :: "dmaAutoixAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop cType :: "Uint16" prop Set :: (self.AUTOIX_VALUE = $1 & 0x0001, self.gName.AUTOIX_VALUE = $1 & 0x0001, if (self.AUTOIX_VALUE == 0x0001) {self.AUTOIX_SETUP = "Each Channel Uses its Own Reload Registers"} else {self.AUTOIX_SETUP = "All Channels Use Channel 0 Reload Registers"}, "ok") } inst DMMCR_VALUE :: self.DMMCR_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transfer Mode Control Register (DMMCR)" prop JSName :: "dmaDmmcr" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.DMMCR_VALUE = ($1 & 0xF7DF), if (($1 & 0x0700) == 0x0700) {"Invalid SIND Value"} else {if (($1 & 0x00C0) == 0x00C0) {"Invalid DMS Value"} else {if (($1 & 0x001C) == 0x001C) {"Invalid DIND Value"} else {if (($1 & 0x0003) == 0x0003) {"Invalid DMD Value"} else {(self.DMMCR_SETUP_update($1), "ok")}}}}) } inst DMSFC_VALUE :: self.DMSFC_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Sync Event and Frame Count Register (DMSFC)" prop JSName :: "dmaDmsfc" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.DMSFC_VALUE = ($1 & 0xF8FF), self.DMSFC_SETUP_update($1), self.DSYN_5402_SETUP_update($1), self.DSYN_5409_SETUP_update($1), self.DSYN_5410_SETUP_update($1), self.DSYN_5420_SETUP_update($1), self.DSYN_5440_SETUP_update($1), "ok") } inst srcAddrFormatAd :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Source Address Format" prop JSName :: "dmaDmsrcFormatAdv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.srcAddrFormatAd = $1, self.srcAddrFormat = $1, self.gName.srcAddrFormat = $1, "ok") } inst DMSRC_HC_VALUE :: self.DMSRC_HC_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Source Address Register (DMSRC) - Numeric" prop JSName :: "dmaDmsrcNumericAdv" prop Visible :: 1 prop Writable :: self.srcAddrFormat == "Numeric" prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: (self.srcAddrFormat == "Numeric") prop cType :: "Uint16" prop cPreVal :: "(DMA_AdrPtr)" prop Set :: (self.DMSRC_HC_VALUE = $1, self.DMSRC_HC_L_SETUP_update($1), "ok") } inst DMSRC_SYM_VALUE :: self.DMSRC_SYM_VALUE_update() { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Source Address Register (DMSRC) - Symbolic" prop JSName :: "dmaDmsrcSymbolicAdv" prop Visible :: 1 prop Writable :: self.srcAddrFormat == "Symbolic" prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: (self.srcAddrFormat == "Symbolic") prop cType :: "char[]" prop cPreVal :: if (self.DMSRC_SYM_VALUE != "NULL") {"(DMA_AdrPtr)&"} else {""} prop Set :: (self.DMSRC_SYM_VALUE = $1, self.DMSRC_SYM_SETUP_update($1), if (self.DMS_SETUP == "Data Space") {self.DMSRCDP_SYM_VALUE = $1, self.DMSRCP_SYM_VALUE = "NULL", self.gName.DMSRCDP_SYM_VALUE = $1, self.gName.DMSRCP_SYM_VALUE = "NULL"} else {self.DMSRCP_SYM_VALUE = $1, self.DMSRCDP_SYM_VALUE = "NULL", self.gName.DMSRCP_SYM_VALUE = $1, self.gName.DMSRCDP_SYM_VALUE = "NULL"}, "ok") } inst dstAddrFormatAd :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Destination Address Format" prop JSName :: "dmaDmdstFormatAdv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.dstAddrFormatAd = $1, self.dstAddrFormat = $1, self.gName.dstAddrFormat = $1, "ok") } inst DMDST_HC_VALUE :: self.DMDST_HC_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Destination Address Register (DMDST) - Numeric" prop JSName :: "dmaDmdstNumericAdv" prop Visible :: 1 prop Writable :: self.dstAddrFormat == "Numeric" prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: (self.dstAddrFormat == "Numeric") prop cType :: "Uint16" prop cPreVal :: "(DMA_AdrPtr)" prop Set :: (self.DMDST_HC_VALUE = $1, self.DMDST_HC_L_SETUP_update($1), "ok") } inst DMDST_SYM_VALUE :: self.DMDST_SYM_VALUE_update() { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Destination Address Register (DMDST) - Symbolic" prop JSName :: "dmaDmdstSymbolicAdv" prop Visible :: 1 prop Writable :: self.dstAddrFormat == "Symbolic" prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: (self.dstAddrFormat == "Symbolic") prop cType :: "char[]" prop cPreVal :: if (self.DMDST_SYM_VALUE != "NULL") {"(DMA_AdrPtr)&"} else {""} prop Set :: (self.DMDST_SYM_VALUE = $1, self.DMDST_SYM_SETUP_update($1), if (self.DMD_SETUP == "Data Space") {self.DMDSTDP_SYM_VALUE = $1, self.DMDSTP_SYM_VALUE = "NULL", self.gName.DMDSTDP_SYM_VALUE = $1, self.gName.DMDSTP_SYM_VALUE = "NULL"} else {self.DMDSTP_SYM_VALUE = $1, self.DMDSTDP_SYM_VALUE = "NULL", self.gName.DMDSTP_SYM_VALUE = $1, self.gName.DMDSTDP_SYM_VALUE = "NULL"}, "ok") } inst DMCTR_VALUE :: self.DMCTR_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Element Count Register (DMCTR)" prop JSName :: "dmaDmctrAdv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.DMCTR_VALUE = $1, self.DMCTR_SETUP_update($1), "ok") } inst dmgsaAdFormat :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Global Source Address Format" prop JSName :: "dmaDmgsaFormatAdv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.dmgsaAdFormat = $1, self.dmgsaFormat = $1, self.gName.dmgsaFormat = $1, "ok") } inst DMGSA_HC_VALUE :: self.DMGSA_HC_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Global Source Address Reload Register (DMGSA) - Numeric" prop JSName :: "dmaDmgsaNumericAdv" prop Visible :: 1 prop Writable :: self.dmgsaFormat == "Numeric" prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.dmgsaFormat == "Numeric") prop cType :: "Uint16" prop cPreVal :: "(DMA_AdrPtr)" prop Set :: (self.DMGSA_HC_VALUE = $1, self.gName.DMGSA_HC_VALUE = $1, self.DMGSA_HC_SETUP_update($1), "ok") } inst DMGSA_SYM_VALUE :: self.DMGSA_SYM_VALUE_update() { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Global Source Address Reload Register (DMGSA) - Symbolic" prop JSName :: "dmaDmgsaSymbolicAdv" prop Visible :: 1 prop Writable :: self.dmgsaFormat == "Symbolic" prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.dmgsaFormat == "Symbolic") prop cType :: "char[]" prop cPreVal :: if (self.DMGSA_SYM_VALUE != "NULL") {"(DMA_AdrPtr)&"} else {""} prop Set :: (self.DMGSA_SYM_VALUE = $1, self.gName.DMGSA_SYM_VALUE = $1, self.DMGSA_SYM_SETUP_update($1), "ok") } inst dmgdaAdFormat :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Global Destination Address Format" prop JSName :: "dmaDmgdaFormatAdv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.dmgdaAdFormat = $1, self.dmgdaFormat = $1, self.gName.dmgdaFormat = $1, "ok") } inst DMGDA_HC_VALUE :: self.DMGDA_HC_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Global Destination Address Reload Register (DMGDA) - Numeric" prop JSName :: "dmaDmgdaNumericAdv" prop Visible :: 1 prop Writable :: self.dmgdaFormat == "Numeric" prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.dmgdaFormat == "Numeric") prop cType :: "Uint16" prop cPreVal :: "(DMA_AdrPtr)" prop Set :: (self.DMGDA_HC_VALUE = $1, self.gName.DMGDA_HC_VALUE = $1, self.DMGDA_HC_SETUP_update($1), "ok") } inst DMGDA_SYM_VALUE :: self.DMGDA_SYM_VALUE_update() { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Global Destination Address Reload Register (DMGDA) - Symbolic" prop JSName :: "dmaDmgdaSymbolicAdv" prop Visible :: 1 prop Writable :: self.dmgdaFormat == "Symbolic" prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.dmgdaFormat == "Symbolic") prop cType :: "char[]" prop cPreVal :: if (self.DMGDA_SYM_VALUE != "NULL") {"(DMA_AdrPtr)&"} else {""} prop Set :: (self.DMGDA_SYM_VALUE = $1, self.gName.DMGDA_SYM_VALUE = $1, self.DMGDA_SYM_SETUP_update($1), "ok") } inst DMGCR_VALUE :: self.DMGCR_SETUP - 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Global Element Count Reload Register (DMGCR)" prop JSName :: "dmaDmgcrAdv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop cType :: "Uint16" prop Set :: (self.DMGCR_VALUE = $1, self.gName.DMGCR_VALUE = $1, self.DMGCR_SETUP_update($1), "ok") } inst DMGFR_VALUE :: self.DMGFR_SETUP - 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Global Frame Count Reload Register (DMGFR)" prop JSName :: "dmaDmgfrAdv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop cType :: "Uint16" prop Set :: (self.DMGFR_VALUE = $1, self.gName.DMGFR_VALUE = $1, self.DMGFR_SETUP_update($1), "ok") } inst DMSRCDP_HC_VALUE :: ((self.SRCADDR_HC_SETUP >> 16) & 0x00FF) { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%02x" prop Label :: "Extended Source Data Page Register (DMSRCDP) - Numeric" prop JSName :: "dmaDmsrcdpNumeric" prop Visible :: 1 prop Writable :: self.srcAddrFormat == "Numeric" prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.srcAddrFormat == "Numeric") prop cType :: "Uint16" prop Set :: (self.DMSRCDP_HC_VALUE = $1, self.DMSRC_HC_U_SETUP_update($1), self.gName.DMDSTDP_HC_VALUE = $1, "ok") } inst DMSRCDP_SYM_VALUE :: self.SRCADDR_SYM_SETUP { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Extended Source Data Page Register (DMSRCDP) - Symbolic" prop JSName :: "dmadmsrcdpSymbolic" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.srcAddrFormat == "Symbolic") prop cType :: "char[]" prop cPreVal :: if (self.DMSRCDP_SYM_VALUE != "NULL") {"(Uint16)&"} else {""} prop Set :: (self.DMSRCDP_SYM_VALUE = $1, self.gName.DMSRCDP_SYM_VALUE = $1, "ok") } inst DMDSTDP_HC_VALUE :: ((self.DESADDR_HC_SETUP >> 16) & 0x00FF) { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%02x" prop Label :: "Extended Destination Data Page Register (DMDSTDP) - Numeric" prop JSName :: "dmaDmdstdpNumeric" prop Visible :: 1 prop Writable :: self.dstAddrFormat == "Numeric" prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.dstAddrFormat == "Numeric") prop cType :: "Uint16" prop Set :: (self.DMDSTDP_HC_VALUE = $1, self.DMDST_HC_U_SETUP_update($1), self.gName.DMDSTDP_HC_VALUE = $1, "ok") } inst DMDSTDP_SYM_VALUE :: self.DESADDR_SYM_SETUP { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Extended Destination Data Page Register (DMDSTDP) - Symbolic" prop JSName :: "dmaDmdstdpSymbolic" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.dstAddrFormat == "Symbolic") prop cType :: "char[]" prop cPreVal :: if (self.DMDSTDP_SYM_VALUE != "NULL") {"(Uint16)&"} else {""} prop Set :: (self.DMDSTDP_SYM_VALUE = $1, self.gName.DMDSTDP_SYM_VALUE = $1, "ok") } inst DMSRCP_HC_VALUE :: ((self.SRCADDR_HC_SETUP >> 16) & 0x00FF) { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%02x" prop Label :: "Source Program Page Address Register (DMSRCP) - Numeric" prop JSName :: "dmaDmsrcpNumeric" prop Visible :: 1 prop Writable :: self.srcAddrFormat == "Numeric" prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.DMSRCP_HC_VALUE = $1, self.DMSRC_HC_U_SETUP_update($1), self.gName.DMSRCP_HC_VALUE = $1, "ok") } inst DMSRCP_SYM_VALUE :: self.SRCADDR_SYM_SETUP { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Source Program Page Address Register (DMSRCP) - Symbolic" prop JSName :: "dmaDmsrcpSymbolic" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "char[]" prop cPreVal :: if (self.DMSRCP_SYM_VALUE != "NULL") {"(Uint16)&"} else {""} prop Set :: (self.DMSRCP_SYM_VALUE = $1, self.gName.DMSRCP_SYM_VALUE = $1, "ok") } inst DMDSTP_HC_VALUE :: ((self.DESADDR_HC_SETUP >> 16) & 0x00FF) { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%02x" prop Label :: "Destination Program Page Address Register (DMDSTP) - Numeric" prop JSName :: "dmaDmdstpNumeric" prop Visible :: 1 prop Writable :: self.dstAddrFormat == "Numeric" prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.DMDSTP_HC_VALUE = $1, self.DMDST_HC_U_SETUP_update($1), self.gName.DMDSTP_HC_VALUE = $1, "ok") } inst DMDSTP_SYM_VALUE :: self.DESADDR_SYM_SETUP { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Destination Program Page Address Register (DMDSTP) - Symbolic" prop JSName :: "dmaDmdstpSymbolic" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "char[]" prop cPreVal :: if (self.DMDSTP_SYM_VALUE != "NULL") {"(Uint16)&"} else {""} prop Set :: (self.DMDSTP_SYM_VALUE = $1, self.gName.DMDSTP_SYM_VALUE = $1, "ok") } inst DMIDX0_VALUE :: self.DMIDX0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Element Address Index Register 0 (DMIDX0)" prop JSName :: "dmaDmidx0Adv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.DMIDX0_VALUE = $1, self.DMIDX0 = $1, self.gName.DMIDX0_VALUE = $1, "ok") } inst DMFRI0_VALUE :: self.DMFRI0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Frame Address Index Register 0 (DMFRI0)" prop JSName :: "dmaDmfri0Adv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.DMFRI0_VALUE = $1, self.DMFRI0 = $1, self.gName.DMFRI0_VALUE = $1, "ok") } inst DMIDX1_VALUE :: self.DMIDX1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Element Address Index Register 1 (DMIDX1)" prop JSName :: "dmaDmidx1Adv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.DMIDX1_VALUE = $1, self.DMIDX1 = $1, self.gName.DMIDX1_VALUE = $1, "ok") } inst DMFRI1_VALUE :: self.DMFRI1 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Frame Address Index Register 1 (DMFRI1)" prop JSName :: "dmaDmfri1Adv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.DMFRI1_VALUE = $1, self.DMFRI1 = $1, self.gName.DMFRI1_VALUE = $1, "ok") } } type gdmaCfg { isa ObjectMgr prop name :: "GDMA" prop JSName :: "GDMA" prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-00105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-0000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop IsContainedIn :: DMAFOLDER prop cGen :: 1 prop cStruct :: 1 prop cStructType :: "DMA_GblConfig" prop cHeaderName :: if self.gNumOf > 0 {"csl_dma.h"} else {""} prop NoGen :: 1 prop Visible :: 0 global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst FREE_VALUE :: 0x0000 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "Breakpoint Emulation Behavior (FREE)" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 1 prop cType :: "Uint16" } inst AUTOIX_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Global Reload Register Usage in Autoinit Mode (AUTOIX : 0x0000 or 0x0001)" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop cType :: "Uint16" } inst srcAddrFormat :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Source Address Format" prop JSName :: "dmaDmsrcFormat" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 0 prop cType :: "Uint16" } inst dstAddrFormat :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Destination Address Format" prop JSName :: "dmaDmdstFormat" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 0 prop cType :: "Uint16" } inst dmgsaFormat :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Global Source Address Format" prop JSName :: "dmaDmgsaFormat" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 0 prop cType :: "Uint16" } inst dmgdaFormat :: "Symbolic" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Symbolic,Numeric" prop Label :: "Global Destination Address Format" prop JSName :: "dmaDmgdaFormat" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 0 prop cType :: "Uint16" } inst DMSRCP_HC_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%02x" prop Label :: "Source Program Page Address Register (DMSRCP) - Numeric" prop JSName :: "dmaDmsrcpNumeric" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: (self.srcAddrFormat == "Numeric") prop cType :: "Uint16" } inst DMSRCP_SYM_VALUE :: "NULL" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Source Program Page Address Register (DMSRCP) - Symbolic" prop JSName :: "dmaDmsrcpSymbolic" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: (self.srcAddrFormat == "Symbolic") prop cType :: "char[]" prop cPreVal :: if (self.DMSRCP_SYM_VALUE != "NULL") {"(Uint16)&"} else {""} } inst DMDSTP_HC_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%02x" prop Label :: "Destination Program Page Address Register (DMDSTP) - Numeric" prop JSName :: "dmaDmstpNumeric" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: (self.dstAddrFormat == "Numeric") prop cType :: "Uint16" } inst DMDSTP_SYM_VALUE :: "NULL" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Destination Program Page Address Register (DMDSTP) - Symbolic" prop JSName :: "dmaDmstpSymbolic" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: (self.dstAddrFormat == "Symbolic") prop cType :: "char[]" prop cPreVal :: if (self.DMDSTP_SYM_VALUE != "NULL") {"(Uint16)&"} else {""} } inst DMIDX0_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Element Address Index Register 0 (DMIDX0)" prop JSName :: "dmaDmidx0" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 1 prop cType :: "Uint16" } inst DMFRI0_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Frame Address Index Register 0 (DMFRI0)" prop JSName :: "dmaDmfri0" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 1 prop cType :: "Uint16" } inst DMIDX1_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Element Address Index Register 1 (DMIDX1)" prop JSName :: "dmaDmidx1" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 1 prop cType :: "Uint16" } inst DMFRI1_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Frame Address Index Register 1 (DMFRI1)" prop JSName :: "dmaDmfri1" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 1 prop cType :: "Uint16" } inst DMGSA_HC_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Global Source Address Reload Register (DMGSA) - Numeric" prop JSName :: "dmaDmgsaNumeric" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE != "5416") && (GBL.CHIPTYPE != "5421") && (GBL.CHIPTYPE != "5440") && (GBL.CHIPTYPE != "5441") && (self.dmgsaFormat == "Numeric")) prop cType :: "Uint16" prop cPreVal :: "(DMA_AdrPtr)" } inst DMGSA_SYM_VALUE :: "NULL" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Global Source Address Reload Register (DMGSA) - Symbolic" prop JSName :: "dmaDmgsaSymbolic" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE != "5416") && (GBL.CHIPTYPE != "5421") && (GBL.CHIPTYPE != "5440") && (GBL.CHIPTYPE != "5441") && (self.dmgsaFormat == "Symbolic")) prop cType :: "char[]" prop cPreVal :: if (self.DMGSA_SYM_VALUE != "NULL") {"(DMA_AdrPtr)&"} else {""} } inst DMGDA_HC_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Global Destination Address Reload Register (DMGDA) - Numeric" prop JSName :: "dmaDmgdaNumeric" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE != "5416") && (GBL.CHIPTYPE != "5421") && (GBL.CHIPTYPE != "5440") && (GBL.CHIPTYPE != "5441") && (self.dmgdaFormat == "Numeric")) prop cType :: "Uint16" prop cPreVal :: "(DMA_AdrPtr)" } inst DMGDA_SYM_VALUE :: "NULL" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Global Destination Address Reload Register (DMGDA) - Symbolic" prop JSName :: "dmaDmgdaSymbolic" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE != "5416") && (GBL.CHIPTYPE != "5421") && (GBL.CHIPTYPE != "5440") && (GBL.CHIPTYPE != "5441") && (self.dmgdaFormat == "Symbolic")) prop cType :: "char[]" prop cPreVal :: if (self.DMGDA_SYM_VALUE != "NULL") {"(DMA_AdrPtr)&"} else {""} } inst DMGCR_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Global Element Count Reload Register (DMGCR)" prop JSName :: "dmaDmgcr" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE != "5416") && (GBL.CHIPTYPE != "5421") && (GBL.CHIPTYPE != "5440") && (GBL.CHIPTYPE != "5441")) prop cType :: "Uint16" } inst DMGFR_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Global Frame Count Reload Register (DMGFR)" prop JSName :: "dmaDmgfr" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE != "5416") && (GBL.CHIPTYPE != "5421") && (GBL.CHIPTYPE != "5440") && (GBL.CHIPTYPE != "5441")) prop cType :: "Uint16" } inst DMSRCDP_HC_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%02x" prop Label :: "Extended Source Data Page Register (DMSRCDP) - Numeric" prop JSName :: "dmaDmsrcdpNumeric" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421")) && (self.srcAddrFormat == "Numeric") prop cType :: "Uint16" } inst DMSRCDP_SYM_VALUE :: "NULL" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Extended Source Data Page Register (DMSRCDP) - Symbolic" prop JSName :: "dmaDmsrcdpSymbolic" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421")) && (self.srcAddrFormat == "Symbolic") prop cType :: "char[]" prop cPreVal :: if (self.DMSRCDP_SYM_VALUE != "NULL") {"(Uint16)&"} else {""} } inst DMDSTDP_HC_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%02x" prop Label :: "Extended Destination Data Page Register (DMDSTDP) - Numeric" prop JSName :: "dmaDmdstdpNumeric" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421")) && (self.dstAddrFormat == "Numeric") prop cType :: "Uint16" } inst DMDSTDP_SYM_VALUE :: "NULL" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Extended Destination Data Page Register (DMDSTDP) - Symbolic" prop JSName :: "dmaDmdstdpSymbolic" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421")) && (self.dstAddrFormat == "Symbolic") prop cType :: "char[]" prop cPreVal :: if (self.DMDSTDP_SYM_VALUE != "NULL") {"(Uint16)&"} else {""} } } object gDMAConfig0 :: gdmaCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param FREE_VALUE :: 0 param AUTOIX_VALUE :: 0 param srcAddrFormat :: "Symbolic" param dstAddrFormat :: "Symbolic" param dmgsaFormat :: "Symbolic" param dmgdaFormat :: "Symbolic" param DMSRCP_HC_VALUE :: 0 param DMSRCP_SYM_VALUE :: "NULL" param DMDSTP_HC_VALUE :: 0 param DMDSTP_SYM_VALUE :: "NULL" param DMIDX0_VALUE :: 0 param DMFRI0_VALUE :: 0 param DMIDX1_VALUE :: 0 param DMFRI1_VALUE :: 0 param DMGSA_HC_VALUE :: 0 param DMGSA_SYM_VALUE :: "NULL" param DMGDA_HC_VALUE :: 0 param DMGDA_SYM_VALUE :: "NULL" param DMGCR_VALUE :: 0 param DMGFR_VALUE :: 0 param DMSRCDP_HC_VALUE :: 0 param DMSRCDP_SYM_VALUE :: "NULL" param DMDSTDP_HC_VALUE :: 0 param DMDSTDP_SYM_VALUE :: "NULL" } object gDMAConfig1 :: gdmaCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param FREE_VALUE :: 0 param AUTOIX_VALUE :: 0 param srcAddrFormat :: "Symbolic" param dstAddrFormat :: "Symbolic" param dmgsaFormat :: "Symbolic" param dmgdaFormat :: "Symbolic" param DMSRCP_HC_VALUE :: 0 param DMSRCP_SYM_VALUE :: "NULL" param DMDSTP_HC_VALUE :: 0 param DMDSTP_SYM_VALUE :: "NULL" param DMIDX0_VALUE :: 0 param DMFRI0_VALUE :: 0 param DMIDX1_VALUE :: 0 param DMFRI1_VALUE :: 0 param DMGSA_HC_VALUE :: 0 param DMGSA_SYM_VALUE :: "NULL" param DMGDA_HC_VALUE :: 0 param DMGDA_SYM_VALUE :: "NULL" param DMGCR_VALUE :: 0 param DMGFR_VALUE :: 0 param DMSRCDP_HC_VALUE :: 0 param DMSRCDP_SYM_VALUE :: "NULL" param DMDSTDP_HC_VALUE :: 0 param DMDSTDP_SYM_VALUE :: "NULL" } object gDMAConfig2 :: gdmaCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param FREE_VALUE :: 0 param AUTOIX_VALUE :: 0 param srcAddrFormat :: "Symbolic" param dstAddrFormat :: "Symbolic" param dmgsaFormat :: "Symbolic" param dmgdaFormat :: "Symbolic" param DMSRCP_HC_VALUE :: 0 param DMSRCP_SYM_VALUE :: "NULL" param DMDSTP_HC_VALUE :: 0 param DMDSTP_SYM_VALUE :: "NULL" param DMIDX0_VALUE :: 0 param DMFRI0_VALUE :: 0 param DMIDX1_VALUE :: 0 param DMFRI1_VALUE :: 0 param DMGSA_HC_VALUE :: 0 param DMGSA_SYM_VALUE :: "NULL" param DMGDA_HC_VALUE :: 0 param DMGDA_SYM_VALUE :: "NULL" param DMGCR_VALUE :: 0 param DMGFR_VALUE :: 0 param DMSRCDP_HC_VALUE :: 0 param DMSRCDP_SYM_VALUE :: "NULL" param DMDSTDP_HC_VALUE :: 0 param DMDSTDP_SYM_VALUE :: "NULL" } object gDMAConfig3 :: gdmaCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param FREE_VALUE :: 0 param AUTOIX_VALUE :: 0 param srcAddrFormat :: "Symbolic" param dstAddrFormat :: "Symbolic" param dmgsaFormat :: "Symbolic" param dmgdaFormat :: "Symbolic" param DMSRCP_HC_VALUE :: 0 param DMSRCP_SYM_VALUE :: "NULL" param DMDSTP_HC_VALUE :: 0 param DMDSTP_SYM_VALUE :: "NULL" param DMIDX0_VALUE :: 0 param DMFRI0_VALUE :: 0 param DMIDX1_VALUE :: 0 param DMFRI1_VALUE :: 0 param DMGSA_HC_VALUE :: 0 param DMGSA_SYM_VALUE :: "NULL" param DMGDA_HC_VALUE :: 0 param DMGDA_SYM_VALUE :: "NULL" param DMGCR_VALUE :: 0 param DMGFR_VALUE :: 0 param DMSRCDP_HC_VALUE :: 0 param DMSRCDP_SYM_VALUE :: "NULL" param DMDSTDP_HC_VALUE :: 0 param DMDSTDP_SYM_VALUE :: "NULL" } object gDMAConfig4 :: gdmaCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param FREE_VALUE :: 0 param AUTOIX_VALUE :: 0 param srcAddrFormat :: "Symbolic" param dstAddrFormat :: "Symbolic" param dmgsaFormat :: "Symbolic" param dmgdaFormat :: "Symbolic" param DMSRCP_HC_VALUE :: 0 param DMSRCP_SYM_VALUE :: "NULL" param DMDSTP_HC_VALUE :: 0 param DMDSTP_SYM_VALUE :: "NULL" param DMIDX0_VALUE :: 0 param DMFRI0_VALUE :: 0 param DMIDX1_VALUE :: 0 param DMFRI1_VALUE :: 0 param DMGSA_HC_VALUE :: 0 param DMGSA_SYM_VALUE :: "NULL" param DMGDA_HC_VALUE :: 0 param DMGDA_SYM_VALUE :: "NULL" param DMGCR_VALUE :: 0 param DMGFR_VALUE :: 0 param DMSRCDP_HC_VALUE :: 0 param DMSRCDP_SYM_VALUE :: "NULL" param DMDSTDP_HC_VALUE :: 0 param DMDSTDP_SYM_VALUE :: "NULL" } object gDMAConfig5 :: gdmaCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param FREE_VALUE :: 0 param AUTOIX_VALUE :: 0 param srcAddrFormat :: "Symbolic" param dstAddrFormat :: "Symbolic" param dmgsaFormat :: "Symbolic" param dmgdaFormat :: "Symbolic" param DMSRCP_HC_VALUE :: 0 param DMSRCP_SYM_VALUE :: "NULL" param DMDSTP_HC_VALUE :: 0 param DMDSTP_SYM_VALUE :: "NULL" param DMIDX0_VALUE :: 0 param DMFRI0_VALUE :: 0 param DMIDX1_VALUE :: 0 param DMFRI1_VALUE :: 0 param DMGSA_HC_VALUE :: 0 param DMGSA_SYM_VALUE :: "NULL" param DMGDA_HC_VALUE :: 0 param DMGDA_SYM_VALUE :: "NULL" param DMGCR_VALUE :: 0 param DMGFR_VALUE :: 0 param DMSRCDP_HC_VALUE :: 0 param DMSRCDP_SYM_VALUE :: "NULL" param DMDSTDP_HC_VALUE :: 0 param DMDSTDP_SYM_VALUE :: "NULL" } type hDMA { isa ObjectMgr prop name :: "hDMA" prop Label :: "DMA Resource Manager" prop JSName :: "HDMA" prop GlobalHelpTopic :: 1022 prop InstanceHelpTopic :: 1023 prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-00105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-0000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop maxObjs :: 6 prop NoGen :: 1 prop GlobalIcon :: 157 prop InstanceIcon :: 158 prop IsContainedIn :: DMAFOLDER prop cGen :: 1 prop cHandle :: self.cOpenGen prop cHeaderName :: if self.c54dma == 1 {"csl_dma.h"} else {""} prop cHandleType :: "DMA_Handle" prop cOpenName :: "DMA_open" prop cConfigName :: "DMA_config" prop cHandleName :: self.handleName prop gblConfig :: self.cConfigArg1.gName prop cGenFxnPostInst :: (if ((self.cConfigGen) && (self.cOpenGen)) {"%5tDMA_globalConfig(0x0FFFF, &%1s);\n%0t\0, gblConfig"} else {""}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 6 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global c54dma :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "C54x DMA opened " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 0 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst cOpenGen :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Handle to DMA " prop JSName :: "dmaEnableHandle" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 1 prop Set :: (self.cOpenGen = $1, if ($1 == 1) {self.c54dma = 1} else {self.c54dma = 0}, "ok") } inst cOpenArg0 :: "DMA_CHA0" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Arg 0" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst cOpenArg1 :: "DMA_OPEN_RESET" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Arg 1" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst handleName :: self { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Specify Handle Name " prop JSName :: "dmaHandleName" prop Visible :: 1 prop Writable :: (self.cOpenGen) prop NoGen :: 1 prop cGen :: 0 prop Set :: (self.handleName = $1, self.cConfigArg0 = $1, "ok") } inst DMA_INIT_ENABLE :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable pre-initialization " prop JSName :: "dmaEnablePreInit" prop Visible :: 1 prop Writable :: (self.cOpenGen) prop NoGen :: 1 prop Set :: ($a = 0, scan ($b; dmaCfg) {$a = 1}, if ($a == 0) {"You must create a configuration object"} else {self.DMA_INIT_ENABLE = $1, "ok"}) } inst cConfigGen :: = ((self.DMA_INIT_ENABLE == 1) && (self.cConfigArg1 != DMA_NOTHING) && (self.cOpenGen)) { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 prop Visible :: 0 } inst cConfigArg0 :: self.handleName { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Config argument 0" prop Visible :: 0 } inst cConfigArg1 :: DMA_NOTHING { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: dmaCfg prop Label :: "Pre-initialize" prop JSName :: "dmaPreInit" prop Visible :: 1 prop Writable :: (self.DMA_INIT_ENABLE == 1) && (self.cOpenGen) prop NoGen :: 0 prop cPreVal :: "&" prop Set :: (self.cConfigArg1 = $1, "ok") } } object DMA_NOTHING :: dmaCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param FREE :: "Stop Immediately" param gName :: gDMAConfig0 param PRIOR_SETUP :: "Low" param AUTOINIT_SETUP :: 0 param CTMOD_SETUP :: "Multiframe" param DINM_SETUP :: "None" param IMOD1_SETUP :: "Full Buffer Only" param IMOD2_SETUP :: "End of Block" param DMS_SETUP :: "Program Space" param DMD_SETUP :: "Program Space" param srcAddrFormat :: "Symbolic" param SRCADDR_HC_SETUP :: 0 param SRCADDR_SYM_SETUP :: "NULL" param dstAddrFormat :: "Symbolic" param DESADDR_HC_SETUP :: 0 param DESADDR_SYM_SETUP :: "NULL" param SIND_SETUP :: "No Modification" param DIND_SETUP :: "No Modification" param DMIDX0 :: 0 param DMIDX1 :: 0 param DMFRI0 :: 0 param DMFRI1 :: 0 param DSYN_5402_SETUP :: "No Event" param DSYN_5409_SETUP :: "No Event" param DSYN_5410_SETUP :: "No Event" param DSYN_5420_SETUP :: "No Event" param DSYN_5440_SETUP :: "No Event" param DBLW_SETUP :: "Single(16-bits)" param FRMCNT_SETUP :: 1 param ELEMCT_SETUP :: 1 param AUTOIX_SETUP :: "All Channels Use Channel 0 Reload Registers" param dmgsaFormat :: "Symbolic" param DMGSA_HC_SETUP :: 0 param DMGSA_SYM_SETUP :: "NULL" param dmgdaFormat :: "Symbolic" param DMGDA_HC_SETUP :: 0 param DMGDA_SYM_SETUP :: "NULL" param DMGCR_SETUP :: 1 param DMGFR_SETUP :: 1 param DMA_man :: 0 param PRIOR_VALUE :: 0 param AUTOIX_VALUE :: 0 param DMMCR_VALUE :: 0 param DMSFC_VALUE :: 0 param srcAddrFormatAd :: "Symbolic" param DMSRC_HC_VALUE :: 0 param DMSRC_SYM_VALUE :: "NULL" param dstAddrFormatAd :: "Symbolic" param DMDST_HC_VALUE :: 0 param DMDST_SYM_VALUE :: "NULL" param DMCTR_VALUE :: 0 param dmgsaAdFormat :: "Symbolic" param DMGSA_HC_VALUE :: 0 param DMGSA_SYM_VALUE :: "NULL" param dmgdaAdFormat :: "Symbolic" param DMGDA_HC_VALUE :: 0 param DMGDA_SYM_VALUE :: "NULL" param DMGCR_VALUE :: 0 param DMGFR_VALUE :: 0 param DMSRCDP_HC_VALUE :: 0 param DMSRCDP_SYM_VALUE :: "NULL" param DMDSTDP_HC_VALUE :: 0 param DMDSTDP_SYM_VALUE :: "NULL" param DMSRCP_HC_VALUE :: 0 param DMSRCP_SYM_VALUE :: "NULL" param DMDSTP_HC_VALUE :: 0 param DMDSTP_SYM_VALUE :: "NULL" param DMIDX0_VALUE :: 0 param DMFRI0_VALUE :: 0 param DMIDX1_VALUE :: 0 param DMFRI1_VALUE :: 0 } object DMA0 :: hDMA { param iComment :: "DMA Channel 0" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hDMA" param iDelMsg :: "DMA Channel 0" param cOpenGen :: 0 param cOpenArg0 :: "DMA_CHA0" param cOpenArg1 :: "DMA_OPEN_RESET" param handleName :: "hDma0" param DMA_INIT_ENABLE :: 0 param cConfigArg0 :: "hDma0" param cConfigArg1 :: DMA_NOTHING } object DMA1 :: hDMA { param iComment :: "DMA Channel 1" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hDMA" param iDelMsg :: "DMA Channel 1" param cOpenGen :: 0 param cOpenArg0 :: "DMA_CHA1" param cOpenArg1 :: "DMA_OPEN_RESET" param handleName :: "hDma1" param DMA_INIT_ENABLE :: 0 param cConfigArg0 :: "hDma1" param cConfigArg1 :: DMA_NOTHING } object DMA2 :: hDMA { param iComment :: "DMA Channel 2" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hDMA" param iDelMsg :: "DMA Channel 2" param cOpenGen :: 0 param cOpenArg0 :: "DMA_CHA2" param cOpenArg1 :: "DMA_OPEN_RESET" param handleName :: "hDma2" param DMA_INIT_ENABLE :: 0 param cConfigArg0 :: "hDma2" param cConfigArg1 :: DMA_NOTHING } object DMA3 :: hDMA { param iComment :: "DMA Channel 3" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hDMA" param iDelMsg :: "DMA Channel 3" param cOpenGen :: 0 param cOpenArg0 :: "DMA_CHA3" param cOpenArg1 :: "DMA_OPEN_RESET" param handleName :: "hDma3" param DMA_INIT_ENABLE :: 0 param cConfigArg0 :: "hDma3" param cConfigArg1 :: DMA_NOTHING } object DMA4 :: hDMA { param iComment :: "DMA Channel 4" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hDMA" param iDelMsg :: "DMA Channel 4" param cOpenGen :: 0 param cOpenArg0 :: "DMA_CHA4" param cOpenArg1 :: "DMA_OPEN_RESET" param handleName :: "hDma4" param DMA_INIT_ENABLE :: 0 param cConfigArg0 :: "hDma4" param cConfigArg1 :: DMA_NOTHING } object DMA5 :: hDMA { param iComment :: "DMA Channel 5" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hDMA" param iDelMsg :: "DMA Channel 5" param cOpenGen :: 0 param cOpenArg0 :: "DMA_CHA5" param cOpenArg1 :: "DMA_OPEN_RESET" param handleName :: "hDma5" param DMA_INIT_ENABLE :: 0 param cConfigArg0 :: "hDma5" param cConfigArg1 :: DMA_NOTHING } type hGPIO { prop JSName :: "HGPIO" prop Label :: "GPIO - General Purpose Input/Output" prop GlobalIcon :: 171 prop GlobalPropertyPage :: "{B976FB91-49A5-11d4-967C-0050048381B7}" prop GlobalHelpTopic :: 1030 prop IsContainedIn :: CSL prop NoGen :: 1 } type gpioCfg { isa ObjectMgr prop name :: "GPIO_CFG" prop Label :: "Non-Multiplexed GPIO Configuration " prop JSName :: "GPIO" prop GlobalHelpTopic :: 1031 prop InstanceHelpTopic :: 1031 prop GlobalIcon :: 171 prop InstanceIcon :: 172 prop GlobalPropertyPage :: "{C5CB30B4-F115-11d2-84A7-10105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-840B-11d0-A627-1000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop IsContainedIn :: hGPIO prop NoGen :: 1 prop cHandle :: 0 prop cGen :: 1 prop cStruct :: 0 prop cHeaderName :: if self.c54gpio == 1 {"csl_gpio.h"} else {""} prop maxObjs :: 0 prop value :: self.IOMSK_VALUE prop cGenFxnEpilogue :: (if (self.c54gpio == 1) {"%5t\nGPIO_RSET(GPIO, %1d);\n%0t\0, value"} ) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global c54gpio :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "C54x GPIO opened " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 0 } global configGPIO :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Configure Non-multiplexed GPIO " prop JSName :: "gpioConfigure" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") || (GBL.CHIPTYPE == "5401")) prop NoGen :: 1 prop cGen :: 0 prop TabName :: "Settings" prop Set :: (self.configGPIO = $1, if ($1 == 1) {self.c54gpio = 1} else {self.c54gpio = 0}, "ok") } global iodirIOMask :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "IODIR I/O Mask" prop Format :: "0x%04x" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Settings" } global IODIR0_IO :: "Input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "IO0 " prop Enum :: "Input,Output Low,Output High" prop JSName :: "gpioIo0dir" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") || (GBL.CHIPTYPE == "5401")) && (self.configGPIO) prop NoGen :: 1 prop TabName :: "Settings" prop Set :: (self.IODIR0_IO = $1, if (self.IODIR0_IO == "Output Low") {self.iodirIOMask |= (0x0100), self.iodirIOMask &= (0xFFFE)} else {if (self.IODIR0_IO == "Output High") {self.iodirIOMask |= (0x0101)} else {self.iodirIOMask &= (0xFEFE)}}, self.IOMSK_VALUE = self.iodirIOMask, "ok") } global IODIR1_IO :: "Input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "IO1 " prop Enum :: "Input,Output Low,Output High" prop JSName :: "gpioIo1dir" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") || (GBL.CHIPTYPE == "5401")) && (self.configGPIO) prop NoGen :: 1 prop TabName :: "Settings" prop Set :: (self.IODIR1_IO = $1, if (self.IODIR1_IO == "Output Low") {self.iodirIOMask |= (0x0200), self.iodirIOMask &= (0xFFFD)} else {if (self.IODIR1_IO == "Output High") {self.iodirIOMask |= (0x0202)} else {self.iodirIOMask &= (0xFDFD)}}, self.IOMSK_VALUE = self.iodirIOMask, "ok") } global IODIR2_IO :: "Input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "IO2 " prop Enum :: "Input,Output Low,Output High" prop JSName :: "gpioIo2dir" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") || (GBL.CHIPTYPE == "5401")) && (self.configGPIO) prop NoGen :: 1 prop TabName :: "Settings" prop Set :: (self.IODIR2_IO = $1, if (self.IODIR2_IO == "Output Low") {self.iodirIOMask |= (0x0400), self.iodirIOMask &= (0xFFFB)} else {if (self.IODIR2_IO == "Output High") {self.iodirIOMask |= (0x0404)} else {self.iodirIOMask &= (0xFBFB)}}, self.IOMSK_VALUE = self.iodirIOMask, "ok") } global IODIR3_IO :: "Input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "IO3 " prop Enum :: "Input,Output Low,Output High" prop JSName :: "gpioIo3dir" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") || (GBL.CHIPTYPE == "5401")) && (self.configGPIO) prop NoGen :: 1 prop TabName :: "Settings" prop Set :: (self.IODIR3_IO = $1, if (self.IODIR3_IO == "Output Low") {self.iodirIOMask |= (0x0800), self.iodirIOMask &= (0xFFF7)} else {if (self.IODIR3_IO == "Output High") {self.iodirIOMask |= (0x0808)} else {self.iodirIOMask &= (0xF7F7)}}, self.IOMSK_VALUE = self.iodirIOMask, "ok") } global IOMSK_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "IO Mask " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 1 prop cType :: "Uint16" } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } } type MCBSPFOLDER { prop Label :: "MCBSP - Multichannel Buffered Serial Port" prop GlobalIcon :: 159 prop GlobalPropertyPage :: "{B948FB91-52A5-11d4-967C-0051048381B7}" prop GlobalHelpTopic :: 1040 prop IsContainedIn :: CSL prop NoGen :: 1 } type mcbspCfg { isa ObjectMgr prop name :: "MCBSP" prop Label :: "MCBSP Configuration Manager" prop JSName :: "MCBSP" prop GlobalHelpTopic :: 1041 prop InstanceHelpTopic :: 1041 prop GlobalIcon :: 159 prop InstanceIcon :: 160 prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-00105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-0000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop cGen :: 1 prop cStruct :: 1 prop cStructType :: "MCBSP_Config" prop cHeaderName :: if self.gNumOf > 0 {"csl_mcbsp.h"} else {""} prop NoGen :: 1 prop IsContainedIn :: MCBSPFOLDER prop XIOEN_PCR :: (if (self.XIOEN_SETUP == 1) {0x0000} else {0x2000}) prop CLKXM_PCR :: (if (self.CLKSTP_SETUP == "Disable") {if (self.CLKXM1_SETUP == "External") {(self.CLKXM2_SETUP = "Slave", 0x0000)} else {(self.CLKXM2_SETUP = "Master", 0x0200)}} else {if (self.CLKXM2_SETUP == "Slave") {(self.CLKXM1_SETUP = "External", 0x0000)} else {(self.CLKXM1_SETUP = "Internal", 0x0200)}}) prop CLKXP_PCR :: (if (self.CLKXP_SETUP == "Rising Edge") {0x0000} else {0x0002}) prop FSXP_PCR :: (if (self.FSXP_SETUP == "Active High") {0x0000} else {0x0008}) prop DXENA_SUPPORT :: ((GBL.CHIPTYPE == "5410") || (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5420") || (GBL.CHIPTYPE == "5421")) prop DXENA_SPCR1 :: (if (self.DXENA_SETUP == "Enable") {0x0080} else {0x0000}) prop XDATDLY_XCR2 :: (if (self.XDATDLY_SETUP == "0-bit") {0x0000} else {if (self.XDATDLY_SETUP == "1-bit") {0x0001} else {0x0002}}) prop XPHASE_XCR2 :: (if (self.XPHASE_SETUP == "Single-phase") {0x0000} else {0x8000}) prop XWDLEN1_XCR1 :: (if (self.XWDLEN1_SETUP == "12-bits") {0x0020} else {if (self.XWDLEN1_SETUP == "16-bits") {0x0040} else {if (self.XWDLEN1_SETUP == "20-bits") {0x0060} else {if (self.XWDLEN1_SETUP == "24-bits") {0x0080} else {if (self.XWDLEN1_SETUP == "32-bits") {0x00A0} else {0x0000}}}}}) prop XWDLEN2_XCR2 :: (if (self.XWDLEN2_SETUP == "12-bits") {0x0020} else {if (self.XWDLEN2_SETUP == "16-bits") {0x0040} else {if (self.XWDLEN2_SETUP == "20-bits") {0x0060} else {if (self.XWDLEN2_SETUP == "24-bits") {0x0080} else {if (self.XWDLEN2_SETUP == "32-bits") {0x00A0} else {0x0000}}}}}) prop XFRLEN1_XCR1 :: ((self.XFRLEN1_SETUP - 1) << 8) prop XFRLEN2_XCR2 :: ((self.XFRLEN2_SETUP - 1) << 8) prop XSYNCERR_SPCR2 :: (if (self.XSYNCERR_SETUP == "Enable") {0x0008} else {0x0000}) prop XINTM_SPCR2 :: (if (self.XINTM_SETUP == "XRDY") {0x0000} else {if (self.XINTM_SETUP == "End of block/frame") {0x0010} else {if (self.XINTM_SETUP == "New Frame Sync.") {0x0020} else {0x0030}}}) prop FSXM_PCR :: (if (self.FSXM_SETUP == "External") {0x0000} else {0x0800}) prop XFIG_XCR2 :: (if (self.XFIG_SETUP == "Restart Transfer") {0x0000} else {0x0004}) prop XCOMPAND_XCR2 :: (if (self.XCOMPAND_SETUP == "No Companding-MSB First") {0x0000} else {if (self.XCOMPAND_SETUP == "No Companding-LSB First") {0x0008} else {if (self.XCOMPAND_SETUP == "u-Law") {0x0010} else {0x0018}}}) prop RIOEN_PCR :: (if (self.RIOEN_SETUP == 1) {0x0000} else {0x1000}) prop CLKRM_PCR :: (if (self.DLB_SETUP == "Disable") {if (self.CLKRM1_SETUP == "External") {(self.CLKRM2_SETUP = "CLKX Driven", 0x0000)} else {(self.CLKRM2_SETUP = "CLKR as Output", 0x0100)}} else {if (self.CLKRM2_SETUP == "CLKX Driven") {(self.CLKRM1_SETUP = "External", 0x0000)} else {(self.CLKRM1_SETUP = "Internal", 0x0100)}}) prop CLKRP_PCR :: (if (self.CLKRP_SETUP == "Rising Edge") {0x0001} else {0x0000}) prop FSRP_PCR :: (if (self.FSRP_SETUP == "Active High") {0x0000} else {0x0004}) prop RDATDLY_RCR2 :: (if (self.RDATDLY_SETUP == "0-bit") {0x0000} else {if (self.RDATDLY_SETUP == "1-bit") {0x0001} else {0x0002}}) prop RPHASE_RCR2 :: (if (self.RPHASE_SETUP == "Single-phase") {0x0000} else {0x8000}) prop RWDLEN1_RCR1 :: (if (self.RWDLEN1_SETUP == "8-bits") {0x0000} else {if (self.RWDLEN1_SETUP == "12-bits") {0x0020} else {if (self.RWDLEN1_SETUP == "16-bits") {0x0040} else {if (self.RWDLEN1_SETUP == "20-bits") {0x0060} else {if (self.RWDLEN1_SETUP == "24-bits") {0x0080} else {0x00A0}}}}}) prop RWDLEN2_RCR2 :: (if (self.RWDLEN2_SETUP == "8-bits") {0x0000} else {if (self.RWDLEN2_SETUP == "12-bits") {0x0020} else {if (self.RWDLEN2_SETUP == "16-bits") {0x0040} else {if (self.RWDLEN2_SETUP == "20-bits") {0x0060} else {if (self.RWDLEN2_SETUP == "24-bits") {0x0080} else {0x00A0}}}}}) prop RFRLEN1_RCR1 :: ((self.RFRLEN1_SETUP - 1) << 8) prop RFRLEN2_RCR2 :: ((self.RFRLEN2_SETUP - 1) << 8) prop RSYNCERR_SPCR1 :: (if (self.RSYNCERR_SETUP == "Enable") {0x0008} else {0x0000}) prop RINTM_SPCR1 :: (if (self.RINTM_SETUP == "RRDY") {0x0000} else {if (self.RINTM_SETUP == "End of block/frame") {0x0010} else {if (self.RINTM_SETUP == "New Frame Sync.") {0x0020} else {0x0030}}}) prop FSRM_PCR :: (if (self.FSRM_SETUP == "External") {0x0000} else {0x0400}) prop RFIG_RCR2 :: (if (self.RFIG_SETUP == "Restart Transfer") {0x0000} else {0x0004}) prop RJUST_SPCR1 :: (if (self.RJUST_SETUP == "Right-justify/zero-fill") {0x0000} else {if (self.RJUST_SETUP == "Right-justify/sign-extend") {0x2000} else {0x4000}}) prop RCOMPAND_RCR2 :: (if (self.RCOMPAND_SETUP == "No Companding-MSB First") {0x0000} else {if (self.RCOMPAND_SETUP == "No Companding-LSB First") {0x0008} else {if (self.RCOMPAND_SETUP == "u-Law") {0x0010} else {0x0018}}}) prop FREE_SOFT_SPCR2 :: (if (self.FREE_SOFT_SETUP == "Stop Immediately") {0x0000} else {if (self.FREE_SOFT_SETUP == "Stop After Current Word") {0x0100} else {0x0200}}) prop CLKSTP_SPCR1 :: (if (self.CLKSTP_SETUP == "Disable") {0x0000} else {if (self.CLKSTP_SETUP == "Rising Edge w/o Delay") {(self.CLKXP_SETUP = "Rising Edge", 0x1000)} else {if (self.CLKSTP_SETUP == "Falling Edge w/o Delay") {(self.CLKXP_SETUP = "Falling Edge", 0x1000)} else {if (self.CLKSTP_SETUP == "Rising Edge w/ Delay") {(self.CLKXP_SETUP = "Rising Edge", 0x1800)} else {(self.CLKXP_SETUP = "Falling Edge", 0x1800)}}}}) prop DLB_SPCR1 :: (if (self.DLB_SETUP == "Enable") {0x8000} else {0x0000}) prop ABIS_SPCR1 :: (if (self.ABIS_SETUP == "Enable") {0x0040} else {0x0000}) prop CLKS_SUPPORT :: ((GBL.CHIPTYPE == "5410")) prop SCLKME_SUPPORT :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5401")) prop CLKSM_SRGR2 :: (if ((self.CLKSM_SETUP == "CPU Clock") || (self.CLKSM_SETUP == "BCLKX Pin")) {0x2000} else {0x0000}) prop SCLKME_PCR :: (self.SCLKME_SETUP) prop GSYNC_SRGR2 :: (if (self.GSYNC_SETUP == "Enable") {0x8000} else {0x0000}) prop CLKSP_SRGR2 :: (if (self.CLKSP_SETUP == "Rising Edge of CLKS") {0x0000} else {0x4000}) prop FSGM_SRGR2 :: (if (self.FSGM_SETUP == "Enable") {0x1000} else {0x0000}) prop FWID_SRGR1 :: ((self.FWID_SETUP - 1) << 8) prop CLKGDV_SRGR1 :: (self.CLKGDV_SETUP - 1) prop FPER_SRGR2 :: (self.FPER_SETUP - 1) prop MCR1_VALUE_update :: (self.RPBBLK_MCR1() | self.RPABLK_MCR1() | self.RMCM_MCR1() | self.RMCME_MCR1()) prop MCR2_VALUE_update :: (self.XPBBLK_MCR2() | self.XPABLK_MCR2() | self.XMCM_MCR2() | self.XMCME_MCR2()) prop PCR_VALUE_update :: (self.XIOEN_PCR() | self.RIOEN_PCR() | self.FSXM_PCR() | self.FSRM_PCR() | self.CLKXM_PCR() | self.CLKRM_PCR() | self.FSXP_PCR() | self.FSRP_PCR() | self.CLKXP_PCR() | self.CLKRP_PCR() | self.SCLKME_PCR()) prop RCR1_VALUE_update :: (self.RFRLEN1_RCR1() | self.RWDLEN1_RCR1()) prop RCR2_VALUE_update :: (self.RDATDLY_RCR2() | self.RPHASE_RCR2() | self.RFRLEN2_RCR2() | self.RWDLEN2_RCR2() | self.RFIG_RCR2() | self.RCOMPAND_RCR2()) prop SPCR1_VALUE_update :: (self.DLB_SPCR1() | self.RJUST_SPCR1() | self.CLKSTP_SPCR1() | self.DXENA_SPCR1() | self.ABIS_SPCR1() | self.RINTM_SPCR1() | self.RSYNCERR_SPCR1()) prop SPCR2_VALUE_update :: (self.FREE_SOFT_SPCR2() | self.XSYNCERR_SPCR2() | self.XINTM_SPCR2()) prop SRGR1_VALUE_update :: (self.FWID_SRGR1() | self.CLKGDV_SRGR1()) prop SRGR2_VALUE_update :: (self.GSYNC_SRGR2() | self.CLKSP_SRGR2() | self.CLKSM_SRGR2() | self.FSGM_SRGR2() | self.FPER_SRGR2()) prop XCR1_VALUE_update :: (self.XFRLEN1_XCR1() | self.XWDLEN1_XCR1()) prop XCR2_VALUE_update :: (self.XPHASE_XCR2() | self.XFRLEN2_XCR2() | self.XWDLEN2_XCR2() | self.XCOMPAND_XCR2() | self.XFIG_XCR2() | self.XDATDLY_XCR2()) prop PCR_SETUP_update :: (self.XIOEN_SETUP = if ($1 & 0x2000) {0} else {1}, self.XIOEN2_SETUP = if ($1 & 0x2000) {0} else {1}, self.RIOEN_SETUP = if ($1 & 0x1000) {0} else {1}, self.RIOEN2_SETUP = if ($1 & 0x1000) {0} else {1}, if (self.XIOEN_SETUP == 0) {self.CLKX_IO = if ($1 & 0x0200) {"Output"} else {"Input"}, self.FSX_IO = if ($1 & 0x0800) {"Output"} else {"Input"}, if (self.RIOEN_SETUP == 0) {self.CLKR_IO = if ($1 & 0x0100) {"Output"} else {"Input"}, self.FSR_IO = if ($1 & 0x0400) {"Output"} else {"Input"}} } else {self.FSXM_SETUP = if ($1 & 0x0800) {"Sample Rate Gen"} else {"External"}, self.FSRM_SETUP = if ($1 & 0x0400) {"Sample Rate Gen"} else {"External"}, self.CLKXM1_SETUP = if ($1 & 0x0200) {"Internal"} else {"External"}, self.CLKXM2_SETUP = if ($1 & 0x0200) {"Master"} else {"Slave"}, self.CLKRM1_SETUP = if ($1 & 0x0100) {"Internal"} else {"External"}, self.CLKRM2_SETUP = if ($1 & 0x0100) {"CLKR as Output"} else {"CLKX Driven"}, self.FSXP_SETUP = if ($1 & 0x0008) {"Active Low"} else {"Active High"}, self.FSRP_SETUP = if ($1 & 0x0004) {"Active Low"} else {"Active High"}, self.CLKXP_SETUP = if ($1 & 0x0002) {"Falling Edge"} else {"Rising Edge"}, self.CLKRP_SETUP = if ($1 & 0x0001) {"Rising Edge"} else {"Falling Edge"}, self.SCLKME_SETUP = ($1 & 0x0080), self.CLKSM_SETUP = ($a = self.SRGR2_VALUE & 0x2000, if (($a == 0x2000) && (self.SCLKME_SETUP == 0x0080) && (self.SCLKME_SUPPORT)) {"BCLKX Pin"} else {if (($a == 0x2000) && (self.SCLKME_SETUP == 0x0080) && (!(self.SCLKME_SUPPORT))) {"CPU Clock"} else {if (($a == 0x2000) && (self.SCLKME_SETUP == 0x0000)) {"CPU Clock"} else {if (($a == 0x0000) && (self.SCLKME_SETUP == 0x0080) && (self.SCLKME_SUPPORT)) {"BCLKR Pin"} else {if (($a == 0x0000) && (self.SCLKME_SETUP == 0x0080) && (!(self.SCLKME_SUPPORT))) {"CPU Clock"} else {if (($a == 0x0000) && (self.SCLKME_SETUP == 0x0000) && (self.CLKS_SUPPORT)) {"CLKS Pin"} else {"CPU Clock"}}}}}})}) prop RCR1_SETUP_update :: (self.RFRLEN1_SETUP = ((($1 & 0x7F00) >> 8) + 1), self.RWDLEN1_SETUP = ($a = $1 & 0x00E0, if ($a == 0x0000) {"8-bits"} else {if ($a == 0x0020) {"12-bits"} else {if ($a == 0x0040) {"16-bits"} else {if ($a == 0x0060) {"20-bits"} else {if ($a == 0x0080) {"24-bits"} else {"32-bits"}}}}})) prop RCR2_SETUP_update :: (self.RPHASE_SETUP = if ($1 & 0x8000) {"Dual-phase"} else {"Single-phase"}, self.RFRLEN2_SETUP = ((($1 & 0x7F00) >> 8) + 1), self.RWDLEN2_SETUP = ($a = $1 & 0x00E0, if ($a == 0x0000) {"8-bits"} else {if ($a == 0x0020) {"12-bits"} else {if ($a == 0x0040) {"16-bits"} else {if ($a == 0x0060) {"20-bits"} else {if ($a == 0x0080) {"24-bits"} else {"32-bits"}}}}}), self.RFIG_SETUP = if ($1 & 0x0004) {"Ignore"} else {"Restart Transfer"}, self.RDATDLY_SETUP = ($a = $1 & 0x0003, if ($a == 0x0000) {"0-bit"} else {if ($a == 0x0001) {"1-bit"} else {"2-bit"}}), self.RCOMPAND_SETUP = ($a = $1 & 0x0018, if ($a == 0x0000) {"No Companding-MSB First"} else {if ($a == 0x0008) {"No Companding-LSB First"} else {if ($a == 0x0010) {"u-Law"} else {"A-Law"}}})) prop SPCR1_SETUP_update :: (self.DLB_SETUP = if ($1 & 0x8000) {"Enable"} else {"Disable"}, self.RJUST_SETUP = ($a = $1 & 0x6000, if ($a == 0x0000) {"Right-justify/zero-fill"} else {if ($a == 0x2000) {"Right-justify/sign-extend"} else {"Left-justify/zero-fill"}}), self.DXENA_SETUP = if ($1 & 0x0080) {"Enable"} else {"Disable"}, self.ABIS_SETUP = if ($1 & 0x0040) {"Enable"} else {"Disable"}, self.RINTM_SETUP = ($a = $1 & 0x0030, if ($a == 0x0000) {"RRDY"} else {if ($a == 0x0010) {"End of block/frame"} else {if ($a == 0x0020) {"New Frame Sync."} else {"RSYNCERR"}}}), self.RSYNCERR_SETUP = if ($1 & 0x0008) {"Enable"} else {"Disable"}, self.CLKSTP_SETUP = ($a = $1 & 0x1800, if ($a == 0x0000) {"Disable"} else {if (self.CLKXP_SETUP == "Rising Edge") {if ($a == 0x1000) {"Rising Edge w/o Delay"} else {"Rising Edge w/ Delay"}} else {if ($a == 0x1000) {"Falling Edge w/o Delay"} else {"Falling Edge w/ Delay"}}})) prop SPCR2_SETUP_update :: (self.FREE_SOFT_SETUP = ($a = $1 & 0x0300, if ($a == 0x0000) {"Stop Immediately"} else {if ($a == 0x0100) {"Stop After Current Word"} else {if ($a == 0x0200) {"Do Not Stop"} else {"Do Not Stop"}}}), self.XINTM_SETUP = ($a = $1 & 0x0030, if ($a == 0x0000) {"XRDY"} else {if ($a == 0x0010) {"End of block/frame"} else {if ($a == 0x0020) {"New Frame Sync."} else {"XSYNCERR"}}}), self.XSYNCERR_SETUP = if ($1 & 0x0008) {"Enable"} else {"Disable"}) prop SRGR1_SETUP_update :: (self.FWID_SETUP = ((($1 & 0xFF00) >> 8) + 1), self.CLKGDV_SETUP = (($1 & 0x00FF) + 1)) prop SRGR2_SETUP_update :: (self.GSYNC_SETUP = if ($1 & 0x8000) {"Enable"} else {"Disable"}, self.CLKSP_SETUP = if ($1 & 0x4000) {"Falling Edge of CLKS"} else {"Rising Edge of CLKS"}, self.CLKSM_SETUP = ($a = $1 & 0x2000, if (($a == 0x2000) && (self.SCLKME_SETUP == 0x0080) && (self.SCLKME_SUPPORT)) {"BCLKX Pin"} else {if (($a == 0x2000) && (self.SCLKME_SETUP == 0x0080) && (!(self.SCLKME_SUPPORT))) {"CPU Clock"} else {if (($a == 0x2000) && (self.SCLKME_SETUP == 0x0000)) {"CPU Clock"} else {if (($a == 0x0000) && (self.SCLKME_SETUP == 0x0080) && (self.SCLKME_SUPPORT)) {"BCLKR Pin"} else {if (($a == 0x0000) && (self.SCLKME_SETUP == 0x0080) && (!(self.SCLKME_SUPPORT))) {"CPU Clock"} else {if (($a == 0x0000) && (self.SCLKME_SETUP == 0x0000) && (self.CLKS_SUPPORT)) {"CLKS Pin"} else {"CPU Clock"}}}}}}), self.FSGM_SETUP = if ($1 & 0x1000) {"Enable"} else {"Disable"}, self.FPER_SETUP = (($1 & 0x0FFF) + 1)) prop XCR1_SETUP_update :: (self.XFRLEN1_SETUP = ((($1 & 0x7F00) >> 8) + 1), self.XWDLEN1_SETUP = ($a = $1 & 0x00E0, if ($a == 0x0020) {"12-bits"} else {if ($a == 0x0040) {"16-bits"} else {if ($a == 0x0060) {"20-bits"} else {if ($a == 0x0080) {"24-bits"} else {if ($a == 0x00A0) {"32-bits"} else {"8-bits"}}}}})) prop XCR2_SETUP_update :: (self.XPHASE_SETUP = if ($1 & 0x8000) {"Dual-phase"} else {"Single-phase"}, self.XFRLEN2_SETUP = ((($1 & 0x7F00) >> 8) + 1), self.XWDLEN2_SETUP = ($a = ($1 & 0x00E0), if ($a == 0x0020) {"12-bits"} else {if ($a == 0x0040) {"16-bits"} else {if ($a == 0x0060) {"20-bits"} else {if ($a == 0x0080) {"24-bits"} else {if ($a == 0x00A0) {"32-bits"} else {"8-bits"}}}}}), self.XCOMPAND_SETUP = ($a = $1 & 0x0018, if ($a == 0x0008) {"No Companding-LSB First"} else {if ($a == 0x0010) {"u-Law"} else {if ($a == 0x0018) {"A-Law"} else {"No Companding-MSB First"}}}), self.XFIG_SETUP = if ($1 & 0x0004) {"Ignore"} else {"Restart Transfer"}, self.XDATDLY_SETUP = ($a = $1 & 0x0003, if ($a == 0x0000) {"0-bit"} else {if ($a == 0x0001) {"1-bit"} else {"2-bit"}})) prop MCR1_SETUP_update :: (self.RPBBLK_SETUP = ($a = $1 & 0x0180, if ($a == 0x0000) {"Block 1. Channel 16-31"} else {if ($a == 0x0080) {"Block 3. Channel 48-63"} else {if ($a == 0x0100) {"Block 5. Channel 80-95"} else {"Block 7. Channel 112-127"}}}), self.RPABLK_SETUP = ($a = $1 & 0x0060, if ($a == 0x0000) {"Block 0. Channel 0-15"} else {if ($a == 0x0020) {"Block 2. Channel 32-47"} else {if ($a == 0x0040) {"Block 4. Channel 64-79"} else {"Block 6. Channel 96-111"}}}), self.RMCM_RMCME_SETUP = ($a = $1 & 0x0201, if ($a == 0x0000) {"All 128 Channels"} else {if ($a == 0x0001) {"2 Blocks(Up to 16Ch./Blk.)"} else {"Any of 128 Ch."}})) prop MCR2_SETUP_update :: (self.XPABLK_SETUP = ($a = $1 & 0x0180, if ($a == 0x0000) {"Block 0. Channel 0-15"} else {if ($a == 0x0080) {"Block 2. Channel 32-47"} else {if ($a == 0x0100) {"Block 4. Channel 64-79"} else {"Block 6. Channel 96-111"}}}), self.XPBBLK_SETUP = ($a = $1 & 0x0060, if ($a == 0x0000) {"Block 1. Channel 16-31"} else {if ($a == 0x0020) {"Block 3. Channel 48-63"} else {if ($a == 0x0040) {"Block 5. Channel 80-95"} else {"Block 7. Channel 112-127"}}}), self.XMCM_XMCME_SETUP = ($a = $1 & 0x0203, if ($a == 0x0000) {"All 128 Channels"} else {if ($a == 0x0001) {"2 Blocks(Up to 16Ch./Blk. - XMCM=01)"} else {if ($a == 0x0002) {"2 Blocks(Up to 16Ch./Blk. - XMCM=10)"} else {if ($a == 0x0003) {"Symmetric Transmit and Receive"} else {"Any of 128 Ch."}}}})) prop RMCM_MCR1 :: (if (self.RMCM_RMCME_SETUP == "All 128 Channels") {0x0000} else {if (self.RMCM_RMCME_SETUP == "2 Blocks(Up to 16Ch./Blk.)") {0x0001} else {0x0000}}) prop RMCME_MCR1 :: (if (self.RMCM_RMCME_SETUP == "Any of 128 Ch.") {0x0200} else {0x0000}) prop RPABLK_MCR1 :: (if (self.RPABLK_SETUP == "Block 0. Channel 0-15") {0x0000} else {if (self.RPABLK_SETUP == "Block 2. Channel 32-47") {0x0020} else {if (self.RPABLK_SETUP == "Block 4. Channel 64-79") {0x0040} else {0x0060}}}) prop RPBBLK_MCR1 :: (if (self.RPBBLK_SETUP == "Block 1. Channel 16-31") {0x0000} else {if (self.RPBBLK_SETUP == "Block 3. Channel 48-63") {0x0080} else {if (self.RPBBLK_SETUP == "Block 5. Channel 80-95") {0x0100} else {0x0180}}}) prop XMCM_MCR2 :: (if (self.XMCM_XMCME_SETUP == "All 128 Channels") {0x0000} else {if (self.XMCM_XMCME_SETUP == "2 Blocks(Up to 16Ch./Blk. - XMCM=01)") {0x0001} else {if (self.XMCM_XMCME_SETUP == "2 Blocks(Up to 16Ch./Blk. - XMCM=10)") {0x0002} else {if (self.XMCM_XMCME_SETUP == "Symmetric Transmit and Receive") {0x0003} else {0x0000}}}}) prop XMCME_MCR2 :: (if (self.XMCM_XMCME_SETUP == "Any of 128 Ch.") {0x0200} else {0x0000}) prop XPABLK_MCR2 :: (if (self.XPABLK_SETUP == "Block 0. Channel 0-15") {0x0000} else {if (self.XPABLK_SETUP == "Block 2. Channel 32-47") {0x0080} else {if (self.XPABLK_SETUP == "Block 4. Channel 64-79") {0x0100} else {0x0180}}}) prop XPBBLK_MCR2 :: (if (self.XPBBLK_SETUP == "Block 1. Channel 16-31") {0x0000} else {if (self.XPBBLK_SETUP == "Block 3. Channel 48-63") {0x0020} else {if (self.XPBBLK_SETUP == "Block 5. Channel 80-95") {0x0040} else {0x0060}}}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst XIOEN_SETUP :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Configure DX, FSX, and CLKX as Serial Port Pins " prop JSName :: "mcbspPcrXioen" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "General" prop Set :: (self.XIOEN_SETUP = $1, self.XIOEN2_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), self.PCR_VALUE &= 0xFAFF, self.FSX = "Input", self.CLKX = "Input", "ok") } inst XIOEN2_SETUP :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Configure DX, FSX, and CLKX as Serial Port Pins " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "General" prop Set :: (self.XIOEN2_SETUP = $1, self.XIOEN_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst CLKXM1_SETUP :: "External" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "External,Internal" prop Label :: "Clock Mode (CLKXM) " prop JSName :: "mcbspPcrClkXm" prop Visible :: 1 prop Writable :: ((self.CLKSTP_SETUP == "Disable") && (self.XIOEN_SETUP == 1)) prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.CLKXM1_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst CLKXM2_SETUP :: "Slave" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Slave,Master" prop Label :: "SPI Clock Mode (CLKXM) " prop JSName :: "mcbspPcrClkXmSpi" prop Visible :: 1 prop Writable :: ((self.CLKSTP_SETUP != "Disable") && (self.XIOEN_SETUP == 1)) prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.CLKXM2_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst CLKXP_SETUP :: "Rising Edge" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Rising Edge,Falling Edge" prop Label :: "Clock Polarity (CLKXP) " prop JSName :: "mcbspPcrClkxp" prop Visible :: 1 prop Writable :: ((self.CLKSTP_SETUP == "Disable") && (self.XIOEN_SETUP == 1)) prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.CLKXP_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst FSXP_SETUP :: "Active High" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Active High,Active Low" prop Label :: "Frame-Sync Polarity (FSXP) " prop JSName :: "mcbspPcrFsxp" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.FSXP_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst DXENA_SETUP :: "Disable" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Disable,Enable" prop Label :: "DX Pin Delay (DXENA) " prop JSName :: "mcbspSpcr1Dxena" prop Visible :: 1 prop Writable :: ((self.XIOEN_SETUP == 1) && (self.DXENA_SUPPORT)) prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.DXENA_SETUP = $1, self.SPCR1_VALUE = self.SPCR1_VALUE_update(), "ok") } inst XDATDLY_SETUP :: "0-bit" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "0-bit,1-bit,2-bit" prop Label :: "Transmit Delay (XDATDLY) " prop JSName :: "mcbspXcr2Xdatdly" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.XDATDLY_SETUP = $1, self.XCR2_VALUE = self.XCR2_VALUE_update(), "ok") } inst XPHASE_SETUP :: "Single-phase" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Single-phase,Dual-phase" prop Label :: "Phase (XPHASE) " prop JSName :: "mcbspXcr2Xphase" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Lengths" prop Set :: (self.XPHASE_SETUP = $1, self.XCR2_VALUE = self.XCR2_VALUE_update(), "ok") } inst XWDLEN1_SETUP :: "8-bits" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "8-bits,12-bits,16-bits,20-bits,24-bits,32-bits" prop Label :: "Word Length Phase1 (XWDLEN1) " prop JSName :: "mcbspXcr1Xwdlen1" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Lengths" prop Set :: (self.XWDLEN1_SETUP = $1, self.XCR1_VALUE = self.XCR1_VALUE_update(), "ok") } inst XWDLEN2_SETUP :: "8-bits" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "8-bits,12-bits,16-bits,20-bits,24-bits,32-bits" prop Label :: "Word Length Phase2 (XWDLEN2) " prop JSName :: "mcbspXcr2Xwdlen2" prop Visible :: 1 prop Writable :: ((self.XPHASE_SETUP == "Dual-phase") && (self.XIOEN_SETUP == 1)) prop NoGen :: 1 prop TabName :: "Transmit Lengths" prop Set :: (self.XWDLEN2_SETUP = $1, self.XCR2_VALUE = self.XCR2_VALUE_update(), "ok") } inst XFRLEN1_SETUP :: 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "Words/Frame Phase1 (XFRLEN1) " prop JSName :: "mcbspXcr1Xfrlen1" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Lengths" prop Set :: (if (($1 <= 128) && ($1 >= 1)) {self.XFRLEN1_SETUP = $1, self.XCR1_VALUE = self.XCR1_VALUE_update(), "ok"} else {"Invalid value"}) } inst XFRLEN2_SETUP :: 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "Words/Frame Phase2 (XFRLEN2) " prop JSName :: "mcbspXcr1Xfrlen2" prop Visible :: 1 prop Writable :: ((self.XPHASE_SETUP == "Dual-phase") && (self.XIOEN_SETUP == 1)) prop NoGen :: 1 prop TabName :: "Transmit Lengths" prop Set :: (if (($1 <= 128) && ($1 >= 1)) {self.XFRLEN2_SETUP = $1, self.XCR2_VALUE = self.XCR2_VALUE_update(), "ok"} else {"Invalid value"}) } inst XSYNCERR_SETUP :: "Disable" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Disable,Enable" prop Label :: "Detect Sync Error (XSYNCERR) " prop JSName :: "mcbspSpcr2Xsyncerr" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.XSYNCERR_SETUP = $1, self.SPCR2_VALUE = self.SPCR2_VALUE_update(), "ok") } inst XINTM_SETUP :: "XRDY" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "XRDY,End of block/frame,New Frame Sync.,XSYNCERR" prop Label :: "Interrupt Mode (XINTM) " prop JSName :: "mcbspSpcr2Xintm" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.XINTM_SETUP = $1, self.SPCR2_VALUE = self.SPCR2_VALUE_update(), "ok") } inst FSXM_SETUP :: "External" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "External,Sample Rate Gen" prop Label :: "Frame-Sync Mode (FSXM) " prop Visible :: 0 prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.FSXM_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst XFIG_SETUP :: "Restart Transfer" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Restart Transfer,Ignore" prop Label :: "Early Frame Sync Response (XFIG) " prop JSName :: "mcbspXcr2Xfig" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.XFIG_SETUP = $1, self.XCR2_VALUE = self.XCR2_VALUE_update(), "ok") } inst XCOMPAND_SETUP :: "No Companding-MSB First" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "No Companding-MSB First,No Companding-LSB First,u-Law,A-Law" prop Label :: "Companding (XCOMPAND) " prop JSName :: "mcbspXcr2Xcompand" prop Visible :: 1 prop Writable :: ((self.XIOEN_SETUP == 1) && (self.XWDLEN1_SETUP == "8-bits") && ((self.XWDLEN2_SETUP == "8-bits") || !(self.XPHASE_SETUP == "Dual-phase"))) prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.XCOMPAND_SETUP = $1, self.XCR2_VALUE = self.XCR2_VALUE_update(), "ok") } inst FSXM_FSGM_SETUP :: "External" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "External,DXR[1/2]-to-XSR[1/2] Copy,FSG Signal" prop Label :: "Transmit Frame-Sync Source " prop JSName :: "mcbspPcrFsxm" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Modes" prop Set :: (self.FSXM_FSGM_SETUP = $1, if ($1 == "External") {self.FSXM_SETUP = "External", self.FSGM_SETUP = "Disable"} else {if ($1 == "DXR[1/2]-to-XSR[1/2] Copy") {self.FSXM_SETUP = "Sample Rate Gen", self.FSGM_SETUP = "Disable"} else {self.FSXM_SETUP = "Sample Rate Gen", self.FSGM_SETUP = "Enable"}}, self.SRGR2_VALUE = self.SRGR2_VALUE_update(), self.PCR_VALUE = self.PCR_VALUE_update, "ok") } inst RIOEN_SETUP :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Configure DR, FSR, CLKR, and CLKS as Serial Port Pins " prop JSName :: "mcbspPcrRioen" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "General" prop Set :: (self.RIOEN_SETUP = $1, self.RIOEN2_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), self.PCR_VALUE &= 0xF5FF, self.FSR = "Input", self.CLKR = "Input", "ok") } inst RIOEN2_SETUP :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Configure DR, FSR, CLKR, and CLKS as Serial Port Pins " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "General" prop Set :: (self.RIOEN_SETUP = $1, self.RIOEN2_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst CLKRM1_SETUP :: "External" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "External,Internal" prop Label :: "Clock Mode [DLB = 0] (CLKRM) " prop JSName :: "mcbspPcrClkrm" prop Visible :: 1 prop Writable :: ((self.DLB_SETUP == "Disable") && (self.RIOEN_SETUP == 1)) prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.CLKRM1_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst CLKRM2_SETUP :: "CLKX Driven" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "CLKX Driven,CLKR as Output" prop Label :: "Clock Mode [DLB = 1] (CLKRM) " prop JSName :: "mcbspPcrClkrmDlb" prop Visible :: 1 prop Writable :: ((self.DLB_SETUP == "Enable") && (self.RIOEN_SETUP == 1)) prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.CLKRM2_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst CLKRP_SETUP :: "Falling Edge" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Rising Edge,Falling Edge" prop Label :: "Clock Polarity (CLKRP) " prop JSName :: "mcbspPcrClkrp" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.CLKRP_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst FSRP_SETUP :: "Active High" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Active High,Active Low" prop Label :: "Frame-Sync Polarity (FSRP) " prop JSName :: "mcbspPcrFsrp" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.FSRP_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst RDATDLY_SETUP :: "0-bit" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "0-bit,1-bit,2-bit" prop Label :: "Receive Delay (RDATDLY) " prop JSName :: "mcbspRcr2Rdatdly" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.RDATDLY_SETUP = $1, self.RCR2_VALUE = self.RCR2_VALUE_update(), "ok") } inst RPHASE_SETUP :: "Single-phase" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Single-phase,Dual-phase" prop Label :: "Phases (RPHASE) " prop JSName :: "mcbspRcr2Rphase" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Lengths" prop Set :: (self.RPHASE_SETUP = $1, self.RCR2_VALUE = self.RCR2_VALUE_update(), "ok") } inst RWDLEN1_SETUP :: "8-bits" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "8-bits,12-bits,16-bits,20-bits,24-bits,32-bits" prop Label :: "Word Length Phase1 (RWDLEN1) " prop JSName :: "mcbspRcr1Rwdlen1" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Lengths" prop Set :: (self.RWDLEN1_SETUP = $1, self.RCR1_VALUE = self.RCR1_VALUE_update(), "ok") } inst RWDLEN2_SETUP :: "8-bits" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "8-bits,12-bits,16-bits,20-bits,24-bits,32-bits" prop Label :: "Word Length Phase2 (RWDLEN2) " prop JSName :: "mcbspRcr2Rwdlen2" prop Visible :: 1 prop Writable :: ((self.RPHASE_SETUP == "Dual-phase") && (self.RIOEN_SETUP == 1)) prop NoGen :: 1 prop TabName :: "Receive Lengths" prop Set :: (self.RWDLEN2_SETUP = $1, self.RCR2_VALUE = self.RCR2_VALUE_update(), "ok") } inst RFRLEN1_SETUP :: 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "Words/Frame Phase1 (RFRLEN1) " prop JSName :: "mcbspRcr1Rfrlen1" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Lengths" prop Set :: (if (($1 <= 128) && ($1 >= 1)) {self.RFRLEN1_SETUP = $1, self.RCR1_VALUE = self.RCR1_VALUE_update(), "ok"} else {"Invalid value"}) } inst RFRLEN2_SETUP :: 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "Words/Frame Phase2 (RFRLEN2) " prop JSName :: "mcbspRcr2Rfrlen2" prop Visible :: 1 prop Writable :: ((self.RPHASE_SETUP == "Dual-phase") && (self.RIOEN_SETUP == 1)) prop NoGen :: 1 prop TabName :: "Receive Lengths" prop Set :: (if (($1 <= 128) && ($1 >= 1)) {self.RFRLEN2_SETUP = $1, self.RCR2_VALUE = self.RCR2_VALUE_update(), "ok"} else {"Invalid value"}) } inst RSYNCERR_SETUP :: "Disable" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Disable,Enable" prop Label :: "Detect Sync Error (RSYNCERR) " prop JSName :: "mcbspSpcr1Rsyncerr" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.RSYNCERR_SETUP = $1, self.SPCR1_VALUE = self.SPCR1_VALUE_update(), "ok") } inst RINTM_SETUP :: "RRDY" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "RRDY,End of block/frame,New Frame Sync.,RSYNCERR" prop Label :: "Interrupt Mode (RINTM) " prop JSName :: "mcbspSpcr1Rintm" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.RINTM_SETUP = $1, self.SPCR1_VALUE = self.SPCR1_VALUE_update(), "ok") } inst FSRM_SETUP :: "External" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "External,Sample Rate Gen" prop Label :: "Frame-Sync Mode (FSRM) " prop JSName :: "mcbspPcrFsrm" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.FSRM_SETUP = $1, self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst RFIG_SETUP :: "Restart Transfer" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Restart Transfer,Ignore" prop Label :: "Early Frame Sync Response (RFIG) " prop JSName :: "mcbspRcr2Rfig" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.RFIG_SETUP = $1, self.RCR2_VALUE = self.RCR2_VALUE_update(), "ok") } inst RJUST_SETUP :: "Right-justify/zero-fill" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Right-justify/zero-fill,Right-justify/sign-extend,Left-justify/zero-fill" prop Label :: "Sign-Ext & Justification (RJUST) " prop JSName :: "mcbspSpcr1Rjust" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.RJUST_SETUP = $1, self.SPCR1_VALUE = self.SPCR1_VALUE_update(), "ok") } inst RCOMPAND_SETUP :: "No Companding-MSB First" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "No Companding-MSB First,No Companding-LSB First,u-Law,A-Law" prop Label :: "Companding (RCOMPAND) " prop JSName :: "mcbspRcr2Rcompand" prop Visible :: 1 prop Writable :: ((self.RIOEN_SETUP == 1) && (self.RWDLEN1_SETUP == "8-bits") && ((self.RWDLEN2_SETUP == "8-bits") || !(self.RPHASE_SETUP == "Dual-phase"))) prop NoGen :: 1 prop TabName :: "Receive Modes" prop Set :: (self.RCOMPAND_SETUP = $1, self.RCR2_VALUE = self.RCR2_VALUE_update(), "ok") } inst FREE_SOFT_SETUP :: "Stop Immediately" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Stop Immediately,Stop After Current Word,Do Not Stop" prop Label :: "Breakpoint Emulation " prop JSName :: "mcbspSpcr2Free" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "General" prop Set :: (self.FREE_SOFT_SETUP = $1, self.SPCR2_VALUE = self.SPCR2_VALUE_update(), "ok") } inst CLKSTP_SETUP :: "Disable" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Disable,Rising Edge w/o Delay,Falling Edge w/o Delay,Rising Edge w/ Delay,Falling Edge w/ Delay" prop Label :: "SPI Mode (CLKSTP) " prop JSName :: "mcbspSpcr1Clkstp" prop Visible :: 1 prop Writable :: self.ABIS_SETUP == "Disable" prop NoGen :: 1 prop TabName :: "General" prop Set :: (self.CLKSTP_SETUP = $1, self.SPCR1_VALUE = self.SPCR1_VALUE_update(), self.PCR_VALUE = self.PCR_VALUE_update(), "ok") } inst DLB_SETUP :: "Disable" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Disable,Enable" prop Label :: "Digital Loop Back (DLB) " prop JSName :: "mcbspSpcr1Dlb" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "General" prop Set :: (self.DLB_SETUP = $1, self.SPCR1_VALUE = self.SPCR1_VALUE_update(), "ok") } inst ABIS_SETUP :: "Disable" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Disable,Enable" prop Label :: "A-Bis (ABIS) " prop JSName :: "mcbspSpcr1Abis" prop Visible :: 1 prop Writable :: ((self.CLKSTP_SETUP == "Disable") && ((GBL.CHIPTYPE == "5410") || (GBL.CHIPTYPE == "5416"))) prop NoGen :: 1 prop TabName :: "General" prop Set :: (self.ABIS_SETUP = $1, self.SPCR1_VALUE = self.SPCR1_VALUE_update(), "ok") } inst GRST_SETUP :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Sample Rate Generator Enable " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Sample-Rate Gen" prop Set :: (self.GRST_SETUP = $1, "ok") } inst CLKSM_SETUP :: "CLKS Pin" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "CLKS Pin,CPU Clock,BCLKR Pin,BCLKX Pin" prop Label :: "Generator Clock Source (CLKSM/SCLKME) " prop JSName :: "mcbspSrgr2Clksm" prop Visible :: 1 prop Writable :: ((self.GRST_SETUP == 1) && ((self.XIOEN_SETUP == 1) || (self.RIOEN_SETUP == 1))) prop NoGen :: 1 prop TabName :: "Sample-Rate Gen" prop Set :: ($a = 0, if ($1 == "CLKS Pin") {if (self.CLKS_SUPPORT()) {(self.CLKSM_SETUP = $1)} else {(self.CLKSM_SETUP = "CPU Clock", self.SCLKME_SETUP = 0x0000, $a = 1)}} else {if (($1 == "BCLKX Pin") || ($1 == "BCLKR Pin")) {if (self.SCLKME_SUPPORT()) {(self.SCLKME_SETUP = 0x0080, self.CLKSM_SETUP = $1)} else {(self.CLKSM_SETUP = "CPU Clock", self.SCLKME_SETUP = 0x0000, $a = 1)}} else {self.CLKSM_SETUP = $1, self.SCLKME_SETUP = 0x0000}}, self.PCR_VALUE = self.PCR_VALUE_update(), self.SRGR2_VALUE = self.SRGR2_VALUE_update(), if ($a == 1) {("Option not Available on this Device")} else {"ok"}) } inst SCLKME_SETUP :: 0x0000 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "0x0000,0x0080" prop Label :: "SCLKME(NOT visible) " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Sample-Rate Gen" } inst GSYNC_SETUP :: "Disable" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Disable,Enable" prop Label :: "Clock Synchronization With CLKS Pin (GSYNC) " prop JSName :: "mcbspSrgr2Gsync" prop Visible :: 1 prop Writable :: ((self.CLKSM_SETUP == "CLKS Pin") && (self.GRST_SETUP == 1) && ((self.XIOEN_SETUP == 1) || (self.RIOEN_SETUP == 1))) prop NoGen :: 1 prop TabName :: "Sample-Rate Gen" prop Set :: (self.GSYNC_SETUP = $1, self.SRGR2_VALUE = self.SRGR2_VALUE_update(), "ok") } inst CLKSP_SETUP :: "Rising Edge of CLKS" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Rising Edge of CLKS,Falling Edge of CLKS" prop Label :: "CLKS Polarity Clock Edge (CLKSP) " prop JSName :: "mcbspSrgr2Clksp" prop Visible :: 1 prop Writable :: ((self.CLKSM_SETUP == "CLKS Pin") && (self.GRST_SETUP == 1) && ((self.XIOEN_SETUP == 1) || (self.RIOEN_SETUP == 1))) prop NoGen :: 1 prop TabName :: "Sample-Rate Gen" prop Set :: (self.CLKSP_SETUP = $1, self.SRGR2_VALUE = self.SRGR2_VALUE_update(), "ok") } inst FSGM_SETUP :: "Disable" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Disable,Enable" prop Label :: "Transmit Frame-Sync Mode (FSXM = 1) (FSGM) " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Sample-Rate Gen" prop Set :: (self.FSGM_SETUP = $1, self.SRGR2_VALUE = self.SRGR2_VALUE_update(), "ok") } inst FWID_SETUP :: 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "Frame Width (1-256) (FWID) " prop JSName :: "mcbspSrgr1Fwid" prop Visible :: 1 prop Writable :: ((self.GRST_SETUP == 1) && ((self.XIOEN_SETUP == 1) || (self.RIOEN_SETUP == 1))) prop NoGen :: 1 prop TabName :: "Sample-Rate Gen" prop Set :: (if (($1 <= 256) && ($1 >= 1)) {self.FWID_SETUP = $1, self.SRGR1_VALUE = self.SRGR1_VALUE_update(), "ok"} else {"Invalid value"}) } inst CLKGDV_SETUP :: 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "Clock Divider (1-256) (CLKGDV) " prop JSName :: "mcbspSrgr1Clkgdv" prop Visible :: 1 prop Writable :: ((self.GRST_SETUP == 1) && ((self.XIOEN_SETUP == 1) || (self.RIOEN_SETUP == 1))) prop NoGen :: 1 prop TabName :: "Sample-Rate Gen" prop Set :: (if (($1 <= 256) && ($1 >= 1)) {self.CLKGDV_SETUP = $1, self.SRGR1_VALUE = self.SRGR1_VALUE_update(), "ok"} else {"Invalid value"}) } inst FPER_SETUP :: 1 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Label :: "Frame Period (1-4096) (FPER) " prop JSName :: "mcbspSrgr2Fper" prop Visible :: 1 prop Writable :: ((self.GRST_SETUP == 1) && ((self.XIOEN_SETUP == 1) || (self.RIOEN_SETUP == 1))) prop NoGen :: 1 prop TabName :: "Sample-Rate Gen" prop Set :: (if (($1 <= 4096) && ($1 >= 1)) {self.FPER_SETUP = $1, self.SRGR2_VALUE = self.SRGR2_VALUE_update(), "ok"} else {"Invalid value"}) } inst CLKX_IO :: "Input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Select CLKX Pin as " prop Enum :: "Input,Output" prop JSName :: "mcbspGpioClkx" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 0 prop NoGen :: 1 prop TabName :: "GPIO" prop Set :: (self.CLKX_IO = $1, if (self.CLKX_IO == "Output") {self.PCR_VALUE |= (0x0200)} else {self.PCR_VALUE &= (0xFDFF)}, "ok") } inst FSX_IO :: "Input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Select FSX Pin as " prop Enum :: "Input,Output" prop JSName :: "mcbspGpioFsx" prop Visible :: 1 prop Writable :: self.XIOEN_SETUP == 0 prop NoGen :: 1 prop TabName :: "GPIO" prop Set :: (self.FSX_IO = $1, if (self.FSX_IO == "Output") {self.PCR_VALUE |= (0x0800)} else {self.PCR_VALUE &= (0xF7FF)}, "ok") } inst CLKR_IO :: "Input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Select CLKR Pin as " prop Enum :: "Input,Output" prop JSName :: "mcbspGpioClkr" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 0 prop NoGen :: 1 prop TabName :: "GPIO" prop Set :: (self.CLKR_IO = $1, if (self.CLKR_IO == "Output") {self.PCR_VALUE |= (0x0100)} else {self.PCR_VALUE &= (0xFEFF)}, "ok") } inst FSR_IO :: "Input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Select FSR Pin as " prop Enum :: "Input,Output" prop JSName :: "mcbspGpioFsr" prop Visible :: 1 prop Writable :: self.RIOEN_SETUP == 0 prop NoGen :: 1 prop TabName :: "GPIO" prop Set :: (self.FSR_IO = $1, if (self.FSR_IO == "Output") {self.PCR_VALUE |= (0x0400)} else {self.PCR_VALUE &= (0xFBFF)}, "ok") } inst EN_DX :: "Output" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Unused,Output" prop Label :: "Select DX Pin as " prop JSName :: "mcbspGpioDx" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 prop TabName :: "GPIO" } inst EN_DR :: "Input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Unused,Input" prop Label :: "Select DR Pin as " prop JSName :: "mcbspGpioDr" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 prop TabName :: "GPIO" } inst EN_CLKS :: "Input" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Unused,Input" prop Label :: "Select CLKS Pin as " prop JSName :: "mcbspGpioClks" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 prop TabName :: "GPIO" } inst MCBSP_man :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Set Manually " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" } inst SPCR1_VALUE :: self.SPCR1_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Serial Port Control Register 1 " prop JSName :: "mcbspSpcr1" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (if (($1 & 0x6000) == 0x6000) {"Invalid RJUST Value"} else {(self.SPCR1_VALUE = ($1 & 0xF8F9), self.SPCR1_SETUP_update($1), "ok")}) } inst SPCR2_VALUE :: self.SPCR2_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Serial Port Control Register 2 " prop JSName :: "mcbspSpcr2" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.SPCR2_VALUE = ($1 & 0x03F9), self.SPCR2_SETUP_update($1), "ok") } inst RCR1_VALUE :: self.RCR1_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Control Register 1 " prop JSName :: "mcbspRcr1" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (if (($1 & 0x00E0) == 0x00E0) {"Invalid RWDLEN1 Value"} else {if (($1 & 0x00E0) == 0x00C0) {"Invalid RWDLEN1 Value"} else {(self.RCR1_VALUE = ($1 & 0x7FE0), self.RCR1_SETUP_update($1), "ok")}}) } inst RCR2_VALUE :: self.RCR2_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Control Register 2 " prop JSName :: "mcbspRcr2" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (if (($1 & 0x00E0) == 0x00E0) {"Invalid RWDLEN2 Value"} else {if (($1 & 0x00E0) == 0x00C0) {"Invalid RWDLEN2 Value"} else {if (($1 & 0x0003) == 0x0003) {"Invalid RDATDLY Value"} else {(self.RCR2_VALUE = $1, self.RCR2_SETUP_update($1), "ok")}}}) } inst XCR1_VALUE :: self.XCR1_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Control Register 1 " prop JSName :: "mcbspXcr1" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (if (($1 & 0x00E0) == 0x00E0) {"Invalid XWDLEN1 Value"} else {if (($1 & 0x00E0) == 0x00C0) {"Invalid XWDLEN1 Value"} else {(self.XCR1_VALUE = ($1 & 0x7FE0), self.XCR1_SETUP_update($1), "ok")}}) } inst XCR2_VALUE :: self.XCR2_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Control Register 2 " prop JSName :: "mcbspXcr2" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (if (($1 & 0x00E0) == 0x00E0) {"Invalid XWDLEN2 Value"} else {if (($1 & 0x00E0) == 0x00C0) {"Invalid XWDLEN2 Value"} else {if (($1 & 0x0003) == 0x0003) {"Invalid XDATDLY Value"} else {(self.XCR2_VALUE = $1, self.XCR2_SETUP_update($1), "ok")}}}) } inst SRGR1_VALUE :: self.SRGR1_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Sample Rate Generator Register 1 " prop JSName :: "mcbspSrgr1" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.SRGR1_VALUE = $1, self.SRGR1_SETUP_update($1), "ok") } inst SRGR2_VALUE :: self.SRGR2_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Sample Rate Generator Register 2 " prop JSName :: "mcbspSrgr2" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.SRGR2_VALUE = $1, if (($1 & 0x1000) && (self.PCR_VALUE & 0x0800)) {self.FSXM_FSGM_SETUP = "FSG Signal"} else {if (!($1 & 0x1000) && (self.PCR_VALUE & 0x0800)) {self.FSXM_FSGM_SETUP = "DXR[1/2]-to-XSR[1/2] Copy"} else {self.FSXM_FSGM_SETUP = "External"}}, self.SRGR2_SETUP_update($1), "ok") } inst MCR1_VALUE :: self.MCR1_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Multichannel Control Register 1 " prop JSName :: "mcbspMcr1" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.MCR1_VALUE = ($1 & 0x03E1), self.MCR1_SETUP_update($1), "ok") } inst MCR2_VALUE :: self.MCR2_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Multichannel Control Register 2 " prop JSName :: "mcbspMcr2" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.MCR2_VALUE = ($1 & 0x03E3), self.MCR2_SETUP_update($1), "ok") } inst PCR_VALUE :: self.PCR_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Pin Control Register " prop JSName :: "mcbspPcr" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced A" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.PCR_VALUE = ($1 & 0x3F8F), if (($1 & 0x0800) && (self.SRGR2_VALUE & 0x1000)) {self.FSXM_FSGM_SETUP = "FSG Signal"} else {if (($1 & 0x0800) && !(self.SRGR2_VALUE & 0x1000)) {self.FSXM_FSGM_SETUP = "DXR[1/2]-to-XSR[1/2] Copy"} else {self.FSXM_FSGM_SETUP = "External"}}, self.PCR_SETUP_update($1), "ok") } inst RMCM_RMCME_SETUP :: "All 128 Channels" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "All 128 Channels,2 Blocks(Up to 16Ch./Blk.),Any of 128 Ch." prop Label :: "RX Channel Enable " prop JSName :: "mcbspMcr1RmcmRmcme" prop Visible :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop Set :: (self.RMCM_RMCME_SETUP = $1, self.MCR1_VALUE = self.MCR1_VALUE_update(), "ok") } inst RMCM_RMCME_OLD_SETUP :: "All 128 Channels" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "All 128 Channels,2 Blocks(Up to 16Ch./Blk.)" prop Label :: "RX Channel Enable " prop JSName :: "mcbspMcr1RmcmRmcmeOld" prop Visible :: (GBL.CHIPTYPE == "5401") || (GBL.CHIPTYPE == "5402") || (GBL.CHIPTYPE == "5420") || (GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5410") || (GBL.CHIPTYPE == "5471") prop Writable :: self.RIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop Set :: (self.RMCM_RMCME_SETUP = $1, self.RMCM_RMCME_OLD_SETUP = $1, self.MCR1_VALUE = self.MCR1_VALUE_update(), "ok") } inst RPABLK_SETUP :: "Block 0. Channel 0-15" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Block 0. Channel 0-15,Block 2. Channel 32-47,Block 4. Channel 64-79,Block 6. Channel 96-111" prop Label :: "Receive Partition A (RPABLK) " prop JSName :: "mcbspMcr1Rpablk" prop Visible :: 1 prop Writable :: (self.RIOEN_SETUP == 1) && (self.RMCM_RMCME_SETUP == "2 Blocks(Up to 16Ch./Blk.)") prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop Set :: (self.RPABLK_SETUP = $1, self.MCR1_VALUE = self.MCR1_VALUE_update(), "ok") } inst RPBBLK_SETUP :: "Block 1. Channel 16-31" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Block 1. Channel 16-31,Block 3. Channel 48-63,Block 5. Channel 80-95,Block 7. Channel 112-127" prop Label :: "Receive Partition B (RPBBLK) " prop JSName :: "mcbspMcr1Rpbblk" prop Visible :: 1 prop Writable :: (self.RIOEN_SETUP == 1) && (self.RMCM_RMCME_SETUP == "2 Blocks(Up to 16Ch./Blk.)") prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop Set :: (self.RPBBLK_SETUP = $1, self.MCR1_VALUE = self.MCR1_VALUE_update(), "ok") } inst RCERA_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition A " prop JSName :: "mcbspRcera" prop Visible :: 1 prop Writable :: (self.RIOEN_SETUP == 1) && ((self.RMCM_RMCME_SETUP == "2 Blocks(Up to 16Ch./Blk.)") || (self.RMCM_RMCME_SETUP == "Any of 128 Ch.")) && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop cGen :: 1 prop cType :: "Uint16" } inst RCERB_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition B " prop JSName :: "mcbspRcerb" prop Visible :: 1 prop Writable :: (self.RIOEN_SETUP == 1) && ((self.RMCM_RMCME_SETUP == "2 Blocks(Up to 16Ch./Blk.)") || (self.RMCM_RMCME_SETUP == "Any of 128 Ch.")) && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop cGen :: 1 prop cType :: "Uint16" } inst RCERC_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition C " prop JSName :: "mcbspRcerc" prop Visible :: 1 prop Writable :: (self.RIOEN_SETUP == 1) && (self.RMCM_RMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst RCERD_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition D " prop JSName :: "mcbspRcerd" prop Visible :: 1 prop Writable :: (self.RIOEN_SETUP == 1) && (self.RMCM_RMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst RCERE_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition E " prop JSName :: "mcbspRcere" prop Visible :: 1 prop Writable :: (self.RIOEN_SETUP == 1) && (self.RMCM_RMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst RCERF_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition F " prop JSName :: "mcbspRcerf" prop Visible :: 1 prop Writable :: (self.RIOEN_SETUP == 1) && (self.RMCM_RMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst RCERG_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition G " prop JSName :: "mcbspRcerg" prop Visible :: 1 prop Writable :: (self.RIOEN_SETUP == 1) && (self.RMCM_RMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst RCERH_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition H " prop JSName :: "mcbspRcerh" prop Visible :: 1 prop Writable :: (self.RIOEN_SETUP == 1) && (self.RMCM_RMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Receive Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst XMCM_XMCME_SETUP :: "All 128 Channels" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "All 128 Channels,2 Blocks(Up to 16Ch./Blk. - XMCM=01),2 Blocks(Up to 16Ch./Blk. - XMCM=10),Symmetric Transmit and Receive,Any of 128 Ch." prop Label :: "TX Channel Enable " prop JSName :: "mcbspMcr2XmcmXmcme" prop Visible :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop Set :: (self.XMCM_XMCME_SETUP = $1, self.MCR2_VALUE = self.MCR2_VALUE_update(), "ok") } inst XMCM_XMCME_OLD_SETUP :: "All 128 Channels" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "All 128 Channels,2 Blocks(Up to 16Ch./Blk. - XMCM=01),2 Blocks(Up to 16Ch./Blk. - XMCM=10),Symmetric Transmit and Receive" prop Label :: "TX Channel Enable " prop JSName :: "mcbspMcr2XmcmXmcmeOld" prop Visible :: (GBL.CHIPTYPE == "5401") || (GBL.CHIPTYPE == "5402") || (GBL.CHIPTYPE == "5420") || (GBL.CHIPTYPE == "5409") || (GBL.CHIPTYPE == "5410") || (GBL.CHIPTYPE == "5471") prop Writable :: self.XIOEN_SETUP == 1 prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop Set :: (self.XMCM_XMCME_SETUP = $1, self.XMCM_XMCME_OLD_SETUP = $1, self.MCR2_VALUE = self.MCR2_VALUE_update(), "ok") } inst XPABLK_SETUP :: "Block 0. Channel 0-15" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Block 0. Channel 0-15,Block 2. Channel 32-47,Block 4. Channel 64-79,Block 6. Channel 96-111" prop Label :: "Transmit Partition A (XPABLK) " prop JSName :: "mcbspMcr2Xpablk" prop Visible :: 1 prop Writable :: (self.XIOEN_SETUP == 1) && ((self.XMCM_XMCME_SETUP == "2 Blocks(Up to 16Ch./Blk. - XMCM=01)") || (self.XMCM_XMCME_SETUP == "2 Blocks(Up to 16Ch./Blk. - XMCM=10)") || (self.XMCM_XMCME_SETUP == "Symmetric Transmit and Receive")) prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop Set :: (self.XPABLK_SETUP = $1, self.MCR2_VALUE = self.MCR2_VALUE_update(), "ok") } inst XPBBLK_SETUP :: "Block 1. Channel 16-31" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Block 1. Channel 16-31,Block 3. Channel 48-63,Block 5. Channel 80-95,Block 7. Channel 112-127" prop Label :: "Transmit Partition B (XPBBLK) " prop JSName :: "mcbspMcr2Xpbblk" prop Visible :: 1 prop Writable :: (self.XIOEN_SETUP == 1) && ((self.XMCM_XMCME_SETUP == "2 Blocks(Up to 16Ch./Blk. - XMCM=01)") || (self.XMCM_XMCME_SETUP == "2 Blocks(Up to 16Ch./Blk. - XMCM=10)") || (self.XMCM_XMCME_SETUP == "Symmetric Transmit and Receive")) prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop Set :: (self.XPBBLK_SETUP = $1, self.MCR2_VALUE = self.MCR2_VALUE_update(), "ok") } inst XCERA_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition A " prop JSName :: "mcbspXcera" prop Visible :: 1 prop Writable :: (self.XIOEN_SETUP == 1) && (self.XMCM_XMCME_SETUP != "All 128 Channels") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop cGen :: 1 prop cType :: "Uint16" } inst XCERB_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition B " prop JSName :: "mcbspXcerb" prop Visible :: 1 prop Writable :: (self.XIOEN_SETUP == 1) && (self.XMCM_XMCME_SETUP != "All 128 Channels") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop cGen :: 1 prop cType :: "Uint16" } inst XCERC_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition C " prop JSName :: "mcbspXcerc" prop Visible :: 1 prop Writable :: (self.XIOEN_SETUP == 1) && (self.XMCM_XMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst XCERD_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition D " prop JSName :: "mcbspXcerd" prop Visible :: 1 prop Writable :: (self.XIOEN_SETUP == 1) && (self.XMCM_XMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst XCERE_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition E " prop JSName :: "mcbspXcere" prop Visible :: 1 prop Writable :: (self.XIOEN_SETUP == 1) && (self.XMCM_XMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst XCERF_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition F " prop JSName :: "mcbspXcerf" prop Visible :: 1 prop Writable :: (self.XIOEN_SETUP == 1) && (self.XMCM_XMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst XCERG_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition G " prop JSName :: "mcbspXcerg" prop Visible :: 1 prop Writable :: (self.XIOEN_SETUP == 1) && (self.XMCM_XMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst XCERH_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition H " prop JSName :: "mcbspXcerh" prop Visible :: 1 prop Writable :: (self.XIOEN_SETUP == 1) && (self.XMCM_XMCME_SETUP == "Any of 128 Ch.") && (self.ABIS_SETUP == "Disable") prop NoGen :: 1 prop TabName :: "Transmit Multichannel" prop cGen :: (GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441") prop cType :: "Uint16" } inst XMCM_01 :: "DXR written for enabled/unmasked channels,DX driven for enabled/unmasked channels" { prop Type :: "{0C355120-70B4-11d1-B3DD-0020AFEAE00F}" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 prop TabName :: "Transmit Multichannel" } inst XMCM_10 :: "DXR written for all channels in block,DX driven for unmasked channels" { prop Type :: "{0C355120-70B4-11d1-B3DD-0020AFEAE00F}" prop Visible :: 1 prop Writable :: 0 prop NoGen :: 1 prop TabName :: "Transmit Multichannel" } inst ABIS_RCERA_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "ABIS RX. Bit Enable Register Partition A " prop JSName :: "mcbspRceraAbis" prop Visible :: 1 prop Writable :: (self.ABIS_SETUP == "Enable") && (self.RIOEN_SETUP == 1) prop NoGen :: 1 prop TabName :: "ABIS" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.ABIS_XCERA_VALUE = $1, self.XCERA_VALUE = $1, "ok") } inst ABIS_RCERB_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "ABIS RX. Bit Enable Register Partition B " prop JSName :: "mcbspRcerbAbis" prop Visible :: 1 prop Writable :: (self.ABIS_SETUP == "Enable") && (self.RIOEN_SETUP == 1) prop NoGen :: 1 prop TabName :: "ABIS" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.ABIS_RCERB_VALUE = $1, self.RCERB_VALUE = $1, "ok") } inst ABIS_XCERA_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "ABIS TX. Bit Enable Register Partition A " prop JSName :: "mcbspXceraAbis" prop Visible :: 1 prop Writable :: (self.ABIS_SETUP == "Enable") && (self.XIOEN_SETUP == 1) prop NoGen :: 1 prop TabName :: "ABIS" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.ABIS_XCERA_VALUE = $1, self.XCERA_VALUE = $1, "ok") } inst ABIS_XCERB_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "ABIS TX. Bit Enable Register Partition B " prop JSName :: "mcbspXcerbAbis" prop Visible :: 1 prop Writable :: (self.ABIS_SETUP == "Enable") && (self.XIOEN_SETUP == 1) prop NoGen :: 1 prop TabName :: "ABIS" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.ABIS_XCERB_VALUE = $1, self.XCERB_VALUE = $1, "ok") } inst RCERA :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition A " prop Visible :: 1 prop JSName :: "mcbspRceraAdv" prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.RCERA = $1, self.RCERA_VALUE = $1, "ok") } inst RCERB :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition B " prop JSName :: "mcbspRcerbAdv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.RCERB = $1, self.RCERB_VALUE = $1, "ok") } inst RCERC :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition C " prop JSName :: "mcbspRcercAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.RCERC = $1, self.RCERC_VALUE = $1, "ok") } inst RCERD :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition D " prop JSName :: "mcbspRcerdAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.RCERD = $1, self.RCERD_VALUE = $1, "ok") } inst RCERE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition E " prop JSName :: "mcbspRcereAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.RCERE = $1, self.RCERE_VALUE = $1, "ok") } inst RCERF :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition F " prop JSName :: "mcbspRcerfAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.RCERF = $1, self.RCERF_VALUE = $1, "ok") } inst RCERG :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition G " prop JSName :: "mcbspRcergAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.RCERG = $1, self.RCERG_VALUE = $1, "ok") } inst RCERH :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Receive Channel Enable Register Partition H " prop JSName :: "mcbspRcerhAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.RCERH = $1, self.RCERH_VALUE = $1, "ok") } inst XCERA :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition A " prop JSName :: "mcbspXceraAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.XCERA = $1, self.XCERA_VALUE = $1, "ok") } inst XCERB :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition B " prop JSName :: "mcbspXcerbAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.XCERB = $1, self.XCERB_VALUE = $1, "ok") } inst XCERC :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition C " prop JSName :: "mcbspXcercAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.XCERC = $1, self.XCERC_VALUE = $1, "ok") } inst XCERD :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition D " prop JSName :: "mcbspXcerdAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.XCERD = $1, self.XCERD_VALUE = $1, "ok") } inst XCERE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition E " prop JSName :: "mcbspXcereAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.XCERE = $1, self.XCERE_VALUE = $1, "ok") } inst XCERF :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition F " prop JSName :: "mcbspXcerfAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.XCERF = $1, self.XCERF_VALUE = $1, "ok") } inst XCERG :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition G " prop JSName :: "mcbspXcergAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.XCERG = $1, self.XCERG_VALUE = $1, "ok") } inst XCERH :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Transmit Channel Enable Register Partition H " prop JSName :: "mcbspXcerhAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5416") || (GBL.CHIPTYPE == "5421") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced B" prop cGen :: 0 prop cType :: "Uint16" prop Set :: (self.XCERH = $1, self.XCERH_VALUE = $1, "ok") } } type hMCBSP { isa ObjectMgr prop name :: "hMCBSP" prop Label :: "MCBSP Resource Manager" prop JSName :: "HMCBSP" prop GlobalHelpTopic :: 1042 prop InstanceHelpTopic :: 1043 prop GlobalIcon :: 159 prop InstanceIcon :: 160 prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-00105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-0000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop IsContainedIn :: MCBSPFOLDER prop maxObjs :: (if ((GBL.CHIPTYPE == "5402") || (GBL.CHIPTYPE == "5401")) {2} else {3}) prop NoGen :: 1 prop cGen :: 1 prop cHandle :: self.openHandle prop cHeaderName :: if self.c54mcbsp == 1 {"csl_mcbsp.h"} else {""} prop cHandleType :: "MCBSP_Handle" prop cOpenName :: "MCBSP_open" prop cConfigName :: "MCBSP_config" prop cHandleName :: self.handleName global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 3 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global c54mcbsp :: 1 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "C54x MCBSP opened " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 0 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst cOpenGen :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Handle" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 1 } inst cOpenArg0 :: "MCBSP_DEV0" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Arg 0" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst cOpenArg1 :: "MCBSP_OPEN_RESET" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Arg 1" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst openHandle :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Handle to McBSP " prop JSName :: "mcbspHandleEnable" prop Visible :: 1 prop Writable :: !(((GBL.CHIPTYPE == "5401") || (GBL.CHIPTYPE == "5402")) && (self.cOpenArg0 == "MCBSP_PORT2")) prop NoGen :: 1 prop Set :: (self.openHandle = $1, self.cOpenGen = $1, if ($1 == 1) {self.c54mcbsp = 1} else {self.c54mcbsp = 0, self.PINIT_ENABLE = 0}, "ok") } inst handleName :: "MCBSP_handle" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Specify Handle Name " prop JSName :: "mcbspHandleName" prop Visible :: 1 prop Writable :: (self.openHandle) prop NoGen :: 1 prop Set :: (self.handleName = $1, self.cConfigArg0 = $1, "ok") } inst PINIT_ENABLE :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable pre-initialization " prop JSName :: "mcbspEnablePreInit" prop Visible :: 1 prop Writable :: (self.openHandle) prop NoGen :: 1 prop Set :: ($a = 0, scan ($b; mcbspCfg) {$a = 1}, if ($a == 0) {"You must create a configuration object"} else {self.PINIT_ENABLE = $1, "ok"}) } inst cConfigGen :: = ((self.PINIT_ENABLE == 1) && (self.cConfigArg1 != MCBSP_NOTHING) && (self.cOpenGen)) { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 prop Visible :: 0 } inst cConfigArg0 :: self.handleName { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Config argument 0" prop Visible :: 0 } inst cConfigArg1 :: MCBSP_NOTHING { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: mcbspCfg prop Label :: "Pre-initialize " prop JSName :: "mcbspPreInit" prop Visible :: 1 prop Writable :: (self.PINIT_ENABLE) prop NoGen :: 0 prop cPreVal :: "&" } } object McBSP0 :: hMCBSP { param iComment :: "McBSP 0" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hMCBSP" param iDelMsg :: "McBSP 0" param cOpenGen :: 0 param cOpenArg0 :: "MCBSP_PORT0" param cOpenArg1 :: "MCBSP_OPEN_RESET" param openHandle :: 0 param handleName :: "hMcbsp0" param PINIT_ENABLE :: 0 param cConfigArg0 :: "hMcbsp0" param cConfigArg1 :: MCBSP_NOTHING } object McBSP1 :: hMCBSP { param iComment :: "McBSP 1" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hMCBSP" param iDelMsg :: "McBSP 1" param cOpenGen :: 0 param cOpenArg0 :: "MCBSP_PORT1" param cOpenArg1 :: "MCBSP_OPEN_RESET" param openHandle :: 0 param handleName :: "hMcbsp1" param PINIT_ENABLE :: 0 param cConfigArg0 :: "hMcbsp1" param cConfigArg1 :: MCBSP_NOTHING } object McBSP2 :: hMCBSP { param iComment :: "McBSP 2" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hMCBSP" param iDelMsg :: "McBSP 2" param cOpenGen :: 1 param cOpenArg0 :: "MCBSP_PORT2" param cOpenArg1 :: "MCBSP_OPEN_RESET" param openHandle :: 1 param handleName :: "C54XX_DMA_MCBSP_hMcbsp" param PINIT_ENABLE :: 1 param cConfigArg0 :: "C54XX_DMA_MCBSP_hMcbsp" param cConfigArg1 :: mcbspCfg0 } object MCBSP_NOTHING :: mcbspCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param XIOEN_SETUP :: 1 param XIOEN2_SETUP :: 1 param CLKXM1_SETUP :: "External" param CLKXM2_SETUP :: "Slave" param CLKXP_SETUP :: "Rising Edge" param FSXP_SETUP :: "Active High" param DXENA_SETUP :: "Disable" param XDATDLY_SETUP :: "0-bit" param XPHASE_SETUP :: "Single-phase" param XWDLEN1_SETUP :: "8-bits" param XWDLEN2_SETUP :: "8-bits" param XFRLEN1_SETUP :: 1 param XFRLEN2_SETUP :: 1 param XSYNCERR_SETUP :: "Disable" param XINTM_SETUP :: "XRDY" param FSXM_SETUP :: "External" param XFIG_SETUP :: "Restart Transfer" param XCOMPAND_SETUP :: "No Companding-MSB First" param FSXM_FSGM_SETUP :: "External" param RIOEN_SETUP :: 1 param RIOEN2_SETUP :: 1 param CLKRM1_SETUP :: "External" param CLKRM2_SETUP :: "CLKX Driven" param CLKRP_SETUP :: "Falling Edge" param FSRP_SETUP :: "Active High" param RDATDLY_SETUP :: "0-bit" param RPHASE_SETUP :: "Single-phase" param RWDLEN1_SETUP :: "8-bits" param RWDLEN2_SETUP :: "8-bits" param RFRLEN1_SETUP :: 1 param RFRLEN2_SETUP :: 1 param RSYNCERR_SETUP :: "Disable" param RINTM_SETUP :: "RRDY" param FSRM_SETUP :: "External" param RFIG_SETUP :: "Restart Transfer" param RJUST_SETUP :: "Right-justify/zero-fill" param RCOMPAND_SETUP :: "No Companding-MSB First" param FREE_SOFT_SETUP :: "Stop Immediately" param CLKSTP_SETUP :: "Disable" param DLB_SETUP :: "Disable" param ABIS_SETUP :: "Disable" param GRST_SETUP :: 1 param CLKSM_SETUP :: "CLKS Pin" param SCLKME_SETUP :: 0 param GSYNC_SETUP :: "Disable" param CLKSP_SETUP :: "Rising Edge of CLKS" param FSGM_SETUP :: "Disable" param FWID_SETUP :: 1 param CLKGDV_SETUP :: 1 param FPER_SETUP :: 1 param CLKX_IO :: "Input" param FSX_IO :: "Input" param CLKR_IO :: "Input" param FSR_IO :: "Input" param EN_DX :: "Output" param EN_DR :: "Input" param EN_CLKS :: "Input" param MCBSP_man :: 0 param SPCR1_VALUE :: 0 param SPCR2_VALUE :: 0 param RCR1_VALUE :: 0 param RCR2_VALUE :: 0 param XCR1_VALUE :: 0 param XCR2_VALUE :: 0 param SRGR1_VALUE :: 0 param SRGR2_VALUE :: 0 param MCR1_VALUE :: 0 param MCR2_VALUE :: 0 param PCR_VALUE :: 0 param RMCM_RMCME_SETUP :: "All 128 Channels" param RMCM_RMCME_OLD_SETUP :: "All 128 Channels" param RPABLK_SETUP :: "Block 0. Channel 0-15" param RPBBLK_SETUP :: "Block 1. Channel 16-31" param RCERA_VALUE :: 0 param RCERB_VALUE :: 0 param RCERC_VALUE :: 0 param RCERD_VALUE :: 0 param RCERE_VALUE :: 0 param RCERF_VALUE :: 0 param RCERG_VALUE :: 0 param RCERH_VALUE :: 0 param XMCM_XMCME_SETUP :: "All 128 Channels" param XMCM_XMCME_OLD_SETUP :: "All 128 Channels" param XPABLK_SETUP :: "Block 0. Channel 0-15" param XPBBLK_SETUP :: "Block 1. Channel 16-31" param XCERA_VALUE :: 0 param XCERB_VALUE :: 0 param XCERC_VALUE :: 0 param XCERD_VALUE :: 0 param XCERE_VALUE :: 0 param XCERF_VALUE :: 0 param XCERG_VALUE :: 0 param XCERH_VALUE :: 0 param XMCM_01 :: "DXR written for enabled/unmasked channels,DX driven for enabled/unmasked channels" param XMCM_10 :: "DXR written for all channels in block,DX driven for unmasked channels" param ABIS_RCERA_VALUE :: 0 param ABIS_RCERB_VALUE :: 0 param ABIS_XCERA_VALUE :: 0 param ABIS_XCERB_VALUE :: 0 param RCERA :: 0 param RCERB :: 0 param RCERC :: 0 param RCERD :: 0 param RCERE :: 0 param RCERF :: 0 param RCERG :: 0 param RCERH :: 0 param XCERA :: 0 param XCERB :: 0 param XCERC :: 0 param XCERD :: 0 param XCERE :: 0 param XCERF :: 0 param XCERG :: 0 param XCERH :: 0 } type PLLFOLDER { prop Label :: "PLL - Clock Generator" prop GlobalIcon :: 173 prop GlobalPropertyPage :: "{B916FB95-52A5-11d4-967C-0750048381B7}" prop GlobalHelpTopic :: 1050 prop IsContainedIn :: CSL prop NoGen :: 1 } type pllCfg { isa ObjectMgr prop name :: "PLL" prop Label :: "PLL Configuration Manager" prop JSName :: "PLL" prop GlobalHelpTopic :: 1051 prop InstanceHelpTopic :: 1051 prop IsContainedIn :: PLLFOLDER prop GlobalIcon :: 173 prop InstanceIcon :: 174 prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-10105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-1000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop cGen :: 1 prop cStruct :: 1 prop cStructType :: "PLL_Config" prop cHeaderName :: if self.gNumOf > 0 {"csl_pll.h"} else {""} prop NoGen :: 1 global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst PLLCOUNT_SETUP :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "PLL Counter Value (PLLCOUNT) [0 - 255] " prop JSName :: "pllClkmdPllcount" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Settings" prop Set :: (if (($1 >= 0) && ($1 < 256)) {self.PLLCOUNT_SETUP = $1, self.PLLCOUNT_VALUE = $1, "ok"} else {self.error("Entered value exceeds limits of PLLCOUNT")}) } inst PLLMODE_SETUP :: "PLLMUL + 1" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "PLLMUL + 1,1 (bypass),(PLLMUL + 1) / 2,PLLMUL / 4" prop Label :: "PLL Multiplier " prop JSName :: "pllPllmulRatio" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Settings" prop Set :: (self.PLLMODE_SETUP = $1, if ($1 == "PLLMUL + 1") {self.PLLMODE_VALUE = 2, "ok"} else {if ($1 == "1 (bypass)") {self.PLLMODE_VALUE = 2, self.PLLMUL_VALUE = 15, "ok"} else {self.PLLMODE_VALUE = 1, "ok"}}) } inst PLLMUL_SETUP :: 0 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15" prop Label :: "PLL Multiplier (PLLMUL) " prop JSName :: "pllClkmdPllmul" prop Visible :: 1 prop Writable :: self.PLLMODE_SETUP != "1 (bypass)" prop NoGen :: 1 prop TabName :: "Settings" prop Set :: (self.PLLMUL_SETUP = $1, self.PLLMUL_VALUE = $1, "ok") } inst DIVFCT_SETUP :: "Divide by 4" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "No Division,Divide by 2,Divide by 3,Divide by 4" prop Label :: "CLKOUT Output Divide Factor " prop JSName :: "pllDivideFactor" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5410") || (GBL.CHIPTYPE == "5416")) prop NoGen :: 1 prop TabName :: "Settings" prop Set :: (self.DIVFCT_SETUP = $1, if ($1 == "No Division") {self.DIVFCT_VALUE = 0, "ok"} else {if ($1 == "Divide by 2") {self.DIVFCT_VALUE = 1, "ok"} else {if ($1 == "Divide by 3") {self.DIVFCT_VALUE = 2, "ok"} else {self.DIVFCT_VALUE = 3, "ok"}}}) } inst PLLMODE_VALUE :: 2 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "PLL Multipler/Divider Mode " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Settings" prop cGen :: 1 prop cType :: "Uint16" } inst PLLCOUNT_VALUE :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "PLL Counter Value (PLLCOUNT) " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Settings" prop cGen :: 1 prop cType :: "Uint16" } inst PLLMUL_VALUE :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "PLL Multiplier Value (PLLMUL) " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Settings" prop cGen :: 1 prop cType :: "Uint16" } inst DIVFCT_VALUE :: 3 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "CLKOUT Output Divide Factor (DIVFCT) " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Settings" prop cGen :: ((GBL.CHIPTYPE == "5410") || (GBL.CHIPTYPE == "5416")) prop cType :: "Uint16" } } type hPLL { isa ObjectMgr prop name :: "hPLL" prop Label :: "PLL Resource Manager" prop JSName :: "HPLL" prop GlobalHelpTopic :: 1052 prop InstanceHelpTopic :: 1052 prop GlobalIcon :: 173 prop InstanceIcon :: 174 prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-10105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-1000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop IsContainedIn :: PLLFOLDER prop maxObjs :: (1) prop NoGen :: 1 prop cGen :: 1 prop cHeaderName :: if self.c54pll == 1 {"csl_pll.h"} else {""} prop cConfigName :: "PLL_config" global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global c54pll :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "C54x PLL Configured " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 0 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst PINIT_ENABLE :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable Configuration of PLL " prop JSName :: "pllEnablePreinit" prop Visible :: 1 prop Writable :: (self.openHandle) && (self.cOpenGen) prop NoGen :: 1 prop Set :: (self.PINIT_ENABLE = $1, if ($1 == 1) {self.c54pll = 1} else {self.c54pll = 0}, "ok") } inst cConfigGen :: = ((self.PINIT_ENABLE == 1) && (self.cConfigArg0 != PLL_NOTHING)) { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 prop Visible :: 0 prop Writable :: 1 } inst cConfigArg0 :: PLL_NOTHING { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: pllCfg prop Label :: "Pre-initialize" prop JSName :: "pllPreInit" prop Visible :: 1 prop Writable :: self.PINIT_ENABLE prop NoGen :: 0 prop cPreVal :: "&" } } object PLL_NOTHING :: pllCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param PLLCOUNT_SETUP :: 0 param PLLMODE_SETUP :: "PLLMUL + 1" param PLLMUL_SETUP :: 0 param DIVFCT_SETUP :: "Divide by 4" param PLLMODE_VALUE :: 2 param PLLCOUNT_VALUE :: 0 param PLLMUL_VALUE :: 0 param DIVFCT_VALUE :: 3 } object PLL0 :: hPLL { param iComment :: "PLL 0" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hPLL" param iDelMsg :: "PLL 0" param PINIT_ENABLE :: 0 param cConfigArg0 :: PLL_NOTHING } type TIMERFOLDER { prop Label :: "TIMER - Timer Device" prop GlobalIcon :: 161 prop GlobalPropertyPage :: "{B916FB95-52A5-11d4-967C-0750048381B7}" prop GlobalHelpTopic :: 1060 prop IsContainedIn :: CSL prop NoGen :: 1 } type timerCfg { isa ObjectMgr prop name :: "TIMER" prop Label :: "Timer Configuration Manager" prop JSName :: "TIMER" prop GlobalHelpTopic :: 1061 prop InstanceHelpTopic :: 1061 prop IsContainedIn :: TIMERFOLDER prop GlobalIcon :: 161 prop InstanceIcon :: 162 prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-10105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-1000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop cGen :: 1 prop cStruct :: 1 prop cStructType :: "TIMER_Config" prop cHeaderName :: if ((hTIMER.c54timer == 1) || (self.gNumOf > 0)) {"csl_timer.h"} else {""} prop NoGen :: 1 prop TDDR_TCR :: (self.TDDR_SETUP) prop FREE_SOFT_TCR :: (if (self.FREE_SOFT_SETUP == "Stop when counter = 0") {0x0800} else {if (self.FREE_SOFT_SETUP == "Stop Immediately") {0x0000} else {0x0400}}) prop TCR_VALUE_update :: (self.TDDR_TCR | self.FREE_SOFT_TCR) prop TCR_SETUP_update :: (self.FREE_SOFT_SETUP = ($a = ($1 & 0x0C00), if ($a == 0x0000) {"Stop Immediately"} else {if ($a == 0x0800) {"Stop when counter = 0"} else {"Do Not Stop"}}), self.TDDR_SETUP = ($1 & 0x000f)) prop PRD_VALUE_update :: (self.PRD_SETUP) prop PRD_SETUP_update :: (self.PRD_SETUP = self.PRD_VALUE) prop PREMD_TSCR :: (if (self.PREMD_SETUP == "Indirect Mode") {0x1000} else {0x0000}) prop TSCR_VALUE_update :: (self.PREMD_TSCR) prop PRESC_SETUP_update :: (self.PRESC_SETUP = (if ($1 == 0x0000) {0x0001} else {if ($1 == 0x0001) {0x0003} else {if ($1 == 0x0002) {0x0007} else {if ($1 == 0x0003) {0x000F} else {if ($1 == 0x0004) {0x001F} else {if ($1 == 0x0005) {0x003F} else {if ($1 == 0x0006) {0x007F} else {if ($1 == 0x0007) {0x00FF} else {if ($1 == 0x0008) {0x01FF} else {if ($1 == 0x0009) {0x03FF} else {if ($1 == 0x000A) {0x07FF} else {if ($1 == 0x000B) {0x0FFF} else {if ($1 == 0x000C) {0x1FFF} else {if ($1 == 0x000D) {0x3FFF} else {if ($1 == 0x000E) {0x7FFF} else {0xFFFF}}}}}}}}}}}}}}})) prop TDDR_SETUP_update :: (self.TDDR_SETUP = (if ($1 == 0x0001) {0x0000} else {if ($1 == 0x0003) {0x0001} else {if ($1 == 0x0007) {0x0002} else {if ($1 == 0x000F) {0x0003} else {if ($1 == 0x001F) {0x0004} else {if ($1 == 0x003F) {0x0005} else {if ($1 == 0x007F) {0x0006} else {if ($1 == 0x00FF) {0x0007} else {if ($1 == 0x01FF) {0x0008} else {if ($1 == 0x03FF) {0x0009} else {if ($1 == 0x07FF) {0x000A} else {if ($1 == 0x0FFF) {0x000B} else {if ($1 == 0x1FFF) {0x000C} else {if ($1 == 0x3FFF) {0x000D} else {if ($1 == 0x7FFF) {0x000E} else {0x000F}}}}}}}}}}}}}}})) prop TSCR_SETUP_update :: (self.PREMD_SETUP = if ($1 & 0x1000) {"Indirect Mode"} else {"Direct Mode"}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst TDDR_SETUP :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Timer Divide-Down Ratio (TDDR) " prop JSName :: "timerTcrTddr" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE != "5471") && (GBL.CHIPTYPE != "5440") && (GBL.CHIPTYPE != "5441") && (self.PREMD_SETUP == "Direct Mode")) prop NoGen :: 1 prop TabName :: "Counter Control" prop Set :: (if (($1 >= 0) && ($1 < 16)) {self.TDDR_SETUP = $1, self.TCR_VALUE = self.TCR_VALUE_update(), "ok"} else {"Number Out of Bounds"}) } inst FREE_SOFT_SETUP :: "Stop Immediately" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Stop Immediately,Stop when counter = 0,Do Not Stop" prop Label :: "Breakpt. Emulation Behavior " prop JSName :: "timerTcrFreeSoft" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "General" prop Set :: (self.FREE_SOFT_SETUP = $1, self.TCR_VALUE = self.TCR_VALUE_update(), "ok") } inst PRD_SETUP :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Period Value " prop JSName :: "timerPrd" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Counter Control" prop Set :: (if (($1 >= 0) && ($1 < 65536)) {self.PRD_SETUP = $1, self.PRD_VALUE = self.PRD_VALUE_update(), "ok"} else {"Value out of Bounds"}) } inst PREMD_SETUP :: "Direct Mode" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Direct Mode,Indirect Mode" prop Label :: "Prescalar Mode " prop JSName :: "timerPremd" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5471") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Counter Control" prop Set :: (self.PREMD_SETUP = $1, self.TSCR_VALUE = self.TSCR_VALUE_update(), "ok") } inst PRESC_SETUP :: 0x0001 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "0x0001,0x0003,0x0007,0x000F,0x001F,0x003F,0x007F,0x00FF,0x01FF,0x03FF,0x07FF,0x0FFF,0x1FFF,0x3FFF,0x7FFF,0xFFFF" prop Label :: "Prescalar Value " prop JSName :: "timerPsc" prop Visible :: 1 prop Writable :: (((GBL.CHIPTYPE == "5471") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.PREMD_SETUP == "Indirect Mode")) prop NoGen :: 1 prop TabName :: "Counter Control" prop Set :: (self.PRESC_SETUP = $1, self.TDDR_SETUP_update($1), self.TCR_VALUE = self.TCR_VALUE_update(), "ok") } inst TOUT1_IO :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Drive Timer1 output on HINT Pin " prop JSName :: "timerTout1" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5401") || (GBL.CHIPTYPE == "5402")) prop NoGen :: 1 prop TabName :: "GPIO" prop Set :: (self.TOUT1_IO = $1, "ok") } inst TOUT_IO :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Drive TOUT Pin " prop JSName :: "timerTout" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5401") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "GPIO" prop Set :: (self.TOUT_IO = $1, "ok") } inst TIMER_man :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Set Manually " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" } inst TCR_VALUE :: self.TCR_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Timer Control Register " prop JSName :: "timerTcr" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.TCR_VALUE = ($1 & 0x0FFF), self.TCR_SETUP_update($1), "ok") } inst PRD_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Timer Period Register " prop JSName :: "timerPrdAdv" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: 1 prop cType :: "Uint16" prop Set :: (self.PRD_VALUE = $1, self.PRD_SETUP_update($1), self.PRESC_SETUP_update($1), "ok") } inst TSCR_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Timer Scale Register (TSCR) " prop JSName :: "timerTscr" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5471") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE == "5471") || (GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop cType :: "Uint16" prop Set :: (self.TSCR_VALUE = ($1 & 0x1000), self.TSCR_SETUP_update($1), "ok") } } type hTIMER { isa ObjectMgr prop name :: "hTIMER" prop Label :: "Timer Resource Manager" prop JSName :: "HTIMER" prop GlobalHelpTopic :: 1062 prop InstanceHelpTopic :: 1063 prop GlobalIcon :: 161 prop InstanceIcon :: 162 prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-10105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-1000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop IsContainedIn :: TIMERFOLDER prop maxObjs :: (if ((GBL.CHIPTYPE == "5401") || (GBL.CHIPTYPE == "5402")) {2} else {1}) prop NoGen :: 1 prop cGen :: 1 prop cHandle :: self.openHandle prop cHeaderName :: if ((Timer1.cConfigArg1.TOUT1_IO == 1) && (Timer1.cConfigGen)) {"csl_hpi.h"} else {if ((Timer0.cConfigArg1.TOUT_IO == 1) || (Timer1.cConfigArg1.TOUT_IO == 1)) {"csl_gpio.h"} else {""}} prop cHandleType :: "TIMER_Handle" prop cOpenName :: "TIMER_open" prop cConfigName :: "TIMER_config" prop cHandleName :: self.handleName prop tout1Str :: if ((self.cConfigArg1.TOUT1_IO == 1) && (self.cConfigGen) && (self.cOpenArg0 == "TIMER_DEV1")) {"HPI_GPIOCR_FSET(TOUT1, 0x1);\n"} else {""} prop toutStr :: if ((self.cConfigArg1.TOUT_IO == 1) && (self.cConfigGen)) {"GPIO_GPIO_FSET(TOUT, 0x1);\n"} else {""} prop cGenFxnPostInst :: ("%1S\n%2S\n%1S%0t\0,tout1Str,toutStr") global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 2 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global c54timer :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "C54x Timer opened " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 0 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst cOpenGen :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Handle" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 1 } inst cOpenArg0 :: "TIMER_DEV0" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Arg 0" prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst cOpenArg1 :: "TIMER_OPEN_RESET" { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Arg 1" prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst openHandle :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Open Handle to Timer " prop JSName :: "timerHandleEnable" prop Visible :: 1 prop Writable :: (self.cOpenArg0 == "TIMER_DEV0") || (GBL.CHIPTYPE == "5401") || (GBL.CHIPTYPE == "5402") prop NoGen :: 1 prop Set :: (if ((self.cOpenArg0 == "TIMER_DEV0") && (CLK.USETIMER == 1) && (CLK.TIMERNUM == 0)) {self.openHandle = 0, self.error("TIMER0 already used by the CLK module")} else {if ((self.cOpenArg0 == "TIMER_DEV1") && (CLK.USETIMER == 1) && (CLK.TIMERNUM == 1)) {self.openHandle = 0, self.error("TIMER1 already used by the CLK module")} else {self.openHandle = $1, self.cOpenGen = $1, if ($1 == 1) {self.c54timer = 1, "ok"} else {self.c54timer = 0, self.PINIT_ENABLE = 0, "ok"}}}) } inst handleName :: self { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Specify Handle Name " prop JSName :: "timerHandleName" prop Visible :: 1 prop Writable :: (self.cOpenGen) prop NoGen :: 1 prop cGen :: 0 } inst PINIT_ENABLE :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable pre-initialization " prop JSName :: "timerEnablePreInit" prop Visible :: 1 prop Writable :: (self.openHandle) && (self.cOpenGen) prop NoGen :: 1 prop Set :: (self.PINIT_ENABLE = $1, "ok") } inst cConfigGen :: = ((self.PINIT_ENABLE == 1) && (self.cConfigArg1 != TIMER_NOTHING) && (self.cOpenGen)) { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 prop Visible :: 0 prop Writable :: 1 } inst cConfigArg0 :: self.handleName { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Config argument 0" prop Visible :: 0 prop Writable :: 1 } inst cConfigArg1 :: TIMER_NOTHING { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: timerCfg prop Label :: "Pre-initialize" prop JSName :: "timerPreInit" prop Visible :: 1 prop Writable :: self.PINIT_ENABLE prop NoGen :: 0 prop cPreVal :: "&" } } object TIMER_NOTHING :: timerCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param TDDR_SETUP :: 0 param FREE_SOFT_SETUP :: "Stop Immediately" param PRD_SETUP :: 0 param PREMD_SETUP :: "Direct Mode" param PRESC_SETUP :: 1 param TOUT1_IO :: 0 param TOUT_IO :: 0 param TIMER_man :: 0 param TCR_VALUE :: 0 param PRD_VALUE :: 0 param TSCR_VALUE :: 0 } object Timer0 :: hTIMER { param iComment :: "Timer 0" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hTIMER" param iDelMsg :: "Timer 0" param cOpenGen :: 0 param cOpenArg0 :: "TIMER_DEV0" param cOpenArg1 :: "TIMER_OPEN_RESET" param openHandle :: 0 param handleName :: "hTimer0" param PINIT_ENABLE :: 0 param cConfigArg0 :: "hTimer0" param cConfigArg1 :: TIMER_NOTHING } object Timer1 :: hTIMER { param iComment :: "Timer 1" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hTIMER" param iDelMsg :: "Timer 1" param cOpenGen :: 0 param cOpenArg0 :: "TIMER_DEV1" param cOpenArg1 :: "TIMER_OPEN_RESET" param openHandle :: 0 param handleName :: "hTimer1" param PINIT_ENABLE :: 0 param cConfigArg0 :: "hTimer1" param cConfigArg1 :: TIMER_NOTHING } type WDTIMERFOLDER { prop Label :: "WDTIMER - Watchdog Timer Device" prop GlobalIcon :: 161 prop GlobalPropertyPage :: "{B916FB95-52A5-11d4-967C-0750048381B7}" prop GlobalHelpTopic :: 1070 prop IsContainedIn :: CSL prop NoGen :: 1 } type wdtimCfg { isa ObjectMgr prop name :: "WDTIM" prop Label :: "Watchdog Timer Configuration Manager" prop JSName :: "WDTIM" prop GlobalHelpTopic :: 1071 prop InstanceHelpTopic :: 1071 prop IsContainedIn :: WDTIMERFOLDER prop GlobalIcon :: 161 prop InstanceIcon :: 162 prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-10105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-1000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop cGen :: 1 prop cStruct :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop cStructType :: "WDTIM_Config" prop cHeaderName :: if self.gNumOf > 0 {"csl_wdtim.h"} else {""} prop NoGen :: 1 prop TDDR_TCR :: (self.TDDR_SETUP) prop FREE_SOFT_TCR :: (if (self.FREE_SOFT_SETUP == "Stop when counter = 0") {0x0800} else {if (self.FREE_SOFT_SETUP == "Stop Immediately") {0x0000} else {0x0400}}) prop TCR_VALUE_update :: (self.TDDR_TCR | self.FREE_SOFT_TCR) prop TCR_SETUP_update :: (self.FREE_SOFT_SETUP = ($a = ($1 & 0x0C00), if ($a == 0x0000) {"Stop Immediately"} else {if ($a == 0x0800) {"Stop when counter = 0"} else {"Do Not Stop"}}), self.TDDR_SETUP = ($1 & 0x000f)) prop PRD_VALUE_update :: (self.PRD_SETUP) prop PRD_SETUP_update :: (self.PRD_SETUP = self.PRD_VALUE) prop PREMD_TSCR :: (if (self.PREMD_SETUP == "Indirect Mode") {0x1000} else {0x0000}) prop TSCR_VALUE_update :: (self.PREMD_TSCR) prop PRESC_SETUP_update :: (self.PRESC_SETUP = (if ($1 == 0x0000) {0x0001} else {if ($1 == 0x0001) {0x0003} else {if ($1 == 0x0002) {0x0007} else {if ($1 == 0x0003) {0x000F} else {if ($1 == 0x0004) {0x001F} else {if ($1 == 0x0005) {0x003F} else {if ($1 == 0x0006) {0x007F} else {if ($1 == 0x0007) {0x00FF} else {if ($1 == 0x0008) {0x01FF} else {if ($1 == 0x0009) {0x03FF} else {if ($1 == 0x000A) {0x07FF} else {if ($1 == 0x000B) {0x0FFF} else {if ($1 == 0x000C) {0x1FFF} else {if ($1 == 0x000D) {0x3FFF} else {if ($1 == 0x000E) {0x7FFF} else {0xFFFF}}}}}}}}}}}}}}})) prop TDDR_SETUP_update :: (self.TDDR_SETUP = (if ($1 == 0x0001) {0x0000} else {if ($1 == 0x0003) {0x0001} else {if ($1 == 0x0007) {0x0002} else {if ($1 == 0x000F) {0x0003} else {if ($1 == 0x001F) {0x0004} else {if ($1 == 0x003F) {0x0005} else {if ($1 == 0x007F) {0x0006} else {if ($1 == 0x00FF) {0x0007} else {if ($1 == 0x01FF) {0x0008} else {if ($1 == 0x03FF) {0x0009} else {if ($1 == 0x07FF) {0x000A} else {if ($1 == 0x0FFF) {0x000B} else {if ($1 == 0x1FFF) {0x000C} else {if ($1 == 0x3FFF) {0x000D} else {if ($1 == 0x7FFF) {0x000E} else {0x000F}}}}}}}}}}}}}}})) prop TSCR_SETUP_update :: (self.PREMD_SETUP = if ($1 & 0x1000) {"Indirect Mode"} else {"Direct Mode"}) global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst TDDR_SETUP :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Timer Divide-Down Ratio (TDDR) " prop JSName :: "wdtimerTcrTddr" prop Visible :: 1 prop Writable :: (((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.PREMD_SETUP == "Direct Mode")) prop NoGen :: 1 prop TabName :: "Counter Control" prop Set :: (if (($1 >= 0) && ($1 < 16)) {self.TDDR_SETUP = $1, self.TCR_VALUE = self.TCR_VALUE_update(), "ok"} else {"Number Out of Bounds"}) } inst FREE_SOFT_SETUP :: "Stop Immediately" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Stop Immediately,Stop when counter = 0,Do Not Stop" prop Label :: "Breakpt. Emulation Behavior " prop JSName :: "wdtimerTcrFreeSoft" prop Visible :: 1 prop Writable :: 1 prop NoGen :: 1 prop TabName :: "General" prop Set :: (self.FREE_SOFT_SETUP = $1, self.TCR_VALUE = self.TCR_VALUE_update(), "ok") } inst PRD_SETUP :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Period Value " prop JSName :: "wdtimerPrd" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Counter Control" prop Set :: (if (($1 >= 0) && ($1 < 65536)) {self.PRD_SETUP = $1, self.PRD_VALUE = self.PRD_VALUE_update(), "ok"} else {"Value out of Bounds"}) } inst PREMD_SETUP :: "Direct Mode" { prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "Direct Mode,Indirect Mode" prop Label :: "Prescalar Mode " prop JSName :: "wdtimerPremd" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Counter Control" prop Set :: (self.PREMD_SETUP = $1, self.TSCR_VALUE = self.TSCR_VALUE_update(), "ok") } inst PRESC_SETUP :: 0x0001 { prop Type :: "{A11FE980-C07A-11cf-9BFE-0000C0AC14C7}" prop Enum :: "0x0001,0x0003,0x0007,0x000F,0x001F,0x003F,0x007F,0x00FF,0x01FF,0x03FF,0x07FF,0x0FFF,0x1FFF,0x3FFF,0x7FFF,0xFFFF" prop Label :: "Prescalar Value " prop JSName :: "wdtimerPsc" prop Visible :: 1 prop Writable :: (((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) && (self.PREMD_SETUP == "Indirect Mode")) prop NoGen :: 1 prop TabName :: "Counter Control" prop Set :: (self.PRESC_SETUP = $1, self.TDDR_SETUP_update($1), self.TCR_VALUE = self.TCR_VALUE_update(), "ok") } inst TIMER_man :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Set Manually " prop Visible :: 0 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced" } inst TCR_VALUE :: self.TCR_VALUE_update() { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Timer Control Register " prop JSName :: "wdtimerTcr" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop cType :: "Uint16" prop Set :: (self.TCR_VALUE = ($1 & 0x0FFF), self.TCR_SETUP_update($1), "ok") } inst PRD_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Timer Period Register " prop JSName :: "wdtimerPrdAdv" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop cType :: "Uint16" prop Set :: (self.PRD_VALUE = $1, self.PRD_SETUP_update($1), "ok") } inst TSCR_VALUE :: 0 { prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}" prop Format :: "0x%04x" prop Label :: "Timer Scale Register (TSCR) " prop JSName :: "wdtimerTscr" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop TabName :: "Advanced" prop cGen :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop cType :: "Uint16" prop Set :: (self.TSCR_VALUE = ($1 & 0x1000), self.TSCR_SETUP_update($1), "ok") } } type hWDTIM { isa ObjectMgr prop name :: "hWDTIM" prop Label :: "Watchdog Timer Resource Manager" prop JSName :: "HWDTIM" prop GlobalHelpTopic :: 1072 prop InstanceHelpTopic :: 1073 prop GlobalIcon :: 161 prop InstanceIcon :: 162 prop GlobalPropertyPage :: "{C5CB30B4-F113-11d2-84A5-10105A98CA0B}" prop InstancePropertyPage :: "{AC0C36D1-890B-11d0-A621-1000C070F3E9}" prop Vendor :: "vendor1" prop Version :: "1.00.00" prop IsContainedIn :: WDTIMERFOLDER prop maxObjs :: (if (GBL.CHIPTYPE == "5440") {1} else {if (GBL.CHIPTYPE == "5441") {1} else {0}}) prop NoGen :: 1 prop cGen :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop cHeaderName :: if self.c54wdtimer == 1 {"csl_wdtim.h"} else {""} prop cConfigName :: "WDTIM_config" global gUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gSetOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gNumOf :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gDirty :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInitFlag :: 1 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global gInit :: = ($a = 0, $b = 0, scan ($i; self) {if ($i.IsConfObj()) {$a += 1, if (self.isFinite) {$b |= 1 << $i.iId} } }, self.gNumOf = $a, self.gSetOf = $b, if (self.gInitFlag == 0) {self.localInit()} , self.gInitFlag = 1) { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } global c54wdtimer :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "C54x Watchdog Timer opened " prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 prop cGen :: 0 } inst iComment :: if self.iDelUser == "USER" {""} else {self.iDelMsg} { prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "comment" prop JSName :: "comment" prop Visible :: 1 prop Writable :: if self.iDelUser == "USER" {1} else {0} prop NoGen :: 1 } inst iIsUsed :: 0 { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iId :: 0 { prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}" prop Style :: 0x01 prop Visible :: 0 prop Writable :: 1 prop NoGen :: 1 } inst iDelUser :: "USER" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst iDelMsg :: "ok" { prop Visible :: 0 prop Writable :: 0 prop NoGen :: 1 } inst PINIT_ENABLE :: 0 { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop Label :: "Enable Configuration of Watchdog Timer " prop JSName :: "wdtimerHandleEnable" prop Visible :: 1 prop Writable :: ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 1 prop Set :: (self.PINIT_ENABLE = $1, if ($1 == 1) {self.c54wdtimer = 1} else {self.c54wdtimer = 0}, "ok") } inst cConfigGen :: = ((self.PINIT_ENABLE == 1) && (self.cConfigArg0 != WDTIM_NOTHING)) { prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}" prop NoGen :: 1 prop Visible :: 0 prop Writable :: 1 } inst cConfigArg0 :: WDTIM_NOTHING { prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}" prop MemberType :: wdtimCfg prop Label :: "Pre-initialize" prop JSName :: "wdtimerPreInit" prop Visible :: 1 prop Writable :: (self.PINIT_ENABLE) && ((GBL.CHIPTYPE == "5440") || (GBL.CHIPTYPE == "5441")) prop NoGen :: 0 prop cPreVal :: "&" } } object WDTIM_NOTHING :: wdtimCfg { param iComment :: "" param iIsUsed :: 0 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param TDDR_SETUP :: 0 param FREE_SOFT_SETUP :: "Stop Immediately" param PRD_SETUP :: 0 param PREMD_SETUP :: "Direct Mode" param PRESC_SETUP :: 1 param TIMER_man :: 0 param TCR_VALUE :: 0 param PRD_VALUE :: 0 param TSCR_VALUE :: 0 } object WDTim0 :: hWDTIM { param iComment :: "Watchdog Timer" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "hWDTIM" param iDelMsg :: "Watchdog Timer" param PINIT_ENABLE :: 0 param cConfigArg0 :: WDTIM_NOTHING } object DARAM47 :: MEM { param iComment :: "On-Chip DARAM4-7 in data memory" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param base :: 32768 param len :: 32768 param iAllocHeap :: 0 param iHeapSize :: 1024 param iUserHeapId :: 0 param iHeapId :: @segment_name param iReqHeapCount :: 0 param space :: "data" param iIsModifiable :: 1 } object SARAM03 :: MEM { param iComment :: "On-Chip SARAM0-3 in program memory" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param base :: 163840 param len :: 32768 param iAllocHeap :: 0 param iHeapSize :: 1024 param iUserHeapId :: 0 param iHeapId :: @segment_name param iReqHeapCount :: 0 param space :: "code" param iIsModifiable :: 1 } object SARAM47 :: MEM { param iComment :: "On-Chip SARAM4-7 in program memory" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param base :: 229376 param len :: 32768 param iAllocHeap :: 0 param iHeapSize :: 1024 param iUserHeapId :: 0 param iHeapId :: @segment_name param iReqHeapCount :: 0 param space :: "code" param iIsModifiable :: 1 } object mcbspCfg0 :: mcbspCfg { param iComment :: "" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param XIOEN_SETUP :: 1 param XIOEN2_SETUP :: 1 param CLKXM1_SETUP :: "External" param CLKXM2_SETUP :: "Slave" param CLKXP_SETUP :: "Falling Edge" param FSXP_SETUP :: "Active High" param DXENA_SETUP :: "Disable" param XDATDLY_SETUP :: "0-bit" param XPHASE_SETUP :: "Single-phase" param XWDLEN1_SETUP :: "32-bits" param XWDLEN2_SETUP :: "8-bits" param XFRLEN1_SETUP :: 2 param XFRLEN2_SETUP :: 1 param XSYNCERR_SETUP :: "Disable" param XINTM_SETUP :: "XRDY" param FSXM_SETUP :: "External" param XFIG_SETUP :: "Restart Transfer" param XCOMPAND_SETUP :: "No Companding-MSB First" param FSXM_FSGM_SETUP :: "External" param RIOEN_SETUP :: 1 param RIOEN2_SETUP :: 1 param CLKRM1_SETUP :: "External" param CLKRM2_SETUP :: "CLKX Driven" param CLKRP_SETUP :: "Rising Edge" param FSRP_SETUP :: "Active High" param RDATDLY_SETUP :: "0-bit" param RPHASE_SETUP :: "Single-phase" param RWDLEN1_SETUP :: "32-bits" param RWDLEN2_SETUP :: "8-bits" param RFRLEN1_SETUP :: 2 param RFRLEN2_SETUP :: 1 param RSYNCERR_SETUP :: "Disable" param RINTM_SETUP :: "RRDY" param FSRM_SETUP :: "External" param RFIG_SETUP :: "Restart Transfer" param RJUST_SETUP :: "Right-justify/zero-fill" param RCOMPAND_SETUP :: "No Companding-MSB First" param FREE_SOFT_SETUP :: "Stop Immediately" param CLKSTP_SETUP :: "Disable" param DLB_SETUP :: "Disable" param ABIS_SETUP :: "Disable" param GRST_SETUP :: 1 param CLKSM_SETUP :: "BCLKR Pin" param SCLKME_SETUP :: 128 param GSYNC_SETUP :: "Disable" param CLKSP_SETUP :: "Rising Edge of CLKS" param FSGM_SETUP :: "Disable" param FWID_SETUP :: 32 param CLKGDV_SETUP :: 1 param FPER_SETUP :: 1 param CLKX_IO :: "Input" param FSX_IO :: "Input" param CLKR_IO :: "Input" param FSR_IO :: "Input" param EN_DX :: "Output" param EN_DR :: "Input" param EN_CLKS :: "Input" param MCBSP_man :: 0 param SPCR1_VALUE :: 0 param SPCR2_VALUE :: 0 param RCR1_VALUE :: 416 param RCR2_VALUE :: 0 param XCR1_VALUE :: 416 param XCR2_VALUE :: 0 param SRGR1_VALUE :: 7936 param SRGR2_VALUE :: 0 param MCR1_VALUE :: 0 param MCR2_VALUE :: 0 param PCR_VALUE :: 131 param RMCM_RMCME_SETUP :: "All 128 Channels" param RMCM_RMCME_OLD_SETUP :: "All 128 Channels" param RPABLK_SETUP :: "Block 0. Channel 0-15" param RPBBLK_SETUP :: "Block 1. Channel 16-31" param RCERA_VALUE :: 0 param RCERB_VALUE :: 0 param RCERC_VALUE :: 0 param RCERD_VALUE :: 0 param RCERE_VALUE :: 0 param RCERF_VALUE :: 0 param RCERG_VALUE :: 0 param RCERH_VALUE :: 0 param XMCM_XMCME_SETUP :: "All 128 Channels" param XMCM_XMCME_OLD_SETUP :: "All 128 Channels" param XPABLK_SETUP :: "Block 0. Channel 0-15" param XPBBLK_SETUP :: "Block 1. Channel 16-31" param XCERA_VALUE :: 0 param XCERB_VALUE :: 0 param XCERC_VALUE :: 0 param XCERD_VALUE :: 0 param XCERE_VALUE :: 0 param XCERF_VALUE :: 0 param XCERG_VALUE :: 0 param XCERH_VALUE :: 0 param XMCM_01 :: "DXR written for enabled/unmasked channels,DX driven for enabled/unmasked channels" param XMCM_10 :: "DXR written for all channels in block,DX driven for unmasked channels" param ABIS_RCERA_VALUE :: 0 param ABIS_RCERB_VALUE :: 0 param ABIS_XCERA_VALUE :: 0 param ABIS_XCERB_VALUE :: 0 param RCERA :: 0 param RCERB :: 0 param RCERC :: 0 param RCERD :: 0 param RCERE :: 0 param RCERF :: 0 param RCERG :: 0 param RCERH :: 0 param XCERA :: 0 param XCERB :: 0 param XCERC :: 0 param XCERD :: 0 param XCERE :: 0 param XCERF :: 0 param XCERG :: 0 param XCERH :: 0 } object userTask :: TSK { param iComment :: "" param iIsUsed :: 1 param iId :: 0 param iDelUser :: "USER" param iDelMsg :: "ok" param iFXN :: @_UserTask param iARG0 :: 0 param iARG1 :: 0 param iARG2 :: 0 param iARG3 :: 0 param iARG4 :: 0 param iARG5 :: 0 param iARG6 :: 0 param iARG7 :: 0 param iAUTOSTK :: 1 param iMANSTK :: @null param iSTKSZ :: 256 param iSTKSEG :: IDATA param iPRI :: 1 param iENV :: 0 param iEXITFLAG :: 1 param iUSETSKNAME :: 0 param iSTATREG :: 0 param Order :: 2 }