jpeg_motion.cdb
上传用户:dahaojd
上传日期:2008-01-29
资源大小:14357k
文件大小:1020k
源码类别:

DSP编程

开发平台:

C/C++

  1.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2.         prop Format :: "%2d"
  3.         prop Style :: 0x02
  4.         prop Label :: " Systematic and Parity words/XEVT (NWORDSP)"
  5.         prop Visible :: 1
  6.         prop JSName :: "tcpIc3NwordSp"
  7.         prop Writable :: (CSL.TCP_SUPPORT)
  8.         prop NoGen :: 1
  9.         prop cGen :: 0
  10.         prop TabName :: "EDMA Operation"
  11.         prop Set :: (if ($1 > 65535 || $1 < 0) {self.error("Number of Systematic and parity Words range [0-65535]")} else {self.NWORDSP_SETUP = $1, self.IC3_VALUE = self.IC3_VALUE_update(), "ok"})
  12.     }
  13.     inst NWORDAP_SETUP :: 0 { 
  14.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  15.         prop Format :: "%2d"
  16.         prop Style :: 0x02
  17.         prop Label :: "  Apriori Write words/XEVT (NWORDAP) "
  18.         prop Visible :: 1
  19.         prop JSName :: "tcpIc4NwordAp"
  20.         prop Writable :: if (CSL.TCP_SUPPORT && self.MODE_SETUP == "Shared(SP)") {1} else {0}
  21.         prop NoGen :: 1
  22.         prop cGen :: 0
  23.         prop TabName :: "EDMA Operation"
  24.         prop Set :: (if ($1 > 65535 || $1 < 0) {self.error("Number of Apriori Words/XEVT range [0-65535]")} else {self.NWORDAP_SETUP = $1, self.IC4_VALUE = self.IC4_VALUE_update(), "ok"})
  25.     }
  26.     inst NWORDEXT_SETUP :: 0 { 
  27.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  28.         prop Format :: "%2d"
  29.         prop Style :: 0x02
  30.         prop Label :: "  Extrinsic Read words/REVT (NWORDEXT) "
  31.         prop Visible :: 1
  32.         prop JSName :: "tcpIc4NwordExt"
  33.         prop Writable :: if (CSL.TCP_SUPPORT && self.MODE_SETUP == "Shared(SP)") {1} else {0}
  34.         prop NoGen :: 1
  35.         prop cGen :: 0
  36.         prop TabName :: "EDMA Operation"
  37.         prop Set :: (if ($1 > 65535 || $1 < 0) {self.error("Number of Extrinsic Words range [0-65535]")} else {self.NWORDEXT_SETUP = $1, self.IC4_VALUE = self.IC4_VALUE_update(), "ok"})
  38.     }
  39.     inst NWORDHD_SETUP :: 0 { 
  40.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  41.         prop Format :: "%2d"
  42.         prop Style :: 0x02
  43.         prop Label :: "  Hard Decision words/REVT (NWORDHD) "
  44.         prop Visible :: 1
  45.         prop JSName :: "tcpIc5NwordHd"
  46.         prop Writable :: if (CSL.TCP_SUPPORT && self.MODE_SETUP == "Standalone(SA)") {1} else {0}
  47.         prop NoGen :: 1
  48.         prop cGen :: 0
  49.         prop TabName :: "EDMA Operation"
  50.         prop Set :: (if ($1 > 255 || $1 < 0) {self.error("Number of Hard Decision Words range [0-255]")} else {self.NWORDHD_SETUP = $1, self.IC5_VALUE = self.IC5_VALUE_update(), "ok"})
  51.     }
  52.     inst IC0_VALUE :: self.IC0_VALUE_update() { 
  53.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  54.         prop Label :: "Input Configuration Reg 0 (IC0)"
  55.         prop Format :: "0x%08X"
  56.         prop Style :: 0x02
  57.         prop JSName :: "tcpIc0"
  58.         prop Visible :: 1
  59.         prop Writable :: CSL.TCP_SUPPORT
  60.         prop NoGen :: 1
  61.         prop cGen :: 1
  62.         prop cType :: "Uint32"
  63.         prop TabName :: "Advanced"
  64.         prop Set :: (self.IC0_VALUE = ($1 & 0xFFFFF70E), self.IC0_SETUP_update($1), "ok")
  65.     }
  66.     inst IC1_VALUE :: self.IC1_VALUE_update() { 
  67.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  68.         prop Label :: "Input Configuration Reg 1 (IC1)"
  69.         prop Format :: "0x%08X"
  70.         prop Style :: 0x02
  71.         prop JSName :: "tcpIc1"
  72.         prop Visible :: 1
  73.         prop Writable :: CSL.TCP_SUPPORT
  74.         prop NoGen :: 1
  75.         prop cGen :: 1
  76.         prop cType :: "Uint32"
  77.         prop TabName :: "Advanced"
  78.         prop Set :: (self.IC1_VALUE = ($1 & 0x7F7FFFFF), self.IC1_SETUP_update($1), "ok")
  79.     }
  80.     inst IC2_VALUE :: self.IC2_VALUE_update() { 
  81.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  82.         prop Label :: "Input Configuration Reg 2 (IC2)"
  83.         prop Format :: "0x%08X"
  84.         prop Style :: 0x02
  85.         prop JSName :: "tcpIc2"
  86.         prop Visible :: 1
  87.         prop Writable :: CSL.TCP_SUPPORT
  88.         prop NoGen :: 1
  89.         prop cGen :: 1
  90.         prop cType :: "Uint32"
  91.         prop TabName :: "Advanced"
  92.         prop Set :: (self.IC2_VALUE = ($1 & 0xFF1FF3F), self.IC2_SETUP_update($1), "ok")
  93.     }
  94.     inst IC3_VALUE :: self.IC3_VALUE_update() { 
  95.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  96.         prop Label :: "Input Configuration Reg 3 (IC3)"
  97.         prop Format :: "0x%08X"
  98.         prop Style :: 0x02
  99.         prop JSName :: "tcpIc3"
  100.         prop Visible :: 1
  101.         prop Writable :: CSL.TCP_SUPPORT
  102.         prop NoGen :: 1
  103.         prop cGen :: 1
  104.         prop cType :: "Uint32"
  105.         prop TabName :: "Advanced"
  106.         prop Set :: (self.IC3_VALUE = $1, self.IC3_SETUP_update($1), "ok")
  107.     }
  108.     inst IC4_VALUE :: self.IC4_VALUE_update() { 
  109.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  110.         prop Label :: "Input Configuration Reg 4 (IC4)"
  111.         prop Format :: "0x%08X"
  112.         prop Style :: 0x02
  113.         prop JSName :: "tcpIc4"
  114.         prop Visible :: 1
  115.         prop Writable :: if (CSL.TCP_SUPPORT && self.MODE_SETUP == "Shared(SP)") {1} else {0}
  116.         prop NoGen :: 1
  117.         prop cGen :: 1
  118.         prop cType :: "Uint32"
  119.         prop TabName :: "Advanced"
  120.         prop Set :: (self.IC4_VALUE = $1, self.IC4_SETUP_update($1), "ok")
  121.     }
  122.     inst IC5_VALUE :: self.IC5_VALUE_update() { 
  123.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  124.         prop Label :: "Input Configuration Reg 5 (IC5)"
  125.         prop Format :: "0x%08X"
  126.         prop Style :: 0x02
  127.         prop JSName :: "tcpIc5"
  128.         prop Visible :: 1
  129.         prop Writable :: CSL.TCP_SUPPORT
  130.         prop NoGen :: 1
  131.         prop cGen :: 1
  132.         prop cType :: "Uint32"
  133.         prop TabName :: "Advanced"
  134.         prop Set :: (self.IC5_VALUE = $1, self.IC5_SETUP_update($1), "ok")
  135.     }
  136.     inst IC6_VALUE :: 0x00000000 { 
  137.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  138.         prop Label :: "Input Configuration Reg 6 (IC6)"
  139.         prop Format :: "0x%08X"
  140.         prop Style :: 0x02
  141.         prop Writable :: CSL.TCP_SUPPORT
  142.         prop NoGen :: 1
  143.         prop cGen :: 1
  144.         prop cType :: "Uint32"
  145.         prop TabName :: "Advanced"
  146.     }
  147.     inst IC7_VALUE :: 0x00000000 { 
  148.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  149.         prop Label :: "Input Configuration Reg 7 (IC7)"
  150.         prop Format :: "0x%08X"
  151.         prop Style :: 0x02
  152.         prop Writable :: CSL.TCP_SUPPORT
  153.         prop NoGen :: 1
  154.         prop cGen :: 1
  155.         prop cType :: "Uint32"
  156.         prop TabName :: "Advanced"
  157.     }
  158.     inst IC8_VALUE :: 0x00000000 { 
  159.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  160.         prop Label :: "Input Configuration Reg 8 (IC8)"
  161.         prop Format :: "0x%08X"
  162.         prop Style :: 0x02
  163.         prop Writable :: CSL.TCP_SUPPORT
  164.         prop NoGen :: 1
  165.         prop cGen :: 1
  166.         prop cType :: "Uint32"
  167.         prop TabName :: "Advanced"
  168.     }
  169.     inst IC9_VALUE :: 0x00000000 { 
  170.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  171.         prop Label :: "Input Configuration Reg 9 (IC9)"
  172.         prop Format :: "0x%08X"
  173.         prop Style :: 0x02
  174.         prop Writable :: CSL.TCP_SUPPORT
  175.         prop NoGen :: 1
  176.         prop cGen :: 1
  177.         prop cType :: "Uint32"
  178.         prop TabName :: "Advanced"
  179.     }
  180.     inst IC10_VALUE :: 0x00000000 { 
  181.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  182.         prop Label :: "Input Configuration Reg 10 (IC10)"
  183.         prop Format :: "0x%08X"
  184.         prop Style :: 0x02
  185.         prop Writable :: CSL.TCP_SUPPORT
  186.         prop NoGen :: 1
  187.         prop cGen :: 1
  188.         prop cType :: "Uint32"
  189.         prop TabName :: "Advanced"
  190.     }
  191.     inst IC11_VALUE :: 0x00000000 { 
  192.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  193.         prop Label :: "Input Configuration Reg 11 (IC11)"
  194.         prop Format :: "0x%08X"
  195.         prop Style :: 0x02
  196.         prop Writable :: CSL.TCP_SUPPORT
  197.         prop NoGen :: 1
  198.         prop cGen :: 1
  199.         prop cType :: "Uint32"
  200.         prop TabName :: "Advanced"
  201.     }
  202. }
  203. type hTcp {
  204.     prop IsContainedIn :: TCPFOLDER
  205.     prop name :: "hTcp"
  206.     prop Label :: "TCP Resource Manager"
  207.     prop JSName :: "HTCP"
  208.     prop NoGen :: 1
  209.     prop GlobalPropertyPage :: "{B936FB81-49A5-11d4-967C-0050048381C6}"
  210.     prop InstancePropertyPage :: "{B936FB81-49A5-11d4-967C-0050048381C5}"
  211.     prop GlobalIcon :: 197
  212.     prop InstanceIcon :: 198
  213.     prop GlobalHelpTopic :: (1083)
  214.     prop cGen :: 1
  215.     global TCP_INITPARAM_ENABLE :: 0 { 
  216.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  217.         prop Label :: "Enable Parameters Setting"
  218.         prop JSName :: "tcpEnableParams"
  219.         prop Visible :: 1
  220.         prop Writable :: (CSL.TCP_SUPPORT)
  221.         prop NoGen :: 0
  222.         prop Set :: ($a = 0, scan ($b; tcpBaseParam) {$a = $a + 1}, if ($1 == 1 && $a == 1 && self.TCP_INITPARAM == TCP_PARAMNULL) {" You must create a new BaseParams object"} else {self.TCP_INITPARAM_ENABLE = $1, if ($1 == 0) {self.TCP_INITPARAM = TCP_PARAMNULL, self.TCP_PARAMCONFIGNAME = "NULL", self.TCP_SETPARAM_ENABLE = 0} , "ok"})
  223.     }
  224.     global TCP_INITPARAM :: TCP_PARAMNULL { 
  225.         prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
  226.         prop MemberType :: tcpBaseParam
  227.         prop Label :: " Pre-Initialize with"
  228.         prop JSName :: "tcpBaseParamInit"
  229.         prop Visible :: 1
  230.         prop Writable :: if (CSL.TCP_SUPPORT) && (self.TCP_INITPARAM_ENABLE == 1) {1} else {0}
  231.     }
  232.     global TCP_PARAMCONFIGNAME :: "NULL" { 
  233.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  234.         prop Label :: "Output TCP Params ConfigName (ex: tcpParam) "
  235.         prop JSName :: "tcpParamConfigName"
  236.         prop Visible :: 1
  237.         prop Writable :: if (CSL.TCP_SUPPORT) && (self.TCP_INITPARAM_ENABLE == 1) {1} else {0}
  238.         prop Set :: (if ($1 == "") {self.TCP_PARAMCONFIGNAME = "NULL", "ok"} else {self.TCP_PARAMCONFIGNAME = $1, "ok"})
  239.     }
  240.     global TCP_SETPARAM_ENABLE :: 0 { 
  241.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  242.         prop Label :: "Set TCP Params Values to the IC Config. Obj"
  243.         prop JSName :: "tcpSetParamEnable"
  244.         prop Visible :: 1
  245.         prop Writable :: (CSL.TCP_SUPPORT && self.TCP_INITPARAM_ENABLE)
  246.         prop NoGen :: 0
  247.         prop Set :: ($a = 0, scan ($b; tcpCfg) {$a = $a + 1}, if ($1 == 1 && $a == 1 && self.TCP_INIT == TCP_NOTHING) {" You must create a configuration object"} else {self.TCP_SETPARAM_ENABLE = $1, if ($1 == 0 && self.TCP_INIT_ENABLE == 0) {self.TCP_INIT = TCP_NOTHING} , "ok"})
  248.     }
  249.     global TCP_INIT_ENABLE :: 0 { 
  250.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  251.         prop Label :: "Enable TCP Pre-Initialization "
  252.         prop JSName :: "tcpEnablePreInit"
  253.         prop Visible :: 1
  254.         prop Writable :: (CSL.TCP_SUPPORT)
  255.         prop NoGen :: 0
  256.         prop Set :: ($a = 0, scan ($b; tcpCfg) {$a = $a + 1}, if ($1 == 1 && $a == 1 && self.TCP_INIT == TCP_NOTHING) {" You must create a new configuration object"} else {self.TCP_INIT_ENABLE = $1, if ($1 == 0 && self.TCP_SETPARAM_ENABLE == 0) {self.TCP_INIT = TCP_NOTHING} , "ok"})
  257.     }
  258.     global TCP_INIT :: TCP_NOTHING { 
  259.         prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
  260.         prop MemberType :: tcpCfg
  261.         prop Label :: " Pre-Initialize with"
  262.         prop JSName :: "tcpPreInit"
  263.         prop Visible :: 1
  264.         prop Writable :: if (CSL.TCP_SUPPORT) && ((self.TCP_INIT_ENABLE == 1) || (self.TCP_SETPARAM_ENABLE == 1)) {1} else {0}
  265.     }
  266. }
  267. object TCP_NOTHING :: tcpCfg {
  268.     param iComment :: "<add comments here>"
  269.     param iIsUsed :: 0
  270.     param iId :: 0
  271.     param iDelUser :: "USER"
  272.     param iDelMsg :: "ok"
  273.     param STANDARD_SETUP :: "3GPP"
  274.     param MODE_SETUP :: "Standalone(SA)"
  275.     param MAP_SETUP :: "MAP1(1st Iter.)"
  276.     param RATE_SETUP :: "None"
  277.     param OUTF_SETUP :: "Disable"
  278.     param INTER_SETUP :: "Disable"
  279.     param PROLSIZE_SETUP :: 0
  280.     param NUMSUBBLK_SETUP :: 0
  281.     param LASTNUMSUBBLK_SETUP :: 0
  282.     param MAXIT_SETUP :: 0
  283.     param SNR_SETUP :: 0
  284.     param NWORDINTER_SETUP :: 0
  285.     param NWORDSP_SETUP :: 0
  286.     param NWORDAP_SETUP :: 0
  287.     param NWORDEXT_SETUP :: 0
  288.     param NWORDHD_SETUP :: 0
  289.     param IC0_VALUE :: 0
  290.     param IC1_VALUE :: 0
  291.     param IC2_VALUE :: 0
  292.     param IC3_VALUE :: 0
  293.     param IC4_VALUE :: 0
  294.     param IC5_VALUE :: 0
  295.     param IC6_VALUE :: 0
  296.     param IC7_VALUE :: 0
  297.     param IC8_VALUE :: 0
  298.     param IC9_VALUE :: 0
  299.     param IC10_VALUE :: 0
  300.     param IC11_VALUE :: 0
  301. }
  302. object TCP_PARAMNULL :: tcpBaseParam {
  303.     param iComment :: "<add comments here>"
  304.     param iIsUsed :: 0
  305.     param iId :: 0
  306.     param iDelUser :: "USER"
  307.     param iDelMsg :: "ok"
  308.     param STANDARD_SETUP :: "3GPP"
  309.     param RATE_SETUP :: "None"
  310.     param PROLSIZE_SETUP :: 0
  311.     param MAXIT_SETUP :: 0
  312.     param SNR_SETUP :: 0
  313.     param INTER_SETUP :: "Disable"
  314.     param OUTF_SETUP :: "Disable"
  315. }
  316. type TIMERFOLDER {
  317.     isa ModuleFolder
  318.     prop IsContainedIn :: CSL
  319.     prop name :: "TIMER"
  320.     prop Label :: "TIMER - Timer Device"
  321.     prop NoGen :: 1
  322.     prop GlobalHelpTopic :: (1060)
  323.     prop GlobalPropertyPage :: "{33A68984-598D-11d4-B5CC-0050DA2E2CC0}"
  324.     prop InstancePropertyPage :: "{33A68985-598D-11d4-B5CC-0050DA2E2CC0}"
  325.     prop GlobalIcon :: 161
  326.     prop InstanceIcon :: 162
  327.     global gUser :: "USER" { 
  328.         prop Visible :: 0
  329.         prop Writable :: 0
  330.         prop NoGen :: 1
  331.     }
  332.     global gSetOf :: 0 { 
  333.         prop Visible :: 0
  334.         prop Writable :: 0
  335.         prop NoGen :: 1
  336.     }
  337.     global gNumOf :: 0 { 
  338.         prop Visible :: 0
  339.         prop Writable :: 0
  340.         prop NoGen :: 1
  341.     }
  342.     global gDirty :: 0 { 
  343.         prop Visible :: 0
  344.         prop Writable :: 0
  345.         prop NoGen :: 1
  346.     }
  347.     global gInitFlag :: 1 { 
  348.         prop Visible :: 0
  349.         prop Writable :: 0
  350.         prop NoGen :: 1
  351.     }
  352.     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) { 
  353.         prop Visible :: 0
  354.         prop Writable :: 0
  355.         prop NoGen :: 1
  356.     }
  357. }
  358. type timerCfg {
  359.     isa ObjectMgr
  360.     prop Name :: "timerCfg"
  361.     prop Label :: "TIMER Configuration Manager"
  362.     prop JSName :: "TIMER"
  363.     prop IsContainedIn :: TIMERFOLDER
  364.     prop NoGen :: 1
  365.     prop GlobalHelpTopic :: (1061)
  366.     prop InstanceHelpTopic :: (1061)
  367.     prop GlobalPropertyPage :: "{33A68982-598D-11d4-B5CC-0050DA2E2CC0}"
  368.     prop InstancePropertyPage :: "{33A68983-598D-11d4-B5CC-0050DA2E2CC0}"
  369.     prop GlobalIcon :: 161
  370.     prop InstanceIcon :: 162
  371.     prop cGen :: 1
  372.     prop cStruct :: 1
  373.     prop cStructType :: "TIMER_Config"
  374.     prop cHeaderName :: if self.gNumOf > 0 {"csl_timer.h"} else {""}
  375.     prop cStructQual :: "far"
  376.     prop localDelete :: (self.myDelete)
  377.     prop myDelete :: ($a = 0, scan ($b; timerCfg) {$a = $a + 1}, if ($a == 2) {scan ($c; hTimer) {$c.TIMER_INIT_ENABLE = 0}} , "ok")
  378.     prop CLKSRC_CTL :: (if (self.CLKSRC_SETUP == "(CPU clock)/4") {0x00000200} else {if (self.CLKSRC_SETUP == "(CPU clock)/8") {0x00000200} else {0x00000000}})
  379.     prop CP_CTL :: (if (self.CP_SETUP == "Clock mode") {0x00000100} else {0x00000000})
  380.     prop PWID_CTL :: (if (self.PWID_SETUP == "Two Clock cycles") {0x00000010} else {0x00000000})
  381.     prop FUNC_CTL :: (if (self.FUNC_SETUP == "Timer Output") {0x00000001} else {0x00000000})
  382.     prop DATOUT_CTL :: ((self.DATOUT_SETUP << 2))
  383.     prop INVOUT_CTL :: (if (self.INVOUT_SETUP == "Inverted") {0x00000002} else {0x00000000})
  384.     prop INVINP_CTL :: (if (self.INVINP_SETUP == "Inverted") {0x00000400} else {0x00000000})
  385.     prop GO_HLD_CTL :: (if (self.GO_HLD_SETUP == "Hold") {0x00000000} else {if (self.GO_HLD_SETUP == "Restart (no-reset)") {0x00000080} else {0x000000c0}})
  386.     prop PERIOD_PRD :: ((self.PERIOD_SETUP))
  387.     prop COUNTER_CNT :: ((self.COUNTER_SETUP))
  388.     prop CTL_VALUE_update :: (self.INVINP_CTL() | self.CLKSRC_CTL() | self.CP_CTL() | self.GO_HLD_CTL() | self.PWID_CTL() | self.DATOUT_CTL() | self.INVOUT_CTL() | self.FUNC_CTL())
  389.     prop CTL_SETUP_update :: (self.INVINP_SETUP = if ($1 & 0x00000400) {"Inverted"} else {"Uninverted"}, if (CSL.C64_SUPPORT) {self.CLKSRC_SETUP = if ($1 & 0x00000200) {"(CPU clock)/8"} else {"External Source"}} else {self.CLKSRC_SETUP = if ($1 & 0x00000200) {"(CPU clock)/4"} else {"External Source"}}, self.CP_SETUP = if ($1 & 0x00000100) {"Clock mode"} else {"Pulse mode"}, self.GO_HLD_SETUP = ($a = ($1 & 0x000000c0), if ($a == 0x000000c0) {"Start with reset"} else {if ($a == 0x00000080) {"Restart (no-reset)"} else {"Hold"}}), self.PWID_SETUP = if ($1 & 0x00000010) {"Two clock cycles"} else {"One clock cycle"}, self.DATOUT_SETUP = (($1 & 0x00000004) >> 2), self.INVOUT_SETUP = if ($1 & 0x00000002) {"Inverted"} else {"Uninverted"}, self.FUNC_SETUP = if ($1 & 0x00000001) {"Timer Output"} else {"General-Purpose Output"})
  390.     prop PRD_VALUE_update :: (self.PERIOD_PRD())
  391.     prop PRD_SETUP_update :: (self.PERIOD_SETUP = $1)
  392.     prop CNT_VALUE_update :: (self.COUNTER_CNT())
  393.     prop CNT_SETUP_update :: (self.COUNTER_SETUP = $1)
  394.     global gUser :: "USER" { 
  395.         prop Visible :: 0
  396.         prop Writable :: 0
  397.         prop NoGen :: 1
  398.     }
  399.     global gSetOf :: 0 { 
  400.         prop Visible :: 0
  401.         prop Writable :: 0
  402.         prop NoGen :: 1
  403.     }
  404.     global gNumOf :: 0 { 
  405.         prop Visible :: 0
  406.         prop Writable :: 0
  407.         prop NoGen :: 1
  408.     }
  409.     global gDirty :: 0 { 
  410.         prop Visible :: 0
  411.         prop Writable :: 0
  412.         prop NoGen :: 1
  413.     }
  414.     global gInitFlag :: 1 { 
  415.         prop Visible :: 0
  416.         prop Writable :: 0
  417.         prop NoGen :: 1
  418.     }
  419.     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) { 
  420.         prop Visible :: 0
  421.         prop Writable :: 0
  422.         prop NoGen :: 1
  423.     }
  424.     inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} { 
  425.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  426.         prop Label :: "comment"
  427.         prop JSName :: "comment"
  428.         prop Visible :: 1
  429.         prop Writable :: if self.iDelUser == "USER" {1} else {0}
  430.         prop NoGen :: 1
  431.     }
  432.     inst iIsUsed :: 0 { 
  433.         prop Visible :: 0
  434.         prop Writable :: 0
  435.         prop NoGen :: 1
  436.     }
  437.     inst iId :: 0 { 
  438.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  439.         prop Style :: 0x01
  440.         prop Visible :: 0
  441.         prop Writable :: 1
  442.         prop NoGen :: 1
  443.     }
  444.     inst iDelUser :: "USER" { 
  445.         prop Visible :: 0
  446.         prop Writable :: 0
  447.         prop NoGen :: 1
  448.     }
  449.     inst iDelMsg :: "ok" { 
  450.         prop Visible :: 0
  451.         prop Writable :: 0
  452.         prop NoGen :: 1
  453.     }
  454.     inst CLKSRC_SETUP :: "External Source" { 
  455.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  456.         prop Enum :: "External Source,(CPU clock)/4,(CPU clock)/8"
  457.         prop Label :: "Input Clock Source (CLKSRC) "
  458.         prop JSName :: "timerCtlClksrc"
  459.         prop Visible :: 1
  460.         prop Writable :: CSL.TIMER_SUPPORT
  461.         prop NoGen :: 1
  462.         prop TabName :: "Clock Control "
  463.         prop Set :: (if (CSL.C64_SUPPORT) {if ($1 == "(CPU clock)/4") {self.error("Invalid Selection for C64x")} else {self.CLKSRC_SETUP = $1, self.CTL_VALUE = self.CTL_VALUE_update(), "ok"}} else {if ($1 == "(CPU clock)/8") {self.error("Invalid Selection, For C64x Only")} else {self.CLKSRC_SETUP = $1, self.CTL_VALUE = self.CTL_VALUE_update(), "ok"}})
  464.     }
  465.     inst CP_SETUP :: "Pulse mode" { 
  466.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  467.         prop Enum :: "Pulse mode,Clock mode"
  468.         prop Label :: "Clock/Pulse Mode (CP) "
  469.         prop JSName :: "timerCtlCp"
  470.         prop Visible :: 1
  471.         prop Writable :: CSL.TIMER_SUPPORT
  472.         prop NoGen :: 1
  473.         prop TabName :: "Clock Control "
  474.         prop Set :: (self.CP_SETUP = $1, self.CTL_VALUE = self.CTL_VALUE_update(), "ok")
  475.     }
  476.     inst PWID_SETUP :: "One clock cycle" { 
  477.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  478.         prop Enum :: "One Clock cycle,Two Clock cycles"
  479.         prop Label :: "Pulse Width (PWID)"
  480.         prop JSName :: "timerCtlPwid"
  481.         prop Visible :: 1
  482.         prop Writable :: CSL.TIMER_SUPPORT && (if (self.CP_SETUP == "Pulse mode") {1} else {0})
  483.         prop NoGen :: 1
  484.         prop TabName :: "Clock Control "
  485.         prop Set :: (self.PWID_SETUP = $1, self.CTL_VALUE = self.CTL_VALUE_update(), "ok")
  486.     }
  487.     inst FUNC_SETUP :: "General-Purpose Output" { 
  488.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  489.         prop Enum :: "General-Purpose Output,Timer Output"
  490.         prop Label :: "Function of TOUT (FUNC)"
  491.         prop JSName :: "timerCtlFunc"
  492.         prop Visible :: 1
  493.         prop Writable :: CSL.TIMER_SUPPORT
  494.         prop NoGen :: 1
  495.         prop TabName :: "Pin Control "
  496.         prop Set :: (self.FUNC_SETUP = $1, self.CTL_VALUE = self.CTL_VALUE_update(), "ok")
  497.     }
  498.     inst DATOUT_SETUP :: 0 { 
  499.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  500.         prop Label :: "    DATA output (TOUT pin)"
  501.         prop Visible :: 1
  502.         prop JSName :: "timerCtlDatout"
  503.         prop Writable :: CSL.TIMER_SUPPORT && (if (self.FUNC_SETUP == "General-Purpose Output") {1} else {0})
  504.         prop NoGen :: 1
  505.         prop TabName :: "Pin Control "
  506.         prop Set :: (if ($1 < 0 || $1 > 1) {self.error("Binary value required : 0 or 1")} else {self.DATOUT_SETUP = $1, self.CTL_VALUE = self.CTL_VALUE_update(), "ok"})
  507.     }
  508.     inst INVOUT_SETUP :: "Uninverted" { 
  509.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  510.         prop Enum :: "Uninverted,Inverted"
  511.         prop Label :: "    TOUT Inverter Control (INVOUT)"
  512.         prop JSName :: "timerCtlInvout"
  513.         prop Visible :: 1
  514.         prop Writable :: (if (self.FUNC_SETUP == "Timer Output") {1} else {0})
  515.         prop NoGen :: 1
  516.         prop TabName :: "Pin Control "
  517.         prop Set :: (self.INVOUT_SETUP = $1, self.CTL_VALUE = self.CTL_VALUE_update(), "ok")
  518.     }
  519.     inst INVINP_SETUP :: "Uninverted" { 
  520.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  521.         prop Enum :: "Uninverted,Inverted"
  522.         prop Label :: "    TINP Inverter Control (INVINP)"
  523.         prop JSName :: "timerCtlInvinp"
  524.         prop Visible :: 1
  525.         prop Writable :: CSL.TIMER_SUPPORT && (if (self.CLKSRC_SETUP == "External Source") {1} else {0})
  526.         prop NoGen :: 1
  527.         prop TabName :: "Pin Control "
  528.         prop Set :: (self.INVINP_SETUP = $1, self.CTL_VALUE = self.CTL_VALUE_update(), "ok")
  529.     }
  530.     inst GO_HLD_SETUP :: "Hold" { 
  531.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  532.         prop Enum :: "Hold,Restart (no-reset),Start with reset"
  533.         prop Label :: "Timer Operation"
  534.         prop JSName :: "timerCtlGoHold"
  535.         prop Visible :: 1
  536.         prop Writable :: CSL.TIMER_SUPPORT
  537.         prop NoGen :: 1
  538.         prop TabName :: "Counter Control "
  539.         prop Set :: (self.GO_HLD_SETUP = $1, self.CTL_VALUE = self.CTL_VALUE_update(), "ok")
  540.     }
  541.     inst PERIOD_SETUP :: 0 { 
  542.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  543.         prop Format :: "0x%08X"
  544.         prop Label :: "Period Value "
  545.         prop JSName :: "timerPrd"
  546.         prop Visible :: 1
  547.         prop Writable :: CSL.TIMER_SUPPORT
  548.         prop NoGen :: 1
  549.         prop TabName :: "Counter Control "
  550.         prop Set :: (self.PERIOD_SETUP = $1, self.PRD_VALUE = self.PRD_VALUE_update(), "ok")
  551.     }
  552.     inst COUNTER_SETUP :: 0 { 
  553.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  554.         prop Format :: "0x%08X"
  555.         prop Label :: "Counter value (optional)"
  556.         prop JSName :: "timerCnt"
  557.         prop Visible :: 1
  558.         prop Writable :: CSL.TIMER_SUPPORT
  559.         prop NoGen :: 1
  560.         prop TabName :: "Counter Control "
  561.         prop Set :: (self.COUNTER_SETUP = $1, self.CNT_VALUE = self.CNT_VALUE_update(), "ok")
  562.     }
  563.     inst CTL_VALUE :: self.CTL_VALUE_update() { 
  564.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  565.         prop Label :: "Control Register (CTL) "
  566.         prop Format :: "0x%08X"
  567.         prop JSName :: "timerCtlAdv"
  568.         prop Visible :: 1
  569.         prop Writable :: CSL.TIMER_SUPPORT
  570.         prop NoGen :: 0
  571.         prop cGen :: 1
  572.         prop cType :: "Uint32"
  573.         prop TabName :: "Advanced"
  574.         prop Set :: ($a = $1 & 0x000000c0, if ($a == 0x00000040) {self.error("Fields GO='1'& HOLD='0' : Undefined Timer Operation - See Counter Control Page")} else {$b = $1 & 0xFFFFF000, if ($b != 0) {self.error("Bit field (bit[12..31]) is reserved")} else {$c = $1 & 0x00000020, if ($c != 0) {self.error("Bit field 5 is reserved")} else {self.CTL_VALUE = $1, self.CTL_SETUP_update($1), "ok"}}})
  575.     }
  576.     inst PRD_VALUE :: self.PRD_VALUE_update() { 
  577.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  578.         prop Label :: "Period Register (PRD) "
  579.         prop Format :: "0x%08X"
  580.         prop JSName :: "timerPrdAdv"
  581.         prop Visible :: 1
  582.         prop Writable :: CSL.TIMER_SUPPORT
  583.         prop NoGen :: 0
  584.         prop cGen :: 1
  585.         prop cType :: "Uint32"
  586.         prop TabName :: "Advanced"
  587.         prop Set :: (self.PRD_VALUE = $1, self.PRD_SETUP_update($1), "ok")
  588.     }
  589.     inst CNT_VALUE :: self.CNT_VALUE_update() { 
  590.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  591.         prop Label :: "Counter Register (CNT) "
  592.         prop Format :: "0x%08X"
  593.         prop JSName :: "timerCntAdv"
  594.         prop Visible :: 1
  595.         prop Writable :: CSL.TIMER_SUPPORT
  596.         prop NoGen :: 0
  597.         prop cGen :: 1
  598.         prop cType :: "Uint32"
  599.         prop TabName :: "Advanced"
  600.         prop Set :: (self.CNT_VALUE = $1, self.CNT_SETUP_update($1), "ok")
  601.     }
  602. }
  603. type hTimer {
  604.     isa ObjectMgr
  605.     prop name :: "hTimer"
  606.     prop Label :: "TIMER Resource Manager"
  607.     prop JSName :: "HTIMER"
  608.     prop IsContainedIn :: TIMERFOLDER
  609.     prop NoGen :: 1
  610.     prop GlobalPropertyPage :: "{33A68980-598D-11d4-B5CC-0050DA2E2CC0}"
  611.     prop InstancePropertyPage :: "{33A68981-598D-11d4-B5CC-0050DA2E2CC0}"
  612.     prop GlobalIcon :: 161
  613.     prop InstanceIcon :: 162
  614.     prop GlobalHelpTopic :: (1062)
  615.     prop InstanceHelpTopic :: (1063)
  616.     prop maxObjs :: 3
  617.     prop localCanCreate :: (self.error("New Timer handle objects cannot be created"))
  618.     prop localCanDelete :: (self.error("Timer handle objects cannot be deleted"))
  619.     prop chipcall :: (scan ($i; hTimer) {if (CSL.CHIP_6400 && $i.DEVICE == "TIMER2") {$i.TIMER_HANDLE_ENABLE = 0, $i.TIMER_INIT_ENABLE = 0, $i.cOpenArg0 = "TIMER_None"} }, if (self.CHIPCHAIN != nil) {$e = self.CHIPCHAIN.chipcall()} , "ok")
  620.     prop localInit :: (self.CHIPCHAIN = GBL.CHIPCHAIN, GBL.CHIPCHAIN = hTimer)
  621.     prop cGen :: 1
  622.     prop cHeaderName :: ($a = "", scan ($b; hTimer) {if ($b.TIMER_HANDLE_ENABLE == 1) {$a = "csl_timer.h"} }, $a)
  623.     prop cStructQual :: "far"
  624.     prop cOpenName :: "TIMER_open"
  625.     prop cConfigName :: "TIMER_config"
  626.     prop cHandle :: (self.cOpenGen)
  627.     prop cHandleType :: "TIMER_Handle"
  628.     prop cHandleName :: self.HandleName
  629.     global gUser :: "USER" { 
  630.         prop Visible :: 0
  631.         prop Writable :: 0
  632.         prop NoGen :: 1
  633.     }
  634.     global gSetOf :: 1 { 
  635.         prop Visible :: 0
  636.         prop Writable :: 0
  637.         prop NoGen :: 1
  638.     }
  639.     global gNumOf :: 3 { 
  640.         prop Visible :: 0
  641.         prop Writable :: 0
  642.         prop NoGen :: 1
  643.     }
  644.     global gDirty :: 0 { 
  645.         prop Visible :: 0
  646.         prop Writable :: 0
  647.         prop NoGen :: 1
  648.     }
  649.     global gInitFlag :: 1 { 
  650.         prop Visible :: 0
  651.         prop Writable :: 0
  652.         prop NoGen :: 1
  653.     }
  654.     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) { 
  655.         prop Visible :: 0
  656.         prop Writable :: 0
  657.         prop NoGen :: 1
  658.     }
  659.     global CHIPCHAIN :: hMcbsp { 
  660.         prop Visible :: 0
  661.         prop Writable :: 0
  662.         prop NoGen :: 1
  663.     }
  664.     inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} { 
  665.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  666.         prop Label :: "comment"
  667.         prop JSName :: "comment"
  668.         prop Visible :: 1
  669.         prop Writable :: if self.iDelUser == "USER" {1} else {0}
  670.         prop NoGen :: 1
  671.     }
  672.     inst iIsUsed :: 0 { 
  673.         prop Visible :: 0
  674.         prop Writable :: 0
  675.         prop NoGen :: 1
  676.     }
  677.     inst iId :: 0 { 
  678.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  679.         prop Style :: 0x01
  680.         prop Visible :: 0
  681.         prop Writable :: 1
  682.         prop NoGen :: 1
  683.     }
  684.     inst iDelUser :: "USER" { 
  685.         prop Visible :: 0
  686.         prop Writable :: 0
  687.         prop NoGen :: 1
  688.     }
  689.     inst iDelMsg :: "ok" { 
  690.         prop Visible :: 0
  691.         prop Writable :: 0
  692.         prop NoGen :: 1
  693.     }
  694.     inst TIMER_HANDLE_ENABLE :: 0 { 
  695.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  696.         prop Label :: "Open Timer Device"
  697.         prop JSName :: "timerHandleEnable"
  698.         prop Visible :: 1
  699.         prop Writable :: if (CSL.TIMER_SUPPORT && ((self.DEVICE == "TIMER0" || self.DEVICE == "TIMER1"))) || (CSL.TIMER2_SUPPORT) {1} else {0}
  700.         prop NoGen :: 1
  701.         prop Set :: ($a = 0, if ($1 == 0) {self.TIMER_HANDLE_ENABLE = $1, self.TIMER_INIT_ENABLE = $1, self.TIMER_INIT = TIMER_NOTHING, if (self.DEVICE == "TIMER0") {HWI_INT14.client = "USER"} else {if (self.DEVICE == "TIMER1") {HWI_INT15.client = "USER"} }, self.cOpenArg0 = "TIMER_None", "ok"} else {if (self.DEVICE == "TIMER0" && (CLK.WHICHTIMER == "Timer 0" && CLK.USETIMER == 1)) {self.TIMER_HANDLE_ENABLE = 0, self.error("TIMER0 already used by the CLK module")} else {if (self.DEVICE == "TIMER1" && (CLK.WHICHTIMER == "Timer 1" && CLK.USETIMER == 1)) {self.TIMER_HANDLE_ENABLE = 0, self.error("TIMER1 already used by the CLK module")} else {if (self.DEVICE == "TIMER2" && (CLK.WHICHTIMER == "Timer 2" && CLK.USETIMER == 1)) {self.TIMER_HANDLE_ENABLE = 0, self.error("TIMER2 already used by the CLK module")} else {self.TIMER_HANDLE_ENABLE = $1, if (self.DEVICE == "TIMER0") {self.cOpenArg0 = "TIMER_DEV0", HWI_INT14.client = "CSL", "ok"} else {if (self.DEVICE == "TIMER1") {self.cOpenArg0 = "TIMER_DEV1", HWI_INT15.client = "CSL", "ok"} else {self.cOpenArg0 = "TIMER_DEV2", "ok"}}}}}})
  702.     }
  703.     inst HandleName :: self { 
  704.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  705.         prop Label :: " Handle  "
  706.         prop JSName :: "timerHandleName"
  707.         prop Visible :: 1
  708.         prop Writable :: if (self.TIMER_HANDLE_ENABLE == 1) {1} else {0}
  709.     }
  710.     inst DEVICE :: "TIMER0" { 
  711.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  712.         prop Enum :: "TIMER0,TIMER1,TIMER2"
  713.         prop Label :: "         Device"
  714.         prop Visible :: 0
  715.         prop Writable :: 0
  716.         prop NoGen :: 1
  717.     }
  718.     inst cOpenGen :: = (CSL.TIMER_SUPPORT && self.TIMER_HANDLE_ENABLE == 1 && self.HandleName != "") { 
  719.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  720.         prop Visible :: 0
  721.         prop NoGen :: 1
  722.     }
  723.     inst cOpenArg0 :: (if (self.TIMER_HANDLE_ENABLE == 0) {"TIMER_None"} ) { 
  724.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  725.         prop Label :: "    Arg0  "
  726.         prop Visible :: 0
  727.         prop Writable :: 0
  728.         prop NoGen :: 1
  729.     }
  730.     inst cOpenArg1 :: "TIMER_OPEN_RESET" { 
  731.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  732.         prop Label :: "Pre-initialize (Default) "
  733.         prop Visible :: 0
  734.         prop Writable :: 0
  735.         prop NoGen :: 1
  736.     }
  737.     inst TIMER_INIT_ENABLE :: 0 { 
  738.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  739.         prop Label :: "Enable Pre-Initialization"
  740.         prop JSName :: "timerEnablePreInit"
  741.         prop Visible :: 1
  742.         prop Writable :: if CSL.TIMER_SUPPORT && (self.TIMER_HANDLE_ENABLE == 1) {1} else {0}
  743.         prop NoGen :: 1
  744.         prop Set :: ($a = 0, scan ($b; timerCfg) {$a = $a + 1}, if ($a == 1) {self.TIMER_INIT_ENABLE = 0, self.error("You must create a new configuration object")} else {self.TIMER_INIT_ENABLE = $1, if ($1 == 0) {self.TIMER_INIT = TIMER_NOTHING} , "ok"})
  745.     }
  746.     inst TIMER_INIT :: TIMER_NOTHING { 
  747.         prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
  748.         prop MemberType :: timerCfg
  749.         prop Label :: " Pre-Initialize with"
  750.         prop JSName :: "timerPreInit"
  751.         prop Visible :: 1
  752.         prop Writable :: if (self.TIMER_INIT_ENABLE == 1 && self.TIMER_HANDLE_ENABLE == 1) {1} else {0}
  753.         prop NoGen :: 0
  754.     }
  755.     inst cConfigGen :: = ((self.TIMER_INIT_ENABLE == 1) && (self.TIMER_INIT != TIMER_NOTHING) && (self.TIMER_HANDLE_ENABLE == 1) && (self.HandleName != "")) { 
  756.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  757.         prop NoGen :: 1
  758.         prop Visible :: 0
  759.     }
  760.     inst cConfigArg0 :: = self.cHandleName { 
  761.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  762.         prop Label :: "Config argument 0"
  763.         prop Visible :: 0
  764.     }
  765.     inst cConfigArg1 :: = self.TIMER_INIT { 
  766.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  767.         prop MemberType :: timerCfg
  768.         prop Label :: "Pre-initialize Config"
  769.         prop Visible :: 0
  770.         prop Writable :: 0
  771.         prop NoGen :: 0
  772.         prop cPreVal :: "&"
  773.     }
  774. }
  775. object Timer_Device0 :: hTimer {
  776.     param iComment :: "Timer 0"
  777.     param iIsUsed :: 1
  778.     param iId :: 0
  779.     param iDelUser :: "hTimer"
  780.     param iDelMsg :: "This TIMER Handle object cannot be deleted"
  781.     param TIMER_HANDLE_ENABLE :: 0
  782.     param HandleName :: "hTimer0"
  783.     param DEVICE :: "TIMER0"
  784.     param cOpenArg0 :: "TIMER_None"
  785.     param cOpenArg1 :: "TIMER_OPEN_RESET"
  786.     param TIMER_INIT_ENABLE :: 0
  787.     param TIMER_INIT :: TIMER_NOTHING
  788. }
  789. object Timer_Device1 :: hTimer {
  790.     param iComment :: "Timer 1"
  791.     param iIsUsed :: 1
  792.     param iId :: 0
  793.     param iDelUser :: "hTimer"
  794.     param iDelMsg :: "This TIMER Handle object cannot be deleted"
  795.     param TIMER_HANDLE_ENABLE :: 0
  796.     param HandleName :: "hTimer1"
  797.     param DEVICE :: "TIMER1"
  798.     param cOpenArg0 :: "TIMER_None"
  799.     param cOpenArg1 :: "TIMER_OPEN_RESET"
  800.     param TIMER_INIT_ENABLE :: 0
  801.     param TIMER_INIT :: TIMER_NOTHING
  802. }
  803. object Timer_Device2 :: hTimer {
  804.     param iComment :: "Timer 2"
  805.     param iIsUsed :: 1
  806.     param iId :: 0
  807.     param iDelUser :: "hTimer"
  808.     param iDelMsg :: "This TIMER Handle object cannot be deleted"
  809.     param TIMER_HANDLE_ENABLE :: 0
  810.     param HandleName :: "hTimer2"
  811.     param DEVICE :: "TIMER2"
  812.     param cOpenArg0 :: "TIMER_None"
  813.     param cOpenArg1 :: "TIMER_OPEN_RESET"
  814.     param TIMER_INIT_ENABLE :: 0
  815.     param TIMER_INIT :: TIMER_NOTHING
  816. }
  817. object TIMER_NOTHING :: timerCfg {
  818.     param iComment :: "<add comments here>"
  819.     param iIsUsed :: 0
  820.     param iId :: 0
  821.     param iDelUser :: "USER"
  822.     param iDelMsg :: "ok"
  823.     param CLKSRC_SETUP :: "External Source"
  824.     param CP_SETUP :: "Pulse mode"
  825.     param PWID_SETUP :: "One clock cycle"
  826.     param FUNC_SETUP :: "General-Purpose Output"
  827.     param DATOUT_SETUP :: 0
  828.     param INVOUT_SETUP :: "Uninverted"
  829.     param INVINP_SETUP :: "Uninverted"
  830.     param GO_HLD_SETUP :: "Hold"
  831.     param PERIOD_SETUP :: 0
  832.     param COUNTER_SETUP :: 0
  833.     param CTL_VALUE :: 0
  834.     param PRD_VALUE :: 0
  835.     param CNT_VALUE :: 0
  836. }
  837. type VCPFOLDER {
  838.     prop Label :: "Viterbi Decoder Coprocessor - VCP "
  839.     prop GlobalIcon :: 195
  840.     prop InstanceIcon :: 196
  841.     prop GlobalHelpTopic :: 1090
  842.     prop GlobalPropertyPage :: "{B936FB82-49A5-11d4-967C-0050048381C7}"
  843.     prop IsContainedIn :: CSL
  844.     prop NoGen :: 1
  845. }
  846. type vcpBaseParam {
  847.     isa ObjectMgr
  848.     prop name :: "vcpBaseParam"
  849.     prop Label :: "VCP Parameters Manager"
  850.     prop JSName :: "VCPBP"
  851.     prop IsContainedIn :: VCPFOLDER
  852.     prop GlobalIcon :: 195
  853.     prop InstanceIcon :: 196
  854.     prop GlobalHelpTopic :: 1091
  855.     prop InstanceHelpTopic :: 1091
  856.     prop GlobalPropertyPage :: "{B936FB82-49A5-11d4-967C-0050048381C8}"
  857.     prop InstancePropertyPage :: "{B936FB82-49A5-11d4-967C-0050048381C9}"
  858.     prop Vendor :: "vendor1"
  859.     prop Version :: "1.00.00"
  860.     prop NoGen :: 1
  861.     prop cGen :: CSL.VCP_SUPPORT
  862.     prop cStruct :: CSL.VCP_SUPPORT
  863.     prop cStructType :: "VCP_BaseParams"
  864.     prop cHeaderName :: if self.gNumOf > 0 {"csl_vcp.h"} else {""}
  865.     prop cStructQual :: "far"
  866.     prop cStructName :: self
  867.     prop cConfigName :: "VCP_BaseParams"
  868.     prop localDelete :: (self.myDelete)
  869.     prop myDelete :: ($a = 0, scan ($b; vcpBaseParam) {$a += 1}, if ($a == 2) {hVcp.VCP_INITPARAM_ENABLE = 0} , "ok")
  870.     prop ParamConfigType :: if (hVcp.VCP_INITPARAM_ENABLE == 1 && hVcp.VCP_PARAMCONFIGNAME != "NULL") {"VCP_Params "} else {""}
  871.     prop ParamConfigName :: if (hVcp.VCP_INITPARAM_ENABLE == 1 && hVcp.VCP_PARAMCONFIGNAME != "NULL") {hVcp.VCP_PARAMCONFIGNAME} else {""}
  872.     prop ParamEnd :: if (hVcp.VCP_INITPARAM_ENABLE == 1 && hVcp.VCP_PARAMCONFIGNAME != "NULL") {";n"} else {""}
  873.     prop cGenCEpilogue :: ("%1S%2S%3Sn,ParamConfigType,ParamConfigName,ParamEnd")
  874.     prop GenParamStr :: if (hVcp.VCP_INITPARAM_ENABLE == 1) {"VCP_genParams(&%3s, &"} else {""}
  875.     prop ParamConfigObj :: if (hVcp.VCP_INITPARAM_ENABLE == 1 && hVcp.VCP_PARAMCONFIGNAME != "NULL") {hVcp.VCP_PARAMCONFIGNAME} else {""}
  876.     prop ConfigEnd :: if (hVcp.VCP_INITPARAM_ENABLE == 1 && hVcp.VCP_PARAMCONFIGNAME != "NULL") {");"} else {""}
  877.     prop cGenFxnPreInst :: ("   %1S%2S%4Sn,GenParamStr,ParamConfigObj,cStructName,ConfigEnd")
  878.     global gUser :: "USER" { 
  879.         prop Visible :: 0
  880.         prop Writable :: 0
  881.         prop NoGen :: 1
  882.     }
  883.     global gSetOf :: 0 { 
  884.         prop Visible :: 0
  885.         prop Writable :: 0
  886.         prop NoGen :: 1
  887.     }
  888.     global gNumOf :: 0 { 
  889.         prop Visible :: 0
  890.         prop Writable :: 0
  891.         prop NoGen :: 1
  892.     }
  893.     global gDirty :: 0 { 
  894.         prop Visible :: 0
  895.         prop Writable :: 0
  896.         prop NoGen :: 1
  897.     }
  898.     global gInitFlag :: 1 { 
  899.         prop Visible :: 0
  900.         prop Writable :: 0
  901.         prop NoGen :: 1
  902.     }
  903.     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) { 
  904.         prop Visible :: 0
  905.         prop Writable :: 0
  906.         prop NoGen :: 1
  907.     }
  908.     inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} { 
  909.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  910.         prop Label :: "comment"
  911.         prop JSName :: "comment"
  912.         prop Visible :: 1
  913.         prop Writable :: if self.iDelUser == "USER" {1} else {0}
  914.         prop NoGen :: 1
  915.     }
  916.     inst iIsUsed :: 0 { 
  917.         prop Visible :: 0
  918.         prop Writable :: 0
  919.         prop NoGen :: 1
  920.     }
  921.     inst iId :: 0 { 
  922.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  923.         prop Style :: 0x01
  924.         prop Visible :: 0
  925.         prop Writable :: 1
  926.         prop NoGen :: 1
  927.     }
  928.     inst iDelUser :: "USER" { 
  929.         prop Visible :: 0
  930.         prop Writable :: 0
  931.         prop NoGen :: 1
  932.     }
  933.     inst iDelMsg :: "ok" { 
  934.         prop Visible :: 0
  935.         prop Writable :: 0
  936.         prop NoGen :: 1
  937.     }
  938.     inst RATE_SETUP :: "None" { 
  939.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  940.         prop Enum :: "None,1/2,1/3,1/4"
  941.         prop Label :: " Code Rate "
  942.         prop Visible :: 1
  943.         prop JSName :: "vcpBaseParamRate"
  944.         prop Writable :: (CSL.VCP_SUPPORT)
  945.         prop NoGen :: 1
  946.         prop cGen :: 0
  947.         prop TabName :: "VCP Base Params"
  948.         prop Set :: (if ($1 == "1/2") {self.cRateGen = "VCP_RATE_1_2"} else {if ($1 == "1/3") {self.cRateGen = "VCP_RATE_1_3"} else {if ($1 == "1/4") {self.cRateGen = "VCP_RATE_1_4"} else {self.cRateGen = " 0"}}}, self.RATE_SETUP = $1, " For Information only, Not programmable directly - calculated via POLYx")
  949.     }
  950.     inst cRateGen :: = " 0" { 
  951.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  952.         prop Label :: " Rate"
  953.         prop Visible :: 0
  954.         prop Writable :: CSL.VCP_SUPPORT
  955.         prop NoGen :: 1
  956.         prop cGen :: 1
  957.     }
  958.     inst CONSTRLEN_SETUP :: 5 { 
  959.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  960.         prop Format :: "%2d"
  961.         prop Style :: 0x02
  962.         prop Label :: " Constraint Length (K= 5,6,7,8 or 9)"
  963.         prop Visible :: 1
  964.         prop JSName :: "vcpBaseParamConstrLen"
  965.         prop Writable :: (CSL.VCP_SUPPORT)
  966.         prop NoGen :: 1
  967.         prop cGen :: 1
  968.         prop TabName :: "VCP Base Params"
  969.         prop Set :: (if ($1 < 5 || $1 > 9) {self.error(" Constraint Length K=5,6,7,8 or 9")} else {self.CONSTRLEN_SETUP = $1, " For Information only, Not programmable directly - calculated via POLYx"})
  970.     }
  971.     inst FRAMELEN_SETUP :: = 0 { 
  972.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  973.         prop Format :: "%2d"
  974.         prop Style :: 0x02
  975.         prop Label :: " Frame Length (FL) "
  976.         prop Visible :: 1
  977.         prop JSName :: "vcpBaseParamFrameLen"
  978.         prop Writable :: (CSL.VCP_SUPPORT)
  979.         prop NoGen :: 1
  980.         prop cGen :: 1
  981.         prop TabName :: "VCP Base Params"
  982.         prop Set :: (if ($1 < 0 || $1 > 65535) {self.error("Frame Length range [0-65535]")} else {self.FRAMELEN_SETUP = $1, "ok"})
  983.     }
  984.     inst YAMTH_SETUP :: = 0 { 
  985.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  986.         prop Format :: "%2d"
  987.         prop Style :: 0x02
  988.         prop Label :: " Yamamoto Threshold (YAMT)"
  989.         prop Visible :: 1
  990.         prop JSName :: "vcpBaseParamYamth"
  991.         prop Writable :: (CSL.VCP_SUPPORT)
  992.         prop NoGen :: 1
  993.         prop cGen :: 1
  994.         prop TabName :: "VCP Base Params"
  995.         prop Set :: (if ($1 < 0 || $1 > 4095) {self.error("Yamamoto Threshold max value is 4095")} else {self.YAMTH_SETUP = $1, "ok"})
  996.     }
  997.     inst IMAXI_SETUP :: = 0 { 
  998.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  999.         prop Format :: "%2d"
  1000.         prop Style :: 0x02
  1001.         prop Label :: " State Index set to IMAXS (IMAXI)"
  1002.         prop Visible :: 1
  1003.         prop JSName :: "vcpBaseParamIndexMaxIter"
  1004.         prop Writable :: (CSL.VCP_SUPPORT)
  1005.         prop NoGen :: 1
  1006.         prop cGen :: 1
  1007.         prop TabName :: "VCP Base Params"
  1008.         prop Set :: (if ((self.CONSTRLEN_SETUP == 5 && $1 > 15)) {self.error("For K=5 ,allowed values are 0 to 15")} else {if ((self.CONSTRLEN_SETUP == 6 && $1 > 31)) {self.error("For K=6 ,allowed values are 0 to 31")} else {if ((self.CONSTRLEN_SETUP == 7 && $1 > 63)) {self.error("For K=7 ,allowed values are 0 to 63")} else {if ((self.CONSTRLEN_SETUP == 8 && $1 > 127)) {self.error("For K=8 ,allowed values are 0 to 127")} else {if ((self.CONSTRLEN_SETUP == 9 && $1 > 255)) {self.error("For K=9 ,allowed values are 0 to 255")} else {self.IMAXI_SETUP = $1, "ok"}}}}})
  1009.     }
  1010.     inst SDHD_SETUP :: "Hard" { 
  1011.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1012.         prop Enum :: "Hard,Soft"
  1013.         prop Label :: " Ouput Hard Decision Type (SDHD) "
  1014.         prop Visible :: 1
  1015.         prop JSName :: "vcpBaseParamDecisionType"
  1016.         prop Writable :: (CSL.VCP_SUPPORT)
  1017.         prop NoGen :: 1
  1018.         prop cGen :: 0
  1019.         prop TabName :: "VCP Base Params"
  1020.         prop Set :: (if ($1 == "Soft") {self.cSdhdGen = " 1"} else {self.cSdhdGen = " 0"}, self.SDHD_SETUP = $1, "ok")
  1021.     }
  1022.     inst cSdhdGen :: = " 0" { 
  1023.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1024.         prop Label :: " Ouput Hard Decision Type "
  1025.         prop Visible :: 0
  1026.         prop Writable :: CSL.VCP_SUPPORT
  1027.         prop NoGen :: 1
  1028.         prop cGen :: 1
  1029.     }
  1030.     inst OUTF_SETUP :: "Disable" { 
  1031.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1032.         prop Enum :: "Disable,Enable"
  1033.         prop Label :: " Ouput Parameters Read Flag (OUTF)"
  1034.         prop Visible :: 1
  1035.         prop JSName :: "vcpBaseParamOutFlag"
  1036.         prop Writable :: (CSL.VCP_SUPPORT)
  1037.         prop NoGen :: 1
  1038.         prop cGen :: 0
  1039.         prop TabName :: "VCP Base Params"
  1040.         prop Set :: (if ($1 == "Enable") {self.cOutfGen = " 1"} else {self.cOutfGen = " 0"}, self.OUTF_SETUP = $1, "ok")
  1041.     }
  1042.     inst cOutfGen :: = " 0" { 
  1043.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1044.         prop Label :: " Ouput Parameters Read Flag "
  1045.         prop Visible :: 0
  1046.         prop Writable :: CSL.VCP_SUPPORT
  1047.         prop NoGen :: 1
  1048.         prop cGen :: 1
  1049.     }
  1050. }
  1051. type vcpCfg {
  1052.     isa ObjectMgr
  1053.     prop name :: "vcpCfg"
  1054.     prop Label :: "VCP Configuration Manager"
  1055.     prop JSName :: "VCP"
  1056.     prop IsContainedIn :: VCPFOLDER
  1057.     prop GlobalIcon :: 195
  1058.     prop InstanceIcon :: 196
  1059.     prop GlobalHelpTopic :: 1092
  1060.     prop InstanceHelpTopic :: 1092
  1061.     prop GlobalPropertyPage :: "{B936FB82-49A5-11d4-967C-0050048381C8}"
  1062.     prop InstancePropertyPage :: "{B936FB82-49A5-11d4-967C-0050048381C9}"
  1063.     prop Vendor :: "vendor1"
  1064.     prop Version :: "1.00.00"
  1065.     prop NoGen :: 1
  1066.     prop cGen :: CSL.VCP_SUPPORT
  1067.     prop cStruct :: CSL.VCP_SUPPORT
  1068.     prop cStructType :: "VCP_ConfigIc"
  1069.     prop cHeaderName :: if self.gNumOf > 0 {"csl_vcp.h"} else {""}
  1070.     prop cStructQual :: "far"
  1071.     prop cStructName :: self
  1072.     prop cConfigName :: "VCP_icConfig"
  1073.     prop localDelete :: (self.myDelete)
  1074.     prop myDelete :: ($a = 0, scan ($b; vcpCfg) {$a += 1}, if ($a == 2) {hVcp.VCP_INIT_ENABLE = 0} , "ok")
  1075.     prop SetParamStr :: if (hVcp.VCP_SETPARAM_ENABLE == 1 && hVcp.VCP_INIT != VCP_NOTHING) {"VCP_genIc(&"} else {""}
  1076.     prop ParamConfigObj :: if (hVcp.VCP_SETPARAM_ENABLE == 1 && hVcp.VCP_INIT != VCP_NOTHING && hVcp.VCP_PARAMCONFIGNAME != "NULL") {hVcp.VCP_PARAMCONFIGNAME} else {""}
  1077.     prop IcConfigObj :: if (hVcp.VCP_SETPARAM_ENABLE == 1 && hVcp.VCP_INIT != VCP_NOTHING && hVcp.VCP_PARAMCONFIGNAME != "NULL") {",&%4s"} else {""}
  1078.     prop ConfigEnd :: if (hVcp.VCP_SETPARAM_ENABLE == 1 && hVcp.VCP_INIT != VCP_NOTHING && hVcp.VCP_PARAMCONFIGNAME != "NULL") {");"} else {""}
  1079.     prop cGenFxnPreInst :: ("   %1S%2S%3S%5Sn,SetParamStr,ParamConfigObj,IcConfigObj,cStructName,ConfigEnd")
  1080.     prop POLYG0_IC0 :: (self.POLYG0_SETUP)
  1081.     prop POLYG1_IC0 :: (self.POLYG1_SETUP << 8)
  1082.     prop POLYG2_IC0 :: (self.POLYG2_SETUP << 16)
  1083.     prop POLYG3_IC0 :: (self.POLYG3_SETUP << 24)
  1084.     prop FRAMELEN_IC2 :: (self.FRAMELEN_SETUP)
  1085.     prop RELLEN_IC2 :: (self.RELLEN_SETUP << 16)
  1086.     prop CVGLEN_IC3 :: (self.CVGLEN_SETUP)
  1087.     prop TRACEBACK_IC5 :: (if (self.TRACEBACK_SETUP == "not allowed") {0} else {if (self.TRACEBACK_SETUP == "tailed") {0x01000000} else {if (self.TRACEBACK_SETUP == "convergent") {0x02000000} else {0x03000000}}})
  1088.     prop YAMEN_IC1 :: (if (self.YAMEN_SETUP == "Disable") {0x00000000} else {0x10000000})
  1089.     prop YAMTH_IC1 :: (self.YAMTH_SETUP << 16)
  1090.     prop IMAXS_IC4 :: (self.IMAXS_SETUP)
  1091.     prop IMINS_IC4 :: (self.IMINS_SETUP << 16)
  1092.     prop IMAXI_IC5 :: (self.IMAXI_SETUP)
  1093.     prop SDHD_IC5 :: (if (self.SDHD_SETUP == "Hard") {0x00000000} else {0x80000000})
  1094.     prop SYMX_IC5 :: (((self.SYMX_SETUP - 1) << 16))
  1095.     prop SYMR_IC5 :: (((self.SYMR_SETUP - 1) << 20))
  1096.     prop OUTF_IC5 :: (if (self.OUTF_SETUP == "Disable") {0} else {0x40000000})
  1097.     prop IC0_VALUE_update :: (self.POLYG0_IC0() | self.POLYG1_IC0() | self.POLYG2_IC0() | self.POLYG3_IC0())
  1098.     prop IC0_SETUP_update :: (self.POLYG0_SETUP = ($1 & 0x000000FF), self.POLYG1_SETUP = ($1 & 0x0000FF00) >> 8, self.POLYG2_SETUP = ($1 & 0x00FF0000) >> 16, self.POLYG3_SETUP = ($1 & 0xFF000000) >> 24)
  1099.     prop IC1_VALUE_update :: (self.YAMTH_IC1() | self.YAMEN_IC1())
  1100.     prop IC1_SETUP_update :: (self.YAMTH_SETUP = ($1 & 0x0FFF0000), self.YAMEN_SETUP = ($a = ($1 & 0x10000000), if ($a == 0x10000000) {"Enable"} else {"Disable"}))
  1101.     prop IC2_VALUE_update :: (self.FRAMELEN_IC2() | self.RELLEN_IC2())
  1102.     prop IC2_SETUP_update :: (self.FRAMELEN_SETUP = ($1 & 0x0000FFFF), self.RELLEN_SETUP = ($1 & 0xFFFF0000) >> 16)
  1103.     prop IC3_VALUE_update :: (self.CVGLEN_IC3())
  1104.     prop IC3_SETUP_update :: (self.CVGLEN_SETUP = ($1 & 0x0000FFFF))
  1105.     prop IC4_VALUE_update :: (self.IMAXS_IC4() | self.IMINS_IC4())
  1106.     prop IC4_SETUP_update :: (self.IMAXS_SETUP = ($1 & 0x00000FFF), self.IMINS_SETUP = ($1 & 0x0FFF0000) >> 16)
  1107.     prop IC5_VALUE_update :: (self.IMAXI_IC5() | self.SYMX_IC5() | self.SYMR_IC5() | self.TRACEBACK_IC5() | self.OUTF_IC5() | self.SDHD_IC5())
  1108.     prop IC5_SETUP_update :: (self.IMAXI_SETUP = ($1 & 0x000000FF), self.SYMX_SETUP = (($1 & 0x000F0000) >> 16) + 1, self.SYMR_SETUP = (($1 & 0x00F00000) >> 20) + 1, self.TRACEBACK_SETUP = ($a = ($1 & 0x03000000), if ($a == 0x00000000) {"not allowed"} else {if ($a == 0x010000000) {"tailed"} else {if ($a == 0x020000000) {"convergent"} else {"mixed"}}}), self.OUTF_SETUP = ($a = ($1 & 0x40000000), if ($a == 0x400000000) {"Enable"} else {"Disable"}), self.SDHD_SETUP = ($a = ($1 & 0x80000000), if ($a == 0x800000000) {"Soft"} else {"Hard"}))
  1109.     global gUser :: "USER" { 
  1110.         prop Visible :: 0
  1111.         prop Writable :: 0
  1112.         prop NoGen :: 1
  1113.     }
  1114.     global gSetOf :: 0 { 
  1115.         prop Visible :: 0
  1116.         prop Writable :: 0
  1117.         prop NoGen :: 1
  1118.     }
  1119.     global gNumOf :: 0 { 
  1120.         prop Visible :: 0
  1121.         prop Writable :: 0
  1122.         prop NoGen :: 1
  1123.     }
  1124.     global gDirty :: 0 { 
  1125.         prop Visible :: 0
  1126.         prop Writable :: 0
  1127.         prop NoGen :: 1
  1128.     }
  1129.     global gInitFlag :: 1 { 
  1130.         prop Visible :: 0
  1131.         prop Writable :: 0
  1132.         prop NoGen :: 1
  1133.     }
  1134.     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) { 
  1135.         prop Visible :: 0
  1136.         prop Writable :: 0
  1137.         prop NoGen :: 1
  1138.     }
  1139.     inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} { 
  1140.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  1141.         prop Label :: "comment"
  1142.         prop JSName :: "comment"
  1143.         prop Visible :: 1
  1144.         prop Writable :: if self.iDelUser == "USER" {1} else {0}
  1145.         prop NoGen :: 1
  1146.     }
  1147.     inst iIsUsed :: 0 { 
  1148.         prop Visible :: 0
  1149.         prop Writable :: 0
  1150.         prop NoGen :: 1
  1151.     }
  1152.     inst iId :: 0 { 
  1153.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1154.         prop Style :: 0x01
  1155.         prop Visible :: 0
  1156.         prop Writable :: 1
  1157.         prop NoGen :: 1
  1158.     }
  1159.     inst iDelUser :: "USER" { 
  1160.         prop Visible :: 0
  1161.         prop Writable :: 0
  1162.         prop NoGen :: 1
  1163.     }
  1164.     inst iDelMsg :: "ok" { 
  1165.         prop Visible :: 0
  1166.         prop Writable :: 0
  1167.         prop NoGen :: 1
  1168.     }
  1169.     inst cConfigGen :: = ((hVcp.VCP_INIT_ENABLE == 1) && (hVcp.VCP_INIT == self) && (hVcp.VCP_INIT != VCP_NOTHING)) { 
  1170.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  1171.         prop NoGen :: 1
  1172.         prop Visible :: 0
  1173.     }
  1174.     inst cConfigArg0 :: = hVcp.VCP_INIT { 
  1175.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  1176.         prop MemberType :: vcpCfg
  1177.         prop Label :: "Pre-initialize Config"
  1178.         prop Visible :: 0
  1179.         prop Writable :: (CSL.VCP_SUPPORT)
  1180.         prop NoGen :: 0
  1181.         prop cPreVal :: "&"
  1182.     }
  1183.     inst STANDARD_SETUP :: "3GPP" { 
  1184.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1185.         prop Enum :: "3GPP,IS2000"
  1186.         prop Label :: "Viterbi Decoder Standard"
  1187.         prop Visible :: 1
  1188.         prop JSName :: "vcpDecoderStandard"
  1189.         prop Writable :: CSL.VCP_SUPPORT
  1190.         prop NoGen :: 1
  1191.         prop cGen :: 0
  1192.         prop TabName :: "VCP Setting"
  1193.         prop Set :: (if ($1 == "IS2000") {self.cStandardGen = "VCP_STANDARD_IS2000"} else {self.cStandardGen = "VCP_STANDARD_3GPP"}, self.STANDARD_SETUP = $1, " For Information only, Not programmable")
  1194.     }
  1195.     inst cStandardGen :: = "VCP_STANDARD_3GPP" { 
  1196.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1197.         prop Label :: " Decoder Standard"
  1198.         prop Visible :: 0
  1199.         prop Writable :: CSL.VCP_SUPPORT
  1200.         prop NoGen :: 1
  1201.         prop cGen :: 0
  1202.     }
  1203.     inst RATE_SETUP :: "None" { 
  1204.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1205.         prop Enum :: "None,1/2,1/3,1/4"
  1206.         prop Label :: " Code Rate "
  1207.         prop Visible :: 1
  1208.         prop JSName :: "vcpRate"
  1209.         prop Writable :: (CSL.VCP_SUPPORT)
  1210.         prop NoGen :: 1
  1211.         prop cGen :: 0
  1212.         prop TabName :: "VCP Setting"
  1213.         prop Set :: (self.RATE_SETUP = $1, " For Information only, Not programmable directly - calculated via POLYx")
  1214.     }
  1215.     inst CONSTRLEN_SETUP :: 5 { 
  1216.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1217.         prop Format :: "%2d"
  1218.         prop Style :: 0x02
  1219.         prop Label :: " Constraint Length (K= 5,6,7,8 or 9)"
  1220.         prop Visible :: 1
  1221.         prop JSName :: "vcpConstrLen"
  1222.         prop Writable :: (CSL.VCP_SUPPORT)
  1223.         prop NoGen :: 1
  1224.         prop cGen :: 0
  1225.         prop TabName :: "VCP Setting"
  1226.         prop Set :: (if ($1 < 5 || $1 > 9) {self.error(" Constraint Length K=5,6,7,8 or 9")} else {self.CONSTRLEN_SETUP = $1, " For Information only, Not programmable directly - calculated via POLYx"})
  1227.     }
  1228.     inst POLYG0_SETUP :: = 0 { 
  1229.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1230.         prop Format :: "%2d"
  1231.         prop Style :: 0x02
  1232.         prop Label :: " Polynomial Generator G0 (POLY0) "
  1233.         prop Visible :: 1
  1234.         prop JSName :: "vcpIc0Poly0"
  1235.         prop Writable :: (CSL.VCP_SUPPORT)
  1236.         prop NoGen :: 1
  1237.         prop cGen :: 0
  1238.         prop TabName :: "Programmable VCP Params"
  1239.         prop Set :: (if ($1 < 0 || $1 > 255) {self.error(" G0 values allowed are [0-255]")} else {self.POLYG0_SETUP = $1, self.IC0_VALUE = self.IC0_VALUE_update(), "ok"})
  1240.     }
  1241.     inst POLYG1_SETUP :: = 0 { 
  1242.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1243.         prop Format :: "%2d"
  1244.         prop Style :: 0x02
  1245.         prop Label :: " Polynomial Generator G1 (POLY1) "
  1246.         prop Visible :: 1
  1247.         prop JSName :: "vcpIc0Poly1"
  1248.         prop Writable :: (CSL.VCP_SUPPORT)
  1249.         prop NoGen :: 1
  1250.         prop cGen :: 0
  1251.         prop TabName :: "Programmable VCP Params"
  1252.         prop Set :: (if ($1 < 0 || $1 > 255) {self.error(" G1 values allowed are [0-255]")} else {self.POLYG1_SETUP = $1, self.IC0_VALUE = self.IC0_VALUE_update(), "ok"})
  1253.     }
  1254.     inst POLYG2_SETUP :: = 0 { 
  1255.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1256.         prop Format :: "%2d"
  1257.         prop Style :: 0x02
  1258.         prop Label :: " Polynomial Generator G2 (POLY2) "
  1259.         prop Visible :: 1
  1260.         prop JSName :: "vcpIc0Poly2"
  1261.         prop Writable :: (CSL.VCP_SUPPORT)
  1262.         prop NoGen :: 1
  1263.         prop cGen :: 0
  1264.         prop TabName :: "Programmable VCP Params"
  1265.         prop Set :: (if ($1 < 0 || $1 > 255) {self.error(" G2 values allowed are [0-255]")} else {self.POLYG2_SETUP = $1, self.IC0_VALUE = self.IC0_VALUE_update(), "ok"})
  1266.     }
  1267.     inst POLYG3_SETUP :: = 0 { 
  1268.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1269.         prop Format :: "%2d"
  1270.         prop Style :: 0x02
  1271.         prop Label :: " Polynomial Generator G3 (POLY3) "
  1272.         prop Visible :: 1
  1273.         prop JSName :: "vcpIc0Poly3"
  1274.         prop Writable :: (CSL.VCP_SUPPORT)
  1275.         prop NoGen :: 1
  1276.         prop cGen :: 0
  1277.         prop TabName :: "Programmable VCP Params"
  1278.         prop Set :: (if ($1 < 0 || $1 > 255) {self.error(" G3 values allowed are [0-255]")} else {self.POLYG3_SETUP = $1, self.IC0_VALUE = self.IC0_VALUE_update(), "ok"})
  1279.     }
  1280.     inst FRAMELEN_SETUP :: = 0 { 
  1281.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1282.         prop Format :: "%2d"
  1283.         prop Style :: 0x02
  1284.         prop Label :: " Frame Length (F) "
  1285.         prop Visible :: 1
  1286.         prop JSName :: "vcpIc2FrameLen"
  1287.         prop Writable :: (CSL.VCP_SUPPORT)
  1288.         prop NoGen :: 1
  1289.         prop cGen :: 0
  1290.         prop TabName :: "Programmable VCP Params"
  1291.         prop Set :: (if ($1 < 0 || $1 > 65535) {self.error("Frame Length range [0-65535]")} else {self.FRAMELEN_SETUP = $1, self.IC2_VALUE = self.IC2_VALUE_update(), "ok"})
  1292.     }
  1293.     inst RELLEN_SETUP :: = 0 { 
  1294.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1295.         prop Format :: "%2d"
  1296.         prop Style :: 0x02
  1297.         prop Label :: " Reliability Length (R)"
  1298.         prop Visible :: 1
  1299.         prop JSName :: "vcpIc2ReliaLen"
  1300.         prop Writable :: (CSL.VCP_SUPPORT)
  1301.         prop NoGen :: 1
  1302.         prop cGen :: 0
  1303.         prop TabName :: "Programmable VCP Params"
  1304.         prop Set :: (if ($1 < 0 || $1 > 127) {self.error("Reliability Length range [0-127]")} else {self.RELLEN_SETUP = $1, self.IC2_VALUE = self.IC2_VALUE_update(), "ok"})
  1305.     }
  1306.     inst CVGLEN_SETUP :: = 0 { 
  1307.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1308.         prop Format :: "%2d"
  1309.         prop Style :: 0x02
  1310.         prop Label :: " Convergence Length (C) "
  1311.         prop Visible :: 1
  1312.         prop JSName :: "vcpIc3ConvLen"
  1313.         prop Writable :: (CSL.VCP_SUPPORT)
  1314.         prop NoGen :: 1
  1315.         prop cGen :: 0
  1316.         prop TabName :: "Programmable VCP Params"
  1317.         prop Set :: (if ($1 < 0 || $1 > 65535) {self.error("Convergence Length range [0-65535]")} else {self.CVGLEN_SETUP = $1, self.IC3_VALUE = self.IC3_VALUE_update(), "ok"})
  1318.     }
  1319.     inst TRACEBACK_SETUP :: = "not Allowed" { 
  1320.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1321.         prop Enum :: "not allowed,tailed,convergent,mixed"
  1322.         prop Label :: " TraceBack Mode (TB)"
  1323.         prop Visible :: 1
  1324.         prop JSName :: "vcpIc5TraceBack"
  1325.         prop Writable :: (CSL.VCP_SUPPORT)
  1326.         prop NoGen :: 1
  1327.         prop cGen :: 0
  1328.         prop TabName :: "Programmable VCP Params"
  1329.         prop Set :: (self.TRACEBACK_SETUP = $1, self.IC5_VALUE = self.IC5_VALUE_update(), "ok")
  1330.     }
  1331.     inst YAMEN_SETUP :: "Disable" { 
  1332.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1333.         prop Enum :: "Disable,Enable"
  1334.         prop Label :: " Yamamoto Algo. Enable (YAMEN) "
  1335.         prop Visible :: 1
  1336.         prop JSName :: "vcpIc1Yamen"
  1337.         prop Writable :: (CSL.VCP_SUPPORT)
  1338.         prop NoGen :: 1
  1339.         prop cGen :: 0
  1340.         prop TabName :: "Programmable VCP Params"
  1341.         prop Set :: (self.YAMEN_SETUP = $1, self.IC1_VALUE = self.IC1_VALUE_update(), "ok")
  1342.     }
  1343.     inst YAMTH_SETUP :: = 0 { 
  1344.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1345.         prop Format :: "%2d"
  1346.         prop Style :: 0x02
  1347.         prop Label :: " Yamamoto Threshold (YAMT)"
  1348.         prop Visible :: 1
  1349.         prop JSName :: "vcpIc1Yamth"
  1350.         prop Writable :: (CSL.VCP_SUPPORT)
  1351.         prop NoGen :: 1
  1352.         prop cGen :: 0
  1353.         prop TabName :: "Programmable VCP Params"
  1354.         prop Set :: (if ($1 < 0 || $1 > 4095) {self.error("Yamamoto Threshold max value is 4095")} else {self.YAMTH_SETUP = $1, self.IC1_VALUE = self.IC1_VALUE_update(), "ok"})
  1355.     }
  1356.     inst IMAXS_SETUP :: = 0 { 
  1357.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1358.         prop Format :: "%2d"
  1359.         prop Style :: 0x02
  1360.         prop Label :: " Max Initial State Metric (IMAXS)"
  1361.         prop Visible :: 1
  1362.         prop JSName :: "vcpIc2Imaxs"
  1363.         prop Writable :: (CSL.VCP_SUPPORT)
  1364.         prop NoGen :: 1
  1365.         prop cGen :: 0
  1366.         prop TabName :: "Programmable VCP Params"
  1367.         prop Set :: (if ($1 < 0 || $1 > 4095) {self.error("Max Initial State Metric value is 4095")} else {self.IMAXS_SETUP = $1, self.IC4_VALUE = self.IC4_VALUE_update(), "ok"})
  1368.     }
  1369.     inst IMINS_SETUP :: = 0 { 
  1370.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1371.         prop Format :: "%2d"
  1372.         prop Style :: 0x02
  1373.         prop Label :: " Min Initial State Metric (IMINS)"
  1374.         prop Visible :: 1
  1375.         prop JSName :: "vcpIc2Imins"
  1376.         prop Writable :: (CSL.VCP_SUPPORT)
  1377.         prop NoGen :: 1
  1378.         prop cGen :: 0
  1379.         prop TabName :: "Programmable VCP Params"
  1380.         prop Set :: (if ($1 < 0 || $1 > 4095) {self.error("Min Initial State Metric value is 4095")} else {self.IMINS_SETUP = $1, self.IC4_VALUE = self.IC4_VALUE_update(), "ok"})
  1381.     }
  1382.     inst IMAXI_SETUP :: = 0 { 
  1383.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1384.         prop Format :: "%2d"
  1385.         prop Style :: 0x02
  1386.         prop Label :: " State Index set to IMAXS (IMAXI)"
  1387.         prop Visible :: 1
  1388.         prop JSName :: "vcpIc5IndexMaxIter"
  1389.         prop Writable :: (CSL.VCP_SUPPORT)
  1390.         prop NoGen :: 1
  1391.         prop cGen :: 0
  1392.         prop TabName :: "Programmable VCP Params"
  1393.         prop Set :: (if ((self.CONSTRLEN_SETUP == 5 && $1 > 15)) {self.error("For K=5 ,allowed values are 0 to 15")} else {if ((self.CONSTRLEN_SETUP == 6 && $1 > 31)) {self.error("For K=6 ,allowed values are 0 to 31")} else {if ((self.CONSTRLEN_SETUP == 7 && $1 > 63)) {self.error("For K=7 ,allowed values are 0 to 63")} else {if ((self.CONSTRLEN_SETUP == 8 && $1 > 127)) {self.error("For K=8 ,allowed values are 0 to 127")} else {if ((self.CONSTRLEN_SETUP == 9 && $1 > 255)) {self.error("For K=9 ,allowed values are 0 to 255")} else {self.IMAXI_SETUP = $1, self.IC5_VALUE = self.IC5_VALUE_update(), "ok"}}}}})
  1394.     }
  1395.     inst SDHD_SETUP :: "Hard" { 
  1396.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1397.         prop Enum :: "Hard,Soft"
  1398.         prop Label :: " Ouput Hard Decision Type (SDHD) "
  1399.         prop Visible :: 1
  1400.         prop JSName :: "vcpIc5DecisionType"
  1401.         prop Writable :: (CSL.VCP_SUPPORT)
  1402.         prop NoGen :: 1
  1403.         prop cGen :: 0
  1404.         prop TabName :: "Programmable VCP Params"
  1405.         prop Set :: (self.SDHD_SETUP = $1, self.IC5_VALUE = self.IC5_VALUE_update(), "ok")
  1406.     }
  1407.     inst SYMX_SETUP :: 1 { 
  1408.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1409.         prop Format :: "%2d"
  1410.         prop Style :: 0x02
  1411.         prop Label :: " Branch Metrics Buffer Length (SYMX + 1) "
  1412.         prop Visible :: 1
  1413.         prop JSName :: "vcpIc5BmBuffLen"
  1414.         prop Writable :: (CSL.VCP_SUPPORT)
  1415.         prop NoGen :: 1
  1416.         prop cGen :: 0
  1417.         prop TabName :: "EDMA Operation"
  1418.         prop Set :: (if ($1 > 16 || $1 < 1) {self.error("Buffer length range [1-16]")} else {self.SYMX_SETUP = $1, self.IC5_VALUE = self.IC5_VALUE_update(), "ok"})
  1419.     }
  1420.     inst SYMR_SETUP :: 1 { 
  1421.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1422.         prop Format :: "%2d"
  1423.         prop Style :: 0x02
  1424.         prop Label :: " Decision Buffer Length (SYMR + 1) "
  1425.         prop Visible :: 1
  1426.         prop JSName :: "vcpIc5DecBuffLen"
  1427.         prop Writable :: (CSL.VCP_SUPPORT)
  1428.         prop NoGen :: 1
  1429.         prop cGen :: 0
  1430.         prop TabName :: "EDMA Operation"
  1431.         prop Set :: (if ($1 > 16 || $1 < 1) {self.error("Buffer length range [1-16]")} else {self.SYMR_SETUP = $1, self.IC5_VALUE = self.IC5_VALUE_update(), "ok"})
  1432.     }
  1433.     inst OUTF_SETUP :: "Disable" { 
  1434.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1435.         prop Enum :: "Disable,Enable"
  1436.         prop Label :: " Ouput Parameters Read Flag (OUTF)"
  1437.         prop Visible :: 1
  1438.         prop JSName :: "vcpIc5OutFlag"
  1439.         prop Writable :: (CSL.VCP_SUPPORT)
  1440.         prop NoGen :: 1
  1441.         prop cGen :: 0
  1442.         prop TabName :: "EDMA Operation"
  1443.         prop Set :: (self.OUTF_SETUP = $1, self.IC5_VALUE = self.IC5_VALUE_update(), "ok")
  1444.     }
  1445.     inst IC0_VALUE :: self.IC0_VALUE_update() { 
  1446.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1447.         prop Label :: "Input Configuration Reg 0 (IC0)"
  1448.         prop Format :: "0x%08X"
  1449.         prop Style :: 0x02
  1450.         prop JSName :: "vcpIc0"
  1451.         prop Visible :: 1
  1452.         prop Writable :: CSL.VCP_SUPPORT
  1453.         prop NoGen :: 1
  1454.         prop cGen :: 1
  1455.         prop cType :: "Uint32"
  1456.         prop TabName :: "Advanced"
  1457.         prop Set :: (self.IC0_VALUE = $1, self.IC0_SETUP_update($1), "ok")
  1458.     }
  1459.     inst IC1_VALUE :: self.IC1_VALUE_update() { 
  1460.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1461.         prop Label :: "Input Configuration Reg 1 (IC1)"
  1462.         prop Format :: "0x%08X"
  1463.         prop Style :: 0x02
  1464.         prop JSName :: "vcpIc1"
  1465.         prop Visible :: 1
  1466.         prop Writable :: CSL.VCP_SUPPORT
  1467.         prop NoGen :: 1
  1468.         prop cGen :: 1
  1469.         prop cType :: "Uint32"
  1470.         prop TabName :: "Advanced"
  1471.         prop Set :: (self.IC1_VALUE = ($1 & 0x1FFF0000), self.IC1_SETUP_update($1), "ok")
  1472.     }
  1473.     inst IC2_VALUE :: self.IC2_VALUE_update() { 
  1474.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1475.         prop Label :: "Input Configuration Reg 2 (IC2)"
  1476.         prop Format :: "0x%08X"
  1477.         prop Style :: 0x02
  1478.         prop JSName :: "vcpIc2"
  1479.         prop Visible :: 1
  1480.         prop Writable :: CSL.VCP_SUPPORT
  1481.         prop NoGen :: 1
  1482.         prop cGen :: 1
  1483.         prop cType :: "Uint32"
  1484.         prop TabName :: "Advanced"
  1485.         prop Set :: (self.IC2_VALUE = $1, self.IC2_SETUP_update($1), "ok")
  1486.     }
  1487.     inst IC3_VALUE :: self.IC3_VALUE_update() { 
  1488.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1489.         prop Label :: "Input Configuration Reg 3 (IC3)"
  1490.         prop Format :: "0x%08X"
  1491.         prop Style :: 0x02
  1492.         prop JSName :: "vcpIc3"
  1493.         prop Visible :: 1
  1494.         prop Writable :: CSL.VCP_SUPPORT
  1495.         prop NoGen :: 1
  1496.         prop cGen :: 1
  1497.         prop cType :: "Uint32"
  1498.         prop TabName :: "Advanced"
  1499.         prop Set :: (self.IC3_VALUE = ($1 & 0x0000FFFF), self.IC3_SETUP_update($1), "ok")
  1500.     }
  1501.     inst IC4_VALUE :: self.IC4_VALUE_update() { 
  1502.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1503.         prop Label :: "Input Configuration Reg 4 (IC4)"
  1504.         prop Format :: "0x%08X"
  1505.         prop Style :: 0x02
  1506.         prop JSName :: "vcpIc4"
  1507.         prop Visible :: 1
  1508.         prop Writable :: CSL.VCP_SUPPORT
  1509.         prop NoGen :: 1
  1510.         prop cGen :: 1
  1511.         prop cType :: "Uint32"
  1512.         prop TabName :: "Advanced"
  1513.         prop Set :: (self.IC4_VALUE = ($1 & 0x0FFF0FFF), self.IC4_SETUP_update($1), "ok")
  1514.     }
  1515.     inst IC5_VALUE :: self.IC5_VALUE_update() { 
  1516.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  1517.         prop Label :: "Input Configuration Reg 5 (IC5)"
  1518.         prop Format :: "0x%08X"
  1519.         prop Style :: 0x02
  1520.         prop JSName :: "vcpIc5"
  1521.         prop Visible :: 1
  1522.         prop Writable :: CSL.VCP_SUPPORT
  1523.         prop NoGen :: 1
  1524.         prop cGen :: 1
  1525.         prop cType :: "Uint32"
  1526.         prop TabName :: "Advanced"
  1527.         prop Set :: (self.IC5_VALUE = ($1 & 0xC3FF00FF), self.IC5_SETUP_update($1), "ok")
  1528.     }
  1529. }
  1530. type hVcp {
  1531.     prop IsContainedIn :: VCPFOLDER
  1532.     prop name :: "hVcp"
  1533.     prop Label :: "VCP Resource Manager"
  1534.     prop JSName :: "HVCP"
  1535.     prop NoGen :: 1
  1536.     prop GlobalPropertyPage :: "{B936FB82-49A5-11d4-967C-0050048381C6}"
  1537.     prop InstancePropertyPage :: "{B936FB82-49A5-11d4-967C-0050048381C5}"
  1538.     prop GlobalIcon :: 195
  1539.     prop InstanceIcon :: 196
  1540.     prop GlobalHelpTopic :: (1093)
  1541.     prop cGen :: 1
  1542.     global VCP_INITPARAM_ENABLE :: 0 { 
  1543.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  1544.         prop Label :: "Enable Parameters Setting"
  1545.         prop JSName :: "vcpEnableParams"
  1546.         prop Visible :: 1
  1547.         prop Writable :: (CSL.VCP_SUPPORT)
  1548.         prop NoGen :: 0
  1549.         prop Set :: ($a = 0, scan ($b; vcpBaseParam) {$a = $a + 1}, if ($1 == 1 && $a == 1 && self.VCP_INITPARAM == VCP_PARAMNULL) {" You must create a new BaseParams object"} else {self.VCP_INITPARAM_ENABLE = $1, if ($1 == 0) {self.VCP_INITPARAM = VCP_PARAMNULL, self.VCP_PARAMCONFIGNAME = "NULL", self.VCP_SETPARAM_ENABLE = 0} , "ok"})
  1550.     }
  1551.     global VCP_INITPARAM :: VCP_PARAMNULL { 
  1552.         prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
  1553.         prop MemberType :: vcpBaseParam
  1554.         prop Label :: " Pre-Initialize with"
  1555.         prop JSName :: "vcpBaseParamInit"
  1556.         prop Visible :: 1
  1557.         prop Writable :: if (CSL.VCP_SUPPORT) && (self.VCP_INITPARAM_ENABLE == 1) {1} else {0}
  1558.     }
  1559.     global VCP_PARAMCONFIGNAME :: "NULL" { 
  1560.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  1561.         prop Label :: "Output VCP Params ConfigName (ex: vcpParam)"
  1562.         prop JSName :: "vcpParamConfigName"
  1563.         prop Visible :: 1
  1564.         prop Writable :: if (CSL.VCP_SUPPORT) && (self.VCP_INITPARAM_ENABLE == 1) {1} else {0}
  1565.         prop Set :: (if ($1 == "") {self.VCP_PARAMCONFIGNAME = "NULL", "ok"} else {self.VCP_PARAMCONFIGNAME = $1, "ok"})
  1566.     }
  1567.     global VCP_SETPARAM_ENABLE :: 0 { 
  1568.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  1569.         prop Label :: "Set VCP Params Values to the IC Config. Obj"
  1570.         prop JSName :: "vcpSetParamEnable"
  1571.         prop Visible :: 1
  1572.         prop Writable :: (CSL.VCP_SUPPORT && self.VCP_INITPARAM_ENABLE)
  1573.         prop NoGen :: 0
  1574.         prop Set :: ($a = 0, scan ($b; vcpCfg) {$a = $a + 1}, if ($1 == 1 && $a == 1 && self.VCP_INIT == VCP_NOTHING) {" You must create a configuration object"} else {self.VCP_SETPARAM_ENABLE = $1, if ($1 == 0 && self.VCP_INIT_ENABLE == 0) {self.VCP_INIT = VCP_NOTHING} , "ok"})
  1575.     }
  1576.     global VCP_INIT_ENABLE :: 0 { 
  1577.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  1578.         prop Label :: "Enable Pre-Initialization"
  1579.         prop JSName :: "vcpEnablePreInit"
  1580.         prop Visible :: 1
  1581.         prop Writable :: (CSL.VCP_SUPPORT)
  1582.         prop NoGen :: 0
  1583.         prop Set :: ($a = 0, scan ($b; vcpCfg) {$a = $a + 1}, if ($1 == 1 && $a == 1 && self.VCP_INIT == VCP_NOTHING) {" You must create a new configuration object"} else {self.VCP_INIT_ENABLE = $1, if ($1 == 0 && self.VCP_SETPARAM_ENABLE == 0) {self.VCP_INIT = VCP_NOTHING} , "ok"})
  1584.     }
  1585.     global VCP_INIT :: VCP_NOTHING { 
  1586.         prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
  1587.         prop MemberType :: vcpCfg
  1588.         prop Label :: " Pre-Initialize with"
  1589.         prop JSName :: "vcpPreInit"
  1590.         prop Visible :: 1
  1591.         prop Writable :: if (CSL.VCP_SUPPORT) && ((self.VCP_INIT_ENABLE == 1) || (self.VCP_SETPARAM_ENABLE == 1)) {1} else {0}
  1592.     }
  1593. }
  1594. object VCP_NOTHING :: vcpCfg {
  1595.     param iComment :: "<add comments here>"
  1596.     param iIsUsed :: 0
  1597.     param iId :: 0
  1598.     param iDelUser :: "USER"
  1599.     param iDelMsg :: "ok"
  1600.     param STANDARD_SETUP :: "3GPP"
  1601.     param RATE_SETUP :: "None"
  1602.     param CONSTRLEN_SETUP :: 5
  1603.     param YAMEN_SETUP :: "Disable"
  1604.     param SDHD_SETUP :: "Hard"
  1605.     param SYMX_SETUP :: 1
  1606.     param SYMR_SETUP :: 1
  1607.     param OUTF_SETUP :: "Disable"
  1608.     param IC0_VALUE :: 0
  1609.     param IC1_VALUE :: 0
  1610.     param IC2_VALUE :: 0
  1611.     param IC3_VALUE :: 0
  1612.     param IC4_VALUE :: 0
  1613.     param IC5_VALUE :: 50331648
  1614. }
  1615. object VCP_PARAMNULL :: vcpBaseParam {
  1616.     param iComment :: "<add comments here>"
  1617.     param iIsUsed :: 0
  1618.     param iId :: 0
  1619.     param iDelUser :: "USER"
  1620.     param iDelMsg :: "ok"
  1621.     param RATE_SETUP :: "None"
  1622.     param CONSTRLEN_SETUP :: 5
  1623.     param SDHD_SETUP :: "Hard"
  1624.     param OUTF_SETUP :: "Disable"
  1625. }
  1626. type XBUSFOLDER {
  1627.     isa ModuleFolder
  1628.     prop IsContainedIn :: CSL
  1629.     prop name :: "XBUS"
  1630.     prop Label :: "XBUS - Expansion Bus"
  1631.     prop NoGen :: 1
  1632.     prop GlobalPropertyPage :: "{980E6524-6246-11d4-B5CC-0050DA2E2CC0}"
  1633.     prop InstancePropertyPage :: "{980E6525-6246-11d4-B5CC-0050DA2E2CC0}"
  1634.     prop GlobalIcon :: 163
  1635.     prop InstanceIcon :: 164
  1636.     prop GlobalHelpTopic :: 1070
  1637.     global gUser :: "USER" { 
  1638.         prop Visible :: 0
  1639.         prop Writable :: 0
  1640.         prop NoGen :: 1
  1641.     }
  1642.     global gSetOf :: 0 { 
  1643.         prop Visible :: 0
  1644.         prop Writable :: 0
  1645.         prop NoGen :: 1
  1646.     }
  1647.     global gNumOf :: 0 { 
  1648.         prop Visible :: 0
  1649.         prop Writable :: 0
  1650.         prop NoGen :: 1
  1651.     }
  1652.     global gDirty :: 0 { 
  1653.         prop Visible :: 0
  1654.         prop Writable :: 0
  1655.         prop NoGen :: 1
  1656.     }
  1657.     global gInitFlag :: 1 { 
  1658.         prop Visible :: 0
  1659.         prop Writable :: 0
  1660.         prop NoGen :: 1
  1661.     }
  1662.     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) { 
  1663.         prop Visible :: 0
  1664.         prop Writable :: 0
  1665.         prop NoGen :: 1
  1666.     }
  1667. }
  1668. type xbusCfg {
  1669.     isa ObjectMgr
  1670.     prop Name :: "xbusCfg"
  1671.     prop Label :: "XBUS Configuration Manager"
  1672.     prop JSName :: "XBUS"
  1673.     prop IsContainedIn :: XBUSFOLDER
  1674.     prop NoGen :: 1
  1675.     prop maxObjs :: (32767)
  1676.     prop GlobalPropertyPage :: "{980E6522-6246-11d4-B5CC-0050DA2E2CC0}"
  1677.     prop InstancePropertyPage :: "{980E6523-6246-11d4-B5CC-0050DA2E2CC0}"
  1678.     prop GlobalIcon :: 163
  1679.     prop InstanceIcon :: 164
  1680.     prop GlobalHelpTopic :: 1071
  1681.     prop InstanceHelpTopic :: 1071
  1682.     prop cGen :: CSL.XBUS_SUPPORT
  1683.     prop cStruct :: CSL.XBUS_SUPPORT
  1684.     prop cStructType :: "XBUS_Config"
  1685.     prop cHeaderName :: if self.gNumOf > 0 {"csl_xbus.h"} else {""}
  1686.     prop cStructQual :: "far"
  1687.     prop cStructName :: self
  1688.     prop cConfigName :: "XBUS_config"
  1689.     prop localDelete :: (self.myDelete)
  1690.     prop myDelete :: ($a = 0, scan ($b; xbusCfg) {$a = $a + 1}, if ($a == 2) {hXbus.XBUS_INIT_ENABLE = 0} , "ok")
  1691.     prop XFCEN_GBLCTL :: (if (self.XFCEN_SETUP == "XFCLK Enable") {0x00004000} else {0x00000000})
  1692.     prop XFRAT_GBLCTL :: (if (self.XFRAT_SETUP == "1/8 CPU Clock Rate") {0x00000000} else {if (self.XFRAT_SETUP == "1/6 CPU Clock Rate") {0x00001000} else {if (self.XFRAT_SETUP == "1/4 CPU Clock Rate") {0x00002000} else {if (self.XFRAT_SETUP == "1/2 CPU Clock Rate") {0x00003000} }}})
  1693.     prop WRSETUP0_XCE0CTL :: ((self.WRSETUP0_SETUP << 28))
  1694.     prop WRSTRB0_XCE0CTL :: ((self.WRSTRB0_SETUP << 22))
  1695.     prop WRHLD0_XCE0CTL :: ((self.WRHLD0_SETUP << 20))
  1696.     prop RDSETUP0_XCE0CTL :: ((self.RDSETUP0_SETUP << 16))
  1697.     prop RDSTRB0_XCE0CTL :: ((self.RDSTRB0_SETUP << 8))
  1698.     prop RDHLD0_XCE0CTL :: (self.RDHLD0_SETUP)
  1699.     prop MTYPE0_XCE0CTL :: (if (self.MTYPE0_SETUP == "32-bit async.") {0x00000020} else {if (self.MTYPE0_SETUP == "32-bit FIFO") {0x00000050} })
  1700.     prop WRSETUP1_XCE1CTL :: ((self.WRSETUP1_SETUP << 28))
  1701.     prop WRSTRB1_XCE1CTL :: ((self.WRSTRB1_SETUP << 22))
  1702.     prop WRHLD1_XCE1CTL :: ((self.WRHLD1_SETUP << 20))
  1703.     prop RDSETUP1_XCE1CTL :: ((self.RDSETUP1_SETUP << 16))
  1704.     prop RDSTRB1_XCE1CTL :: ((self.RDSTRB1_SETUP << 8))
  1705.     prop RDHLD1_XCE1CTL :: (self.RDHLD1_SETUP)
  1706.     prop MTYPE1_XCE1CTL :: (if (self.MTYPE1_SETUP == "32-bit async.") {0x00000020} else {if (self.MTYPE1_SETUP == "32-bit FIFO") {0x00000050} })
  1707.     prop WRSETUP2_XCE2CTL :: ((self.WRSETUP2_SETUP << 28))
  1708.     prop WRSTRB2_XCE2CTL :: ((self.WRSTRB2_SETUP << 22))
  1709.     prop WRHLD2_XCE2CTL :: ((self.WRHLD2_SETUP << 20))
  1710.     prop RDSETUP2_XCE2CTL :: ((self.RDSETUP2_SETUP << 16))
  1711.     prop RDSTRB2_XCE2CTL :: ((self.RDSTRB2_SETUP << 8))
  1712.     prop RDHLD2_XCE2CTL :: (self.RDHLD2_SETUP)
  1713.     prop MTYPE2_XCE2CTL :: (if (self.MTYPE2_SETUP == "32-bit async.") {0x00000020} else {if (self.MTYPE2_SETUP == "32-bit FIFO") {0x00000050} })
  1714.     prop WRSETUP3_XCE3CTL :: ((self.WRSETUP3_SETUP << 28))
  1715.     prop WRSTRB3_XCE3CTL :: ((self.WRSTRB3_SETUP << 22))
  1716.     prop WRHLD3_XCE3CTL :: ((self.WRHLD3_SETUP << 20))
  1717.     prop RDSETUP3_XCE3CTL :: ((self.RDSETUP3_SETUP << 16))
  1718.     prop RDSTRB3_XCE3CTL :: ((self.RDSTRB3_SETUP << 8))
  1719.     prop RDHLD3_XCE3CTL :: (self.RDHLD3_SETUP)
  1720.     prop MTYPE3_XCE3CTL :: (if (self.MTYPE3_SETUP == "32-bit async.") {0x00000020} else {if (self.MTYPE3_SETUP == "32-bit FIFO") {0x00000050} })
  1721.     prop XFRCT_XBHC :: ((self.XFRCT_SETUP << 16))
  1722.     prop INTSRC_XBHC :: (if (self.INTSRC_SETUP == "DSPINT") {0x00000000} else {if (self.INTSRC_SETUP == "XFRCT Counter") {0x00000020} })
  1723.     prop START_XBHC :: (if (self.START_SETUP == "Abort Transfer") {0x00000000} else {if (self.START_SETUP == "Write: XBIMA-->XBEA") {0x00000008} else {if (self.START_SETUP == "Read: XBEA-->XBIMA") {0x00000010} }})
  1724.     prop DSPINT_XBHC :: (if (self.DSPINT_SETUP == "None") {0x00000000} else {if (self.DSPINT_SETUP == "Clear") {0x00000002} })
  1725.     prop XBIMA_XBIMA :: (self.XBIMA_SETUP)
  1726.     prop XBEA_XBEA :: (self.XBEA_SETUP)
  1727.     prop GBLCTL_VALUE_update :: (self.XFCEN_GBLCTL() | self.XFRAT_GBLCTL())
  1728.     prop GBLCTL_SETUP_update :: (self.XFCEN_SETUP = if ($1 & 0x00004000) {"XFCLK Enable"} else {"XFCLK High"}, self.XFRAT_SETUP = ($a = ($1 & 0x00003000), if ($a == 0x00003000) {"1/2 CPU Clock Rate"} else {if ($a == 0x00002000) {"1/4 CPU Clock Rate"} else {if ($a == 0x00001000) {"1/6 CPU Clock Rate"} else {"1/8 CPU Clock Rate"}}}))
  1729.     prop XCE0CTL_VALUE_update :: (self.MTYPE0_XCE0CTL() | self.RDHLD0_XCE0CTL() | self.RDSTRB0_XCE0CTL() | self.RDSETUP0_XCE0CTL() | self.WRHLD0_XCE0CTL() | self.WRSTRB0_XCE0CTL() | self.WRSETUP0_XCE0CTL())
  1730.     prop XCE0CTL_SETUP_update :: (self.MTYPE0_SETUP = ($a = ($1 & 0x00000070), if ($a == 0x00000050) {"32-bit FIFO"} else {"32-bit async."}), self.RDHLD0_SETUP = ($1 & 0x00000003), self.RDSTRB0_SETUP = ($1 & 0x00003F00) >> 8, self.RDSETUP0_SETUP = ($1 & 0x000F0000) >> 16, self.WRHLD0_SETUP = ($1 & 0x00300000) >> 20, self.WRSTRB0_SETUP = ($1 & 0x0FC00000) >> 22, self.WRSETUP0_SETUP = (($1 & 0xF0000000) >> 28) & 0xF)
  1731.     prop XCE1CTL_VALUE_update :: (self.MTYPE1_XCE1CTL() | self.RDHLD1_XCE1CTL() | self.RDSTRB1_XCE1CTL() | self.RDSETUP1_XCE1CTL() | self.WRHLD1_XCE1CTL() | self.WRSTRB1_XCE1CTL() | self.WRSETUP1_XCE1CTL())
  1732.     prop XCE1CTL_SETUP_update :: (self.MTYPE1_SETUP = ($a = ($1 & 0x00000070), if ($a == 0x00000050) {"32-bit FIFO"} else {"32-bit async."}), self.RDHLD1_SETUP = ($1 & 0x00000003), self.RDSTRB1_SETUP = ($1 & 0x00003F00) >> 8, self.RDSETUP1_SETUP = ($1 & 0x000F0000) >> 16, self.WRHLD1_SETUP = ($1 & 0x00300000) >> 20, self.WRSTRB1_SETUP = ($1 & 0x0FC00000) >> 22, self.WRSETUP1_SETUP = (($1 & 0xF0000000) >> 28) & 0xF)
  1733.     prop XCE2CTL_VALUE_update :: (self.MTYPE2_XCE2CTL() | self.RDHLD2_XCE2CTL() | self.RDSTRB2_XCE2CTL() | self.RDSETUP2_XCE2CTL() | self.WRHLD2_XCE2CTL() | self.WRSTRB2_XCE2CTL() | self.WRSETUP2_XCE2CTL())
  1734.     prop XCE2CTL_SETUP_update :: (self.MTYPE2_SETUP = ($a = ($1 & 0x00000070), if ($a == 0x00000050) {"32-bit FIFO"} else {"32-bit async."}), self.RDHLD2_SETUP = ($1 & 0x00000003), self.RDSTRB2_SETUP = ($1 & 0x00003F00) >> 8, self.RDSETUP2_SETUP = ($1 & 0x000F0000) >> 16, self.WRHLD2_SETUP = ($1 & 0x00300000) >> 20, self.WRSTRB2_SETUP = ($1 & 0x0FC00000) >> 22, self.WRSETUP2_SETUP = (($1 & 0xF0000000) >> 28) & 0xF)
  1735.     prop XCE3CTL_VALUE_update :: (self.MTYPE3_XCE3CTL() | self.RDHLD3_XCE3CTL() | self.RDSTRB3_XCE3CTL() | self.RDSETUP3_XCE3CTL() | self.WRHLD3_XCE3CTL() | self.WRSTRB3_XCE3CTL() | self.WRSETUP3_XCE3CTL())
  1736.     prop XCE3CTL_SETUP_update :: (self.MTYPE3_SETUP = ($a = ($1 & 0x00000070), if ($a == 0x00000050) {"32-bit FIFO"} else {"32-bit async."}), self.RDHLD3_SETUP = ($1 & 0x00000003), self.RDSTRB3_SETUP = ($1 & 0x00003F00) >> 8, self.RDSETUP3_SETUP = ($1 & 0x000F0000) >> 16, self.WRHLD3_SETUP = ($1 & 0x00300000) >> 20, self.WRSTRB3_SETUP = ($1 & 0x0FC00000) >> 22, self.WRSETUP3_SETUP = (($1 & 0xF0000000) >> 28) & 0xF)
  1737.     prop XBHC_VALUE_update :: (self.XFRCT_XBHC() | self.INTSRC_XBHC() | self.START_XBHC() | self.DSPINT_XBHC())
  1738.     prop XBHC_SETUP_update :: (self.XFRCT_SETUP = (($1 & 0xFFFF0000) >> 16) & 0xFFFF, self.INTSRC_SETUP = if ($1 & 0x00000020) {"XFRCT Counter"} else {"DSPINT"}, self.START_SETUP = ($a = ($1 & 0x00000018), if ($a == 0x00000010) {"Read: XBEA-->XBIMA"} else {if ($a == 0x00000008) {"Write: XBIMA-->XBEA"} else {"Abort Trnasfer"}}), self.DSPINT_SETUP = if ($1 & 0x00000002) {"Clear"} else {"None"})
  1739.     prop XBIMA_VALUE_update :: (self.XBIMA_XBIMA())
  1740.     prop XBIMA_SETUP_update :: (self.XBIMA_SETUP = $1 & 0xFFFFFFFF)
  1741.     prop XBEA_VALUE_update :: (self.XBEA_XBEA())
  1742.     prop XBEA_SETUP_update :: (self.XBEA_SETUP = $1 & 0xFFFFFFFF)
  1743.     global gUser :: "USER" { 
  1744.         prop Visible :: 0
  1745.         prop Writable :: 0
  1746.         prop NoGen :: 1
  1747.     }
  1748.     global gSetOf :: 0 { 
  1749.         prop Visible :: 0
  1750.         prop Writable :: 0
  1751.         prop NoGen :: 1
  1752.     }
  1753.     global gNumOf :: 0 { 
  1754.         prop Visible :: 0
  1755.         prop Writable :: 0
  1756.         prop NoGen :: 1
  1757.     }
  1758.     global gDirty :: 0 { 
  1759.         prop Visible :: 0
  1760.         prop Writable :: 0
  1761.         prop NoGen :: 1
  1762.     }
  1763.     global gInitFlag :: 1 { 
  1764.         prop Visible :: 0
  1765.         prop Writable :: 0
  1766.         prop NoGen :: 1
  1767.     }
  1768.     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) { 
  1769.         prop Visible :: 0
  1770.         prop Writable :: 0
  1771.         prop NoGen :: 1
  1772.     }
  1773.     inst iComment :: if self.iDelUser == "USER" {"<add comments here>"} else {self.iDelMsg} { 
  1774.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  1775.         prop Label :: "comment"
  1776.         prop JSName :: "comment"
  1777.         prop Visible :: 1
  1778.         prop Writable :: if self.iDelUser == "USER" {1} else {0}
  1779.         prop NoGen :: 1
  1780.     }
  1781.     inst iIsUsed :: 0 { 
  1782.         prop Visible :: 0
  1783.         prop Writable :: 0
  1784.         prop NoGen :: 1
  1785.     }
  1786.     inst iId :: 0 { 
  1787.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1788.         prop Style :: 0x01
  1789.         prop Visible :: 0
  1790.         prop Writable :: 1
  1791.         prop NoGen :: 1
  1792.     }
  1793.     inst iDelUser :: "USER" { 
  1794.         prop Visible :: 0
  1795.         prop Writable :: 0
  1796.         prop NoGen :: 1
  1797.     }
  1798.     inst iDelMsg :: "ok" { 
  1799.         prop Visible :: 0
  1800.         prop Writable :: 0
  1801.         prop NoGen :: 1
  1802.     }
  1803.     inst cConfigGen :: = ((CSL.XBUS_SUPPORT == 1) && (hXbus.XBUS_INIT_ENABLE == 1) && (hXbus.XBUS_INIT == self) && (hXbus.XBUS_INIT != XBUS_NOTHING)) { 
  1804.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  1805.         prop NoGen :: 1
  1806.         prop Visible :: 0
  1807.     }
  1808.     inst cConfigArg0 :: = hXbus.XBUS_INIT { 
  1809.         prop Type :: "{21455EA3-B96A-11cf-9BFE-0000C0AC14C7}"
  1810.         prop MemberType :: xbusCfg
  1811.         prop Label :: "Pre-initialize Config"
  1812.         prop Visible :: 0
  1813.         prop Writable :: if (CSL.XBUS_SUPPORT == 1) {1} else {0}
  1814.         prop NoGen :: 0
  1815.         prop cPreVal :: "&"
  1816.     }
  1817.     inst XFCEN_SETUP :: "XFCLK High" { 
  1818.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1819.         prop Enum :: "XFCLK High,XFCLK Enable"
  1820.         prop Label :: "FIFO Clock Enable(XFCEN)"
  1821.         prop JSName :: "xbusXbgcXfcen"
  1822.         prop Visible :: 1
  1823.         prop Writable :: if (CSL.XBUS_SUPPORT == 1) {1} else {0}
  1824.         prop NoGen :: 1
  1825.         prop TabName :: "Global Control"
  1826.         prop Set :: (self.XFCEN_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  1827.     }
  1828.     inst XFRAT_SETUP :: "1/8 CPU Clock Rate" { 
  1829.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1830.         prop Enum :: "1/8 CPU Clock Rate,1/6 CPU Clock Rate,1/4 CPU Clock Rate,1/2 CPU Clock Rate"
  1831.         prop Label :: "FIFO Clock Rate(XFRAT)"
  1832.         prop JSName :: "xbusXbgcXfrat"
  1833.         prop Visible :: 1
  1834.         prop Writable :: if (CSL.XBUS_SUPPORT == 1) {1} else {0}
  1835.         prop NoGen :: 1
  1836.         prop TabName :: "Global Control"
  1837.         prop Set :: (self.XFRAT_SETUP = $1, self.GBLCTL_VALUE = self.GBLCTL_VALUE_update(), "ok")
  1838.     }
  1839.     inst WRSETUP0_SETUP :: 15 { 
  1840.         prop Label :: "Write Setup Width "
  1841.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1842.         prop Style :: 0x01 | 0x02
  1843.         prop JSName :: "xbusXce0ctlWrsetup"
  1844.         prop Visible :: 1
  1845.         prop Writable :: CSL.XBUS_SUPPORT
  1846.         prop NoGen :: 1
  1847.         prop TabName :: "XCE0 Space Control"
  1848.         prop Set :: (if ($1 < 1 || $1 > 15) {self.error(" Minimum setup :1 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP0_SETUP = $1, self.XCE0CTL_VALUE = self.XCE0CTL_VALUE_update(), "ok"})
  1849.     }
  1850.     inst WRSTRB0_SETUP :: 63 { 
  1851.         prop Label :: "Write Strobe Width "
  1852.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1853.         prop Style :: 0x01 | 0x02
  1854.         prop JSName :: "xbusXce0ctlWrstrb0"
  1855.         prop Visible :: 1
  1856.         prop Writable :: CSL.XBUS_SUPPORT
  1857.         prop NoGen :: 1
  1858.         prop TabName :: "XCE0 Space Control"
  1859.         prop Set :: (if ($1 < 1 || $1 > 63) {self.error(" Minimum strobe :1 cycle - Maximum strobe: 63 cycles")} else {self.WRSTRB0_SETUP = $1, self.XCE0CTL_VALUE = self.XCE0CTL_VALUE_update(), "ok"})
  1860.     }
  1861.     inst WRHLD0_SETUP :: 3 { 
  1862.         prop Label :: "Write Hold Width "
  1863.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1864.         prop Style :: 0x01 | 0x02
  1865.         prop JSName :: "xbusXce0ctlWrhld"
  1866.         prop Visible :: 1
  1867.         prop Writable :: CSL.XBUS_SUPPORT
  1868.         prop NoGen :: 1
  1869.         prop TabName :: "XCE0 Space Control"
  1870.         prop Set :: (if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycles")} else {self.WRHLD0_SETUP = $1, self.XCE0CTL_VALUE = self.XCE0CTL_VALUE_update(), "ok"})
  1871.     }
  1872.     inst RDSETUP0_SETUP :: 15 { 
  1873.         prop Label :: "Read Setup Width "
  1874.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1875.         prop Style :: 0x01 | 0x02
  1876.         prop JSName :: "xbusXce0ctlRdsetup"
  1877.         prop Visible :: 1
  1878.         prop Writable :: CSL.XBUS_SUPPORT
  1879.         prop NoGen :: 1
  1880.         prop TabName :: "XCE0 Space Control"
  1881.         prop Set :: (if ($1 < 1 || $1 > 15) {self.error(" Minimum setup :1 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP0_SETUP = $1, self.XCE0CTL_VALUE = self.XCE0CTL_VALUE_update(), "ok"})
  1882.     }
  1883.     inst RDSTRB0_SETUP :: 63 { 
  1884.         prop Label :: "Read Strobe Width "
  1885.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1886.         prop Style :: 0x01 | 0x02
  1887.         prop JSName :: "xbusXce0ctlRdstrb"
  1888.         prop Visible :: 1
  1889.         prop Writable :: CSL.XBUS_SUPPORT
  1890.         prop NoGen :: 1
  1891.         prop TabName :: "XCE0 Space Control"
  1892.         prop Set :: (if ($1 < 1 || $1 > 63) {self.error(" Minimum strobe :1 cycle - Maximum strobe: 63 cycles")} else {self.RDSTRB0_SETUP = $1, self.XCE0CTL_VALUE = self.XCE0CTL_VALUE_update(), "ok"})
  1893.     }
  1894.     inst RDHLD0_SETUP :: 3 { 
  1895.         prop Label :: "Read Hold Width "
  1896.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1897.         prop Style :: 0x01 | 0x02
  1898.         prop JSName :: "xbusXce0ctlRdhld"
  1899.         prop Visible :: 1
  1900.         prop Writable :: CSL.XBUS_SUPPORT
  1901.         prop NoGen :: 1
  1902.         prop TabName :: "XCE0 Space Control"
  1903.         prop Set :: (if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycles")} else {self.RDHLD0_SETUP = $1, self.XCE0CTL_VALUE = self.XCE0CTL_VALUE_update(), "ok"})
  1904.     }
  1905.     inst MTYPE0_SETUP :: "32-bit async." { 
  1906.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1907.         prop Enum :: "32-bit async.,32-bit FIFO"
  1908.         prop Label :: "Memory Type(MTYPE)"
  1909.         prop JSName :: "xbusXce0ctlMtype"
  1910.         prop Visible :: 1
  1911.         prop Writable :: CSL.XBUS_SUPPORT
  1912.         prop NoGen :: 1
  1913.         prop TabName :: "XCE0 Space Control"
  1914.         prop Set :: (self.MTYPE0_SETUP = $1, self.XCE0CTL_VALUE = self.XCE0CTL_VALUE_update(), "ok")
  1915.     }
  1916.     inst WRSETUP1_SETUP :: 15 { 
  1917.         prop Label :: "Write Setup Width "
  1918.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1919.         prop Style :: 0x01 | 0x02
  1920.         prop JSName :: "xbusXce1ctlWrsetup"
  1921.         prop Visible :: 1
  1922.         prop Writable :: CSL.XBUS_SUPPORT
  1923.         prop NoGen :: 1
  1924.         prop TabName :: "XCE1 Space Control"
  1925.         prop Set :: (if ($1 < 1 || $1 > 15) {self.error(" Minimum setup :1 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP1_SETUP = $1, self.XCE1CTL_VALUE = self.XCE1CTL_VALUE_update(), "ok"})
  1926.     }
  1927.     inst WRSTRB1_SETUP :: 63 { 
  1928.         prop Label :: "Write Strobe Width "
  1929.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1930.         prop Style :: 0x01 | 0x02
  1931.         prop JSName :: "xbusXce1ctlWrstrb"
  1932.         prop Visible :: 1
  1933.         prop Writable :: CSL.XBUS_SUPPORT
  1934.         prop NoGen :: 1
  1935.         prop TabName :: "XCE1 Space Control"
  1936.         prop Set :: (if ($1 < 1 || $1 > 63) {self.error(" Minimum strobe :1 cycle - Maximum strobe: 63 cycles")} else {self.WRSTRB1_SETUP = $1, self.XCE1CTL_VALUE = self.XCE1CTL_VALUE_update(), "ok"})
  1937.     }
  1938.     inst WRHLD1_SETUP :: 3 { 
  1939.         prop Label :: "Write Hold Width "
  1940.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1941.         prop Style :: 0x01 | 0x02
  1942.         prop JSName :: "xbusXce1ctlWrhld"
  1943.         prop Visible :: 1
  1944.         prop Writable :: CSL.XBUS_SUPPORT
  1945.         prop NoGen :: 1
  1946.         prop TabName :: "XCE1 Space Control"
  1947.         prop Set :: (if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycles")} else {self.WRHLD1_SETUP = $1, self.XCE1CTL_VALUE = self.XCE1CTL_VALUE_update(), "ok"})
  1948.     }
  1949.     inst RDSETUP1_SETUP :: 15 { 
  1950.         prop Label :: "Read Setup Width "
  1951.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1952.         prop Style :: 0x01 | 0x02
  1953.         prop JSName :: "xbusXce1ctlRdsetup"
  1954.         prop Visible :: 1
  1955.         prop Writable :: CSL.XBUS_SUPPORT
  1956.         prop NoGen :: 1
  1957.         prop TabName :: "XCE1 Space Control"
  1958.         prop Set :: (if ($1 < 1 || $1 > 15) {self.error(" Minimum setup :1 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP1_SETUP = $1, self.XCE1CTL_VALUE = self.XCE1CTL_VALUE_update(), "ok"})
  1959.     }
  1960.     inst RDSTRB1_SETUP :: 63 { 
  1961.         prop Label :: "Read Strobe Width "
  1962.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1963.         prop Style :: 0x01 | 0x02
  1964.         prop JSName :: "xbusXce1ctlRdstrb"
  1965.         prop Visible :: 1
  1966.         prop Writable :: CSL.XBUS_SUPPORT
  1967.         prop NoGen :: 1
  1968.         prop TabName :: "XCE1 Space Control"
  1969.         prop Set :: (if ($1 < 1 || $1 > 63) {self.error(" Minimum strobe :1 cycle - Maximum strobe: 63 cycles")} else {self.RDSTRB1_SETUP = $1, self.XCE1CTL_VALUE = self.XCE1CTL_VALUE_update(), "ok"})
  1970.     }
  1971.     inst RDHLD1_SETUP :: 3 { 
  1972.         prop Label :: "Read Hold Width "
  1973.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1974.         prop Style :: 0x01 | 0x02
  1975.         prop JSName :: "xbusXce1ctlRdhld"
  1976.         prop Visible :: 1
  1977.         prop Writable :: CSL.XBUS_SUPPORT
  1978.         prop NoGen :: 1
  1979.         prop TabName :: "XCE1 Space Control"
  1980.         prop Set :: (if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycles")} else {self.RDHLD1_SETUP = $1, self.XCE1CTL_VALUE = self.XCE1CTL_VALUE_update(), "ok"})
  1981.     }
  1982.     inst MTYPE1_SETUP :: "32-bit async." { 
  1983.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  1984.         prop Enum :: "32-bit async.,32-bit FIFO"
  1985.         prop Label :: "Memory Type(MTYPE)"
  1986.         prop JSName :: "xbusXce1ctlMtype"
  1987.         prop Visible :: 1
  1988.         prop Writable :: CSL.XBUS_SUPPORT
  1989.         prop NoGen :: 1
  1990.         prop TabName :: "XCE1 Space Control"
  1991.         prop Set :: (self.MTYPE1_SETUP = $1, self.XCE1CTL_VALUE = self.XCE1CTL_VALUE_update(), "ok")
  1992.     }
  1993.     inst WRSETUP2_SETUP :: 15 { 
  1994.         prop Label :: "Write Setup Width "
  1995.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  1996.         prop Style :: 0x01 | 0x02
  1997.         prop JSName :: "xbusXce2ctlWrsetup"
  1998.         prop Visible :: 1
  1999.         prop Writable :: CSL.XBUS_SUPPORT
  2000.         prop NoGen :: 1
  2001.         prop TabName :: "XCE2 Space Control"
  2002.         prop Set :: (if ($1 < 1 || $1 > 15) {self.error(" Minimum setup :1 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP2_SETUP = $1, self.XCE2CTL_VALUE = self.XCE2CTL_VALUE_update(), "ok"})
  2003.     }
  2004.     inst WRSTRB2_SETUP :: 63 { 
  2005.         prop Label :: "Write Strobe Width "
  2006.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2007.         prop Style :: 0x01 | 0x02
  2008.         prop JSName :: "xbusXce2ctlWrstrb"
  2009.         prop Visible :: 1
  2010.         prop Writable :: CSL.XBUS_SUPPORT
  2011.         prop NoGen :: 1
  2012.         prop TabName :: "XCE2 Space Control"
  2013.         prop Set :: (if ($1 < 1 || $1 > 63) {self.error(" Minimum strobe :1 cycle - Maximum strobe: 63 cycles")} else {self.WRSTRB2_SETUP = $1, self.XCE2CTL_VALUE = self.XCE2CTL_VALUE_update(), "ok"})
  2014.     }
  2015.     inst WRHLD2_SETUP :: 3 { 
  2016.         prop Label :: "Write Hold Width "
  2017.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2018.         prop Style :: 0x01 | 0x02
  2019.         prop JSName :: "xbusXce2ctlWrhld"
  2020.         prop Visible :: 1
  2021.         prop Writable :: CSL.XBUS_SUPPORT
  2022.         prop NoGen :: 1
  2023.         prop TabName :: "XCE2 Space Control"
  2024.         prop Set :: (if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycles")} else {self.WRHLD2_SETUP = $1, self.XCE2CTL_VALUE = self.XCE2CTL_VALUE_update(), "ok"})
  2025.     }
  2026.     inst RDSETUP2_SETUP :: 15 { 
  2027.         prop Label :: "Read Setup Width "
  2028.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2029.         prop Style :: 0x01 | 0x02
  2030.         prop JSName :: "xbusXce2ctlRdsetup"
  2031.         prop Visible :: 1
  2032.         prop Writable :: CSL.XBUS_SUPPORT
  2033.         prop NoGen :: 1
  2034.         prop TabName :: "XCE2 Space Control"
  2035.         prop Set :: (if ($1 < 1 || $1 > 15) {self.error(" Minimum setup :1 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP2_SETUP = $1, self.XCE2CTL_VALUE = self.XCE2CTL_VALUE_update(), "ok"})
  2036.     }
  2037.     inst RDSTRB2_SETUP :: 63 { 
  2038.         prop Label :: "Read Strobe Width "
  2039.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2040.         prop Style :: 0x01 | 0x02
  2041.         prop JSName :: "xbusXce2ctlRdstrb"
  2042.         prop Visible :: 1
  2043.         prop Writable :: CSL.XBUS_SUPPORT
  2044.         prop NoGen :: 1
  2045.         prop TabName :: "XCE2 Space Control"
  2046.         prop Set :: (if ($1 < 1 || $1 > 63) {self.error(" Minimum strobe :1 cycle - Maximum strobe: 63 cycles")} else {self.RDSTRB2_SETUP = $1, self.XCE2CTL_VALUE = self.XCE2CTL_VALUE_update(), "ok"})
  2047.     }
  2048.     inst RDHLD2_SETUP :: 3 { 
  2049.         prop Label :: "Read Hold Width "
  2050.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2051.         prop Style :: 0x01 | 0x02
  2052.         prop JSName :: "xbusXce2ctlRdhld"
  2053.         prop Visible :: 1
  2054.         prop Writable :: CSL.XBUS_SUPPORT
  2055.         prop NoGen :: 1
  2056.         prop TabName :: "XCE2 Space Control"
  2057.         prop Set :: (if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycles")} else {self.RDHLD2_SETUP = $1, self.XCE2CTL_VALUE = self.XCE2CTL_VALUE_update(), "ok"})
  2058.     }
  2059.     inst MTYPE2_SETUP :: "32-bit async." { 
  2060.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2061.         prop Enum :: "32-bit async.,32-bit FIFO"
  2062.         prop Label :: "Memory Type(MTYPE)"
  2063.         prop JSName :: "xbusXce2ctlMtype"
  2064.         prop Visible :: 1
  2065.         prop Writable :: CSL.XBUS_SUPPORT
  2066.         prop NoGen :: 1
  2067.         prop TabName :: "XCE2 Space Control"
  2068.         prop Set :: (self.MTYPE2_SETUP = $1, self.XCE2CTL_VALUE = self.XCE2CTL_VALUE_update(), "ok")
  2069.     }
  2070.     inst WRSETUP3_SETUP :: 15 { 
  2071.         prop Label :: "Write Setup Width "
  2072.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2073.         prop Style :: 0x01 | 0x02
  2074.         prop JSName :: "xbusXce3ctlWrsetup"
  2075.         prop Visible :: 1
  2076.         prop Writable :: CSL.XBUS_SUPPORT
  2077.         prop NoGen :: 1
  2078.         prop TabName :: "XCE3 Space Control"
  2079.         prop Set :: (if ($1 < 1 || $1 > 15) {self.error(" Minimum setup :1 cycle - Maximum setup: 15 cycles")} else {self.WRSETUP3_SETUP = $1, self.XCE3CTL_VALUE = self.XCE3CTL_VALUE_update(), "ok"})
  2080.     }
  2081.     inst WRSTRB3_SETUP :: 63 { 
  2082.         prop Label :: "Write Strobe Width "
  2083.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2084.         prop Style :: 0x01 | 0x02
  2085.         prop JSName :: "xbusXce3ctlWrstrb"
  2086.         prop Visible :: 1
  2087.         prop Writable :: CSL.XBUS_SUPPORT
  2088.         prop NoGen :: 1
  2089.         prop TabName :: "XCE3 Space Control"
  2090.         prop Set :: (if ($1 < 1 || $1 > 63) {self.error(" Minimum strobe :1 cycle - Maximum strobe: 63 cycles")} else {self.WRSTRB3_SETUP = $1, self.XCE3CTL_VALUE = self.XCE3CTL_VALUE_update(), "ok"})
  2091.     }
  2092.     inst WRHLD3_SETUP :: 3 { 
  2093.         prop Label :: "Write Hold Width "
  2094.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2095.         prop Style :: 0x01 | 0x02
  2096.         prop JSName :: "xbusXce3ctlWrhld"
  2097.         prop Visible :: 1
  2098.         prop Writable :: CSL.XBUS_SUPPORT
  2099.         prop NoGen :: 1
  2100.         prop TabName :: "XCE3 Space Control"
  2101.         prop Set :: (if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycles")} else {self.WRHLD3_SETUP = $1, self.XCE3CTL_VALUE = self.XCE3CTL_VALUE_update(), "ok"})
  2102.     }
  2103.     inst RDSETUP3_SETUP :: 15 { 
  2104.         prop Label :: "Read Setup Width "
  2105.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2106.         prop Style :: 0x01 | 0x02
  2107.         prop JSName :: "xbusXce3ctlRdsetup"
  2108.         prop Visible :: 1
  2109.         prop Writable :: CSL.XBUS_SUPPORT
  2110.         prop NoGen :: 1
  2111.         prop TabName :: "XCE3 Space Control"
  2112.         prop Set :: (if ($1 < 1 || $1 > 15) {self.error(" Minimum setup :1 cycle - Maximum setup: 15 cycles")} else {self.RDSETUP3_SETUP = $1, self.XCE3CTL_VALUE = self.XCE3CTL_VALUE_update(), "ok"})
  2113.     }
  2114.     inst RDSTRB3_SETUP :: 63 { 
  2115.         prop Label :: "Read Strobe Width "
  2116.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2117.         prop Style :: 0x01 | 0x02
  2118.         prop JSName :: "xbusXce3ctlRdstrb"
  2119.         prop Visible :: 1
  2120.         prop Writable :: CSL.XBUS_SUPPORT
  2121.         prop NoGen :: 1
  2122.         prop TabName :: "XCE3 Space Control"
  2123.         prop Set :: (if ($1 < 1 || $1 > 63) {self.error(" Minimum strobe :1 cycle - Maximum strobe: 63 cycles")} else {self.RDSTRB3_SETUP = $1, self.XCE3CTL_VALUE = self.XCE3CTL_VALUE_update(), "ok"})
  2124.     }
  2125.     inst RDHLD3_SETUP :: 3 { 
  2126.         prop Label :: "Read Hold Width "
  2127.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2128.         prop Style :: 0x01 | 0x02
  2129.         prop JSName :: "xbusXce3ctlRdhld"
  2130.         prop Visible :: 1
  2131.         prop Writable :: CSL.XBUS_SUPPORT
  2132.         prop NoGen :: 1
  2133.         prop TabName :: "XCE3 Space Control"
  2134.         prop Set :: (if ($1 < 0 || $1 > 3) {self.error(" Minimum hold :0 cycle - Maximum hold: 3 cycles")} else {self.RDHLD3_SETUP = $1, self.XCE3CTL_VALUE = self.XCE3CTL_VALUE_update(), "ok"})
  2135.     }
  2136.     inst MTYPE3_SETUP :: "32-bit async." { 
  2137.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2138.         prop Enum :: "32-bit async.,32-bit FIFO"
  2139.         prop Label :: "Memory Type(MTYPE)"
  2140.         prop JSName :: "xbusXce3ctlMtype"
  2141.         prop Visible :: 1
  2142.         prop Writable :: CSL.XBUS_SUPPORT
  2143.         prop NoGen :: 1
  2144.         prop TabName :: "XCE3 Space Control"
  2145.         prop Set :: (self.MTYPE3_SETUP = $1, self.XCE3CTL_VALUE = self.XCE3CTL_VALUE_update(), "ok")
  2146.     }
  2147.     inst XFRCT_SETUP :: 0 { 
  2148.         prop Label :: "Transfer Counter(XFRCT)"
  2149.         prop Type :: "{21455EA2-B96A-11cf-9BFE-0000C0AC14C7}"
  2150.         prop Style :: 0x01 | 0x02
  2151.         prop JSName :: "xbusXbhcXfrct"
  2152.         prop Visible :: 1
  2153.         prop Writable :: CSL.XBUS_SUPPORT
  2154.         prop NoGen :: 1
  2155.         prop TabName :: "XBUS HPI Control"
  2156.         prop Set :: (if ($1 > 65535) {self.error("Maximum transfer count: 65535 elements")} else {self.XFRCT_SETUP = $1, self.XBHC_VALUE = self.XBHC_VALUE_update(), "ok"})
  2157.     }
  2158.     inst INTSRC_SETUP :: "DSPINT" { 
  2159.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2160.         prop Enum :: "DSPINT,XFRCT Counter"
  2161.         prop Label :: "Interrupt Source(INTSRC)"
  2162.         prop JSName :: "xbusXbhcIntsrc"
  2163.         prop Visible :: 1
  2164.         prop Writable :: if (CSL.XBUS_SUPPORT == 1) {1} else {0}
  2165.         prop NoGen :: 1
  2166.         prop TabName :: "XBUS HPI Control"
  2167.         prop Set :: (self.INTSRC_SETUP = $1, self.XBHC_VALUE = self.XBHC_VALUE_update(), "ok")
  2168.     }
  2169.     inst START_SETUP :: "Abort Transfer" { 
  2170.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2171.         prop Enum :: "Abort Transfer,Write: XBIMA-->XBEA,Read: XBEA-->XBIMA"
  2172.         prop Label :: "Start Master Transaction(START)"
  2173.         prop JSName :: "xbusXbhcStart"
  2174.         prop Visible :: 1
  2175.         prop Writable :: if (CSL.XBUS_SUPPORT == 1) {1} else {0}
  2176.         prop NoGen :: 1
  2177.         prop TabName :: "XBUS HPI Control"
  2178.         prop Set :: (self.START_SETUP = $1, self.XBHC_VALUE = self.XBHC_VALUE_update(), "ok")
  2179.     }
  2180.     inst DSPINT_SETUP :: "None" { 
  2181.         prop Type :: "{21455EA1-B96A-11cf-9BFE-0000C0AC14C7}"
  2182.         prop Enum :: "None,Clear"
  2183.         prop Label :: "External Master to DSP Interrupt(DSPINT)"
  2184.         prop JSName :: "xbusXbhcDspint"
  2185.         prop Visible :: 1
  2186.         prop Writable :: if (CSL.XBUS_SUPPORT == 1) {1} else {0}
  2187.         prop NoGen :: 1
  2188.         prop TabName :: "XBUS HPI Control"
  2189.         prop Set :: (self.DSPINT_SETUP = $1, self.XBHC_VALUE = self.XBHC_VALUE_update(), "ok")
  2190.     }
  2191.     inst XBIMA_SETUP :: 0x00000000 { 
  2192.         prop Label :: "XBUS Internal Master Address(XBIMA)"
  2193.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  2194.         prop Style :: 0x02
  2195.         prop Format :: "0x%08X"
  2196.         prop JSName :: "xbusXbima"
  2197.         prop Visible :: 1
  2198.         prop Writable :: CSL.XBUS_SUPPORT
  2199.         prop NoGen :: 1
  2200.         prop TabName :: "Int. Master/Ext. Addr."
  2201.         prop Set :: (self.XBIMA_SETUP = $1, self.XBIMA_VALUE = self.XBIMA_VALUE_update(), "ok")
  2202.     }
  2203.     inst XBEA_SETUP :: 0x00000000 { 
  2204.         prop Label :: "XBUS External Address(XBEA)"
  2205.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  2206.         prop Style :: 0x02
  2207.         prop Format :: "0x%08X"
  2208.         prop JSName :: "xbusXbea"
  2209.         prop Visible :: 1
  2210.         prop Writable :: CSL.XBUS_SUPPORT
  2211.         prop NoGen :: 1
  2212.         prop TabName :: "Int. Master/Ext. Addr."
  2213.         prop Set :: (self.XBEA_SETUP = $1, self.XBEA_VALUE = self.XBEA_VALUE_update(), "ok")
  2214.     }
  2215.     inst GBLCTL_VALUE :: self.GBLCTL_VALUE_update() { 
  2216.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  2217.         prop Label :: "Global Control Register(XBGC)"
  2218.         prop Format :: "0x%08X"
  2219.         prop JSName :: "xbusXbgc"
  2220.         prop Visible :: 1
  2221.         prop Writable :: CSL.XBUS_SUPPORT
  2222.         prop NoGen :: 0
  2223.         prop cGen :: 1
  2224.         prop cType :: "Uint32"
  2225.         prop TabName :: "Advanced"
  2226.         prop Set :: ($a = $1 & 0xFFFF0000, $b = $1 & 0x000007FF, $c = $1 & 0x00008000, $d = $1 & 0x00000800, if ($a != 0x00000000) {self.error("reserved space, bit[16..31]")} else {if ($b != 0x00000000) {self.error("reserved space, bit[0..10]")} else {if ($c != 0x00000000) {self.error("Read only for FMOD, bit[15]")} else {if ($d != 0x00000000) {self.error("Read only for XARB, bit[11]")} else {self.GBLCTL_VALUE = $1, self.GBLCTL_SETUP_update($1), "ok"}}}})
  2227.     }
  2228.     inst XCE0CTL_VALUE :: self.XCE0CTL_VALUE_update() { 
  2229.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  2230.         prop Label :: "XCE0 Space Control Register(XCE0CTL) "
  2231.         prop Format :: "0x%08X"
  2232.         prop JSName :: "xbusXcectl0"
  2233.         prop Visible :: 1
  2234.         prop Writable :: CSL.XBUS_SUPPORT
  2235.         prop NoGen :: 0
  2236.         prop cGen :: 1
  2237.         prop cType :: "Uint32"
  2238.         prop TabName :: "Advanced"
  2239.         prop Set :: ($a = $1 & 0x00000070, $b = $1 & 0x0000000C, $c = $1 & 0x00000080, $d = $1 & 0x0000C000, if (($a != 0x00000020) && ($a != 0x00000050)) {self.error("Undefined memory type for XCE spaces, bit[4..6]")} else {if ($b != 0x00000000) {self.error("reserved space, bit[2..3]")} else {if ($c != 0x00000000) {self.error("reserved space, bit[7]")} else {if ($d != 0x00000000) {self.error("reserved space, bit[14..15]")} else {if (((($1 & 0xF0000000) >> 28) & 0xF) == 0x00000000) {self.error("Write setup width, bit[28..31], requires minimum of 1 cycle")} else {if ((($1 & 0x0FC00000) >> 22) == 0x00000000) {self.error("Write strobe width, bit[22..27], requires minimum of 1 cycle")} else {if ((($1 & 0x000F0000) >> 16) == 0x00000000) {self.error("Read setup width, bit[16..19], requires minimum of 1 cycle")} else {if ((($1 & 0x00003F00) >> 8) == 0x00000000) {self.error("Read strobe width, bit[8..13], requires minimum of 1 cycle")} else {self.XCE0CTL_VALUE = $1, self.XCE0CTL_SETUP_update($1), "ok"}}}}}}}})
  2240.     }
  2241.     inst XCE1CTL_VALUE :: self.XCE1CTL_VALUE_update() { 
  2242.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  2243.         prop Label :: "XCE1 Space Control Register(XCE1CTL) "
  2244.         prop Format :: "0x%08X"
  2245.         prop JSName :: "xbusXcectl1"
  2246.         prop Visible :: 1
  2247.         prop Writable :: CSL.XBUS_SUPPORT
  2248.         prop NoGen :: 0
  2249.         prop cGen :: 1
  2250.         prop cType :: "Uint32"
  2251.         prop TabName :: "Advanced"
  2252.         prop Set :: ($a = $1 & 0x00000070, $b = $1 & 0x0000000C, $c = $1 & 0x00000080, $d = $1 & 0x0000C000, if (($a != 0x00000020) && ($a != 0x00000050)) {self.error("Undefined memory type for XCE spaces, bit[4..6]")} else {if ($b != 0x00000000) {self.error("reserved space, bit[2..3]")} else {if ($c != 0x00000000) {self.error("reserved space, bit[7]")} else {if ($d != 0x00000000) {self.error("reserved space, bit[14..15]")} else {if (((($1 & 0xF0000000) >> 28) & 0xF) == 0x00000000) {self.error("Write setup width, bit[28..31], requires minimum of 1 cycle")} else {if ((($1 & 0x0FC00000) >> 22) == 0x00000000) {self.error("Write strobe width, bit[22..27], requires minimum of 1 cycle")} else {if ((($1 & 0x000F0000) >> 16) == 0x00000000) {self.error("Read setup width, bit[16..19], requires minimum of 1 cycle")} else {if ((($1 & 0x00003F00) >> 8) == 0x00000000) {self.error("Read strobe width, bit[8..13], requires minimum of 1 cycle")} else {self.XCE1CTL_VALUE = $1, self.XCE1CTL_SETUP_update($1), "ok"}}}}}}}})
  2253.     }
  2254.     inst XCE2CTL_VALUE :: self.XCE2CTL_VALUE_update() { 
  2255.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  2256.         prop Label :: "XCE2 Space Control Register(XCE2CTL) "
  2257.         prop Format :: "0x%08X"
  2258.         prop JSName :: "xbusXcectl2"
  2259.         prop Visible :: 1
  2260.         prop Writable :: CSL.XBUS_SUPPORT
  2261.         prop NoGen :: 0
  2262.         prop cGen :: 1
  2263.         prop cType :: "Uint32"
  2264.         prop TabName :: "Advanced"
  2265.         prop Set :: ($a = $1 & 0x00000070, $b = $1 & 0x0000000C, $c = $1 & 0x00000080, $d = $1 & 0x0000C000, if (($a != 0x00000020) && ($a != 0x00000050)) {self.error("Undefined memory type for XCE spaces, bit[4..6]")} else {if ($b != 0x00000000) {self.error("reserved space, bit[2..3]")} else {if ($c != 0x00000000) {self.error("reserved space, bit[7]")} else {if ($d != 0x00000000) {self.error("reserved space, bit[14..15]")} else {if (((($1 & 0xF0000000) >> 28) & 0xF) == 0x00000000) {self.error("Write setup width, bit[28..31], requires minimum of 1 cycle")} else {if ((($1 & 0x0FC00000) >> 22) == 0x00000000) {self.error("Write strobe width, bit[22..27], requires minimum of 1 cycle")} else {if ((($1 & 0x000F0000) >> 16) == 0x00000000) {self.error("Read setup width, bit[16..19], requires minimum of 1 cycle")} else {if ((($1 & 0x00003F00) >> 8) == 0x00000000) {self.error("Read strobe width, bit[8..13], requires minimum of 1 cycle")} else {self.XCE2CTL_VALUE = $1, self.XCE2CTL_SETUP_update($1), "ok"}}}}}}}})
  2266.     }
  2267.     inst XCE3CTL_VALUE :: self.XCE3CTL_VALUE_update() { 
  2268.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  2269.         prop Label :: "XCE3 Space Control Register(XCE3CTL) "
  2270.         prop Format :: "0x%08X"
  2271.         prop JSName :: "xbusXcectl3"
  2272.         prop Visible :: 1
  2273.         prop Writable :: CSL.XBUS_SUPPORT
  2274.         prop NoGen :: 0
  2275.         prop cGen :: 1
  2276.         prop cType :: "Uint32"
  2277.         prop TabName :: "Advanced"
  2278.         prop Set :: ($a = $1 & 0x00000070, $b = $1 & 0x0000000C, $c = $1 & 0x00000080, $d = $1 & 0x0000C000, if (($a != 0x00000020) && ($a != 0x00000050)) {self.error("Undefined memory type for XCE spaces, bit[4..6]")} else {if ($b != 0x00000000) {self.error("reserved space, bit[2..3]")} else {if ($c != 0x00000000) {self.error("reserved space, bit[7]")} else {if ($d != 0x00000000) {self.error("reserved space, bit[14..15]")} else {if (((($1 & 0xF0000000) >> 28) & 0xF) == 0x00000000) {self.error("Write setup width, bit[28..31], requires minimum of 1 cycle")} else {if ((($1 & 0x0FC00000) >> 22) == 0x00000000) {self.error("Write strobe width, bit[22..27], requires minimum of 1 cycle")} else {if ((($1 & 0x000F0000) >> 16) == 0x00000000) {self.error("Read setup width, bit[16..19], requires minimum of 1 cycle")} else {if ((($1 & 0x00003F00) >> 8) == 0x00000000) {self.error("Read strobe width, bit[8..13], requires minimum of 1 cycle")} else {self.XCE3CTL_VALUE = $1, self.XCE3CTL_SETUP_update($1), "ok"}}}}}}}})
  2279.     }
  2280.     inst XBHC_VALUE :: self.XBHC_VALUE_update() { 
  2281.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  2282.         prop Label :: "XBUS HPI Control Register(XBHC)"
  2283.         prop Format :: "0x%08X"
  2284.         prop JSName :: "xbusXbhc"
  2285.         prop Visible :: 1
  2286.         prop Writable :: CSL.XBUS_SUPPORT
  2287.         prop NoGen :: 0
  2288.         prop cGen :: 1
  2289.         prop cType :: "Uint32"
  2290.         prop TabName :: "Advanced"
  2291.         prop Set :: ($a = $1 & 0x0000FFC0, $b = $1 & 0x00000004, $c = $1 & 0x00000001, $d = $1 & 0x00000018, if ($a != 0x00000000) {self.error("reserved space, bit[6..15]")} else {if ($b != 0x00000000) {self.error("reserved space, bit[2]")} else {if ($c != 0x00000000) {self.error("reserved space, bit[0]")} else {if ($d == 0x00000018) {self.error("Undefined value for START, bit[3..4]")} else {self.XBHC_VALUE = $1, self.XBHC_SETUP_update($1), "ok"}}}})
  2292.     }
  2293.     inst XBIMA_VALUE :: self.XBIMA_VALUE_update() { 
  2294.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  2295.         prop Label :: "XBUS Internal Master Address Register(XBIMA)"
  2296.         prop Format :: "0x%08X"
  2297.         prop JSName :: "xbusXbimaAdv"
  2298.         prop Visible :: 1
  2299.         prop Writable :: CSL.XBUS_SUPPORT
  2300.         prop NoGen :: 0
  2301.         prop cGen :: 1
  2302.         prop cType :: "Uint32"
  2303.         prop TabName :: "Advanced"
  2304.         prop Set :: (self.XBIMA_VALUE = $1, self.XBIMA_SETUP_update($1), "ok")
  2305.     }
  2306.     inst XBEA_VALUE :: self.XBEA_VALUE_update() { 
  2307.         prop Type :: "{3EE4CB80-E273-11d0-BB8F-0000C008F2E9}"
  2308.         prop Label :: "XBUS External Address Register(XBEA)"
  2309.         prop Format :: "0x%08X"
  2310.         prop JSName :: "xbusXbeaAdv"
  2311.         prop Visible :: 1
  2312.         prop Writable :: CSL.XBUS_SUPPORT
  2313.         prop NoGen :: 0
  2314.         prop cGen :: 1
  2315.         prop cType :: "Uint32"
  2316.         prop TabName :: "Advanced"
  2317.         prop Set :: (self.XBEA_VALUE = $1, self.XBEA_SETUP_update($1), "ok")
  2318.     }
  2319. }
  2320. type hXbus {
  2321.     prop IsContainedIn :: XBUSFOLDER
  2322.     prop name :: "hXbus"
  2323.     prop Label :: "XBUS Resource Manager"
  2324.     prop JSName :: "HXBUS"
  2325.     prop GlobalPropertyPage :: "{980E6520-6246-11d4-B5CC-0050DA2E2CC0}"
  2326.     prop InstancePropertyPage :: "{980E6521-6246-11d4-B5CC-0050DA2E2CC0}"
  2327.     prop GlobalIcon :: 163
  2328.     prop InstanceIcon :: 164
  2329.     prop NoGen :: 1
  2330.     prop cGen :: CSL.XBUS_SUPPORT
  2331.     prop GlobalHelpTopic :: 1072
  2332.     global XBUS_INIT_ENABLE :: 0 { 
  2333.         prop Type :: "{21455EA0-B96A-11cf-9BFE-0000C0AC14C7}"
  2334.         prop Label :: "Enable Pre-Initialization"
  2335.         prop JSName :: "xbusEnablePreInit"
  2336.         prop Visible :: 1
  2337.         prop Writable :: if (CSL.XBUS_SUPPORT == 1) {1} else {0}
  2338.         prop NoGen :: 0
  2339.         prop Set :: ($a = 0, scan ($b; xbusCfg) {$a = $a + 1}, if ($1 == 1 && $a == 1 && self.XBUS_INIT == XBUS_NOTHING) {" You must create a new configuration object"} else {self.XBUS_INIT_ENABLE = $1, "ok"})
  2340.     }
  2341.     global XBUS_INIT :: XBUS_NOTHING { 
  2342.         prop Type :: "{7BA2DA00-5A53-11d0-9BFE-0000C0AC14C7}"
  2343.         prop MemberType :: xbusCfg
  2344.         prop Label :: " Pre-Initialize with"
  2345.         prop JSName :: "xbusPreInit"
  2346.         prop Visible :: 1
  2347.         prop Writable :: if ((CSL.XBUS_SUPPORT == 1) && (self.XBUS_INIT_ENABLE == 1)) {1} else {0}
  2348.     }
  2349. }
  2350. object XBUS_NOTHING :: xbusCfg {
  2351.     param iComment :: "<add comments here>"
  2352.     param iIsUsed :: 0
  2353.     param iId :: 0
  2354.     param iDelUser :: "USER"
  2355.     param iDelMsg :: "ok"
  2356.     param XFCEN_SETUP :: "XFCLK High"
  2357.     param XFRAT_SETUP :: "1/8 CPU Clock Rate"
  2358.     param WRSETUP0_SETUP :: 15
  2359.     param WRSTRB0_SETUP :: 63
  2360.     param WRHLD0_SETUP :: 3
  2361.     param RDSETUP0_SETUP :: 15
  2362.     param RDSTRB0_SETUP :: 63
  2363.     param RDHLD0_SETUP :: 3
  2364.     param MTYPE0_SETUP :: "32-bit async."
  2365.     param WRSETUP1_SETUP :: 15
  2366.     param WRSTRB1_SETUP :: 63
  2367.     param WRHLD1_SETUP :: 3
  2368.     param RDSETUP1_SETUP :: 15
  2369.     param RDSTRB1_SETUP :: 63
  2370.     param RDHLD1_SETUP :: 3
  2371.     param MTYPE1_SETUP :: "32-bit async."
  2372.     param WRSETUP2_SETUP :: 15
  2373.     param WRSTRB2_SETUP :: 63
  2374.     param WRHLD2_SETUP :: 3
  2375.     param RDSETUP2_SETUP :: 15
  2376.     param RDSTRB2_SETUP :: 63
  2377.     param RDHLD2_SETUP :: 3
  2378.     param MTYPE2_SETUP :: "32-bit async."
  2379.     param WRSETUP3_SETUP :: 15
  2380.     param WRSTRB3_SETUP :: 63
  2381.     param WRHLD3_SETUP :: 3
  2382.     param RDSETUP3_SETUP :: 15
  2383.     param RDSTRB3_SETUP :: 63
  2384.     param RDHLD3_SETUP :: 3
  2385.     param MTYPE3_SETUP :: "32-bit async."
  2386.     param XFRCT_SETUP :: 0
  2387.     param INTSRC_SETUP :: "DSPINT"
  2388.     param START_SETUP :: "Abort Transfer"
  2389.     param DSPINT_SETUP :: "None"
  2390.     param XBIMA_SETUP :: 0
  2391.     param XBEA_SETUP :: 0
  2392.     param GBLCTL_VALUE :: 0
  2393.     param XCE0CTL_VALUE :: -49373
  2394.     param XCE1CTL_VALUE :: -49373
  2395.     param XCE2CTL_VALUE :: -49373
  2396.     param XCE3CTL_VALUE :: -49373
  2397.     param XBHC_VALUE :: 0
  2398.     param XBIMA_VALUE :: 0
  2399.     param XBEA_VALUE :: 0
  2400. }
  2401. object SDRAM :: MEM {
  2402.     param iComment :: "This object defines space for the DSP's off-chip memory"
  2403.     param iIsUsed :: 1
  2404.     param iId :: 0
  2405.     param iDelUser :: "USER"
  2406.     param iDelMsg :: "ok"
  2407.     param base :: -2147483648
  2408.     param len :: 33554432
  2409.     param iAllocHeap :: 1
  2410.     param iHeapSize :: 12582912
  2411.     param iUserHeapId :: 1
  2412.     param iHeapId :: @_extHeap
  2413.     param iReqHeapCount :: 3
  2414.     param space :: "code/data"
  2415.     param iIsModifiable :: 1
  2416. }
  2417. object trace :: LOG {
  2418.     param iComment :: "<add comments here>"
  2419.     param iIsUsed :: 1
  2420.     param iId :: 0
  2421.     param iDelUser :: "USER"
  2422.     param iDelMsg :: "ok"
  2423.     param buflen :: 1024
  2424.     param logtype :: "circular"
  2425.     param iType :: "printf"
  2426.     param iFormat :: "0x%x, 0x%x, 0x%x"
  2427. }
  2428. object stsCycleTime :: STS {
  2429.     param iComment :: "<add comments here>"
  2430.     param iIsUsed :: 1
  2431.     param iId :: 0
  2432.     param iDelUser :: "USER"
  2433.     param iDelMsg :: "ok"
  2434.     param prev :: 0
  2435.     param format :: "%g"
  2436.     param unittype :: "High resolution time based"
  2437.     param operation :: "A * x"
  2438.     param iA :: 8
  2439.     param iB :: 0
  2440.     param iC :: 1
  2441.     param prevhigh :: 0
  2442.     param prevlow :: 0
  2443. }
  2444. object stsDispTime :: STS {
  2445.     param iComment :: "<add comments here>"
  2446.     param iIsUsed :: 1
  2447.     param iId :: 0
  2448.     param iDelUser :: "USER"
  2449.     param iDelMsg :: "ok"
  2450.     param prev :: 0
  2451.     param format :: "%g"
  2452.     param unittype :: "High resolution time based"
  2453.     param operation :: "A * x"
  2454.     param iA :: 8
  2455.     param iB :: 0
  2456.     param iC :: 1
  2457.     param prevhigh :: 0
  2458.     param prevlow :: 0
  2459. }
  2460. object stsExeTimeChJpegDec :: STS {
  2461.     param iComment :: "<add comments here>"
  2462.     param iIsUsed :: 1
  2463.     param iId :: 0
  2464.     param iDelUser :: "USER"
  2465.     param iDelMsg :: "ok"
  2466.     param prev :: 0
  2467.     param format :: "%g"
  2468.     param unittype :: "High resolution time based"
  2469.     param operation :: "A * x"
  2470.     param iA :: 8
  2471.     param iB :: 0
  2472.     param iC :: 1
  2473.     param prevhigh :: 0
  2474.     param prevlow :: 0
  2475. }
  2476. object stsExeTimeChJpegEnc :: STS {
  2477.     param iComment :: "<add comments here>"
  2478.     param iIsUsed :: 1
  2479.     param iId :: 0
  2480.     param iDelUser :: "USER"
  2481.     param iDelMsg :: "ok"
  2482.     param prev :: 0
  2483.     param format :: "%g"
  2484.     param unittype :: "High resolution time based"
  2485.     param operation :: "A * x"
  2486.     param iA :: 8
  2487.     param iB :: 0
  2488.     param iC :: 1
  2489.     param prevhigh :: 0
  2490.     param prevlow :: 0
  2491. }
  2492. object stsCapTime :: STS {
  2493.     param iComment :: "<add comments here>"
  2494.     param iIsUsed :: 1
  2495.     param iId :: 0
  2496.     param iDelUser :: "USER"
  2497.     param iDelMsg :: "ok"
  2498.     param prev :: 0
  2499.     param format :: "%g"
  2500.     param unittype :: "High resolution time based"
  2501.     param operation :: "A * x"
  2502.     param iA :: 8
  2503.     param iB :: 0
  2504.     param iC :: 1
  2505.     param prevhigh :: 0
  2506.     param prevlow :: 0
  2507. }
  2508. object mbxProcess :: MBX {
  2509.     param iComment :: "<add comments here>"
  2510.     param iIsUsed :: 1
  2511.     param iId :: 0
  2512.     param iDelUser :: "USER"
  2513.     param iDelMsg :: "ok"
  2514.     param iMsgSize :: 20
  2515.     param iMbxLength :: 5
  2516.     param iMbxSeg :: SDRAM
  2517. }
  2518. object VP0CAPTURE :: UDEV {
  2519.     param iComment :: "<add comments here>"
  2520.     param iIsUsed :: 1
  2521.     param iId :: 0
  2522.     param iDelUser :: "USER"
  2523.     param iDelMsg :: "ok"
  2524.     param iInit :: 0
  2525.     param iFxns :: @_VPORTCAP_Fxns
  2526.     param fxnTableType :: "IOM_Fxns"
  2527.     param iDevId :: 0
  2528.     param iParams :: @_EVMDM642_vCapParamsPort
  2529.     param deviceId :: 0
  2530.     param initFxn :: 0
  2531.     param iIsStacking :: 0
  2532.     param deviceGlobalDataPtr :: 0
  2533.     param iIsVirtual :: 0
  2534. }
  2535. object VP2DISPLAY :: UDEV {
  2536.     param iComment :: "<add comments here>"
  2537.     param iIsUsed :: 1
  2538.     param iId :: 0
  2539.     param iDelUser :: "USER"
  2540.     param iDelMsg :: "ok"
  2541.     param iInit :: 0
  2542.     param iFxns :: @_VPORTDIS_Fxns
  2543.     param fxnTableType :: "IOM_Fxns"
  2544.     param iDevId :: 2
  2545.     param iParams :: @_EVMDM642_vDisParamsPort
  2546.     param deviceId :: 2
  2547.     param initFxn :: 0
  2548.     param iIsStacking :: 0
  2549.     param deviceGlobalDataPtr :: 0
  2550.     param iIsVirtual :: 0
  2551. }
  2552. object tskControl :: TSK {
  2553.     param iComment :: "control task"
  2554.     param iIsUsed :: 1
  2555.     param iId :: 0
  2556.     param iDelUser :: "USER"
  2557.     param iDelMsg :: "ok"
  2558.     param iFXN :: @_thrControlRun
  2559.     param iARG0 :: 0
  2560.     param iARG1 :: 0
  2561.     param iARG2 :: 0
  2562.     param iARG3 :: 0
  2563.     param iARG4 :: 0
  2564.     param iARG5 :: 0
  2565.     param iARG6 :: 0
  2566.     param iARG7 :: 0
  2567.     param iAUTOSTK :: 1
  2568.     param iMANSTK :: @null
  2569.     param iSTKSZ :: 1024
  2570.     param iPRI :: 1
  2571.     param iENV :: 0
  2572.     param iEXITFLAG :: 1
  2573.     param iUSETSKNAME :: 0
  2574.     param Order :: 0
  2575. }
  2576. object tskInput :: TSK {
  2577.     param iComment :: "video input"
  2578.     param iIsUsed :: 1
  2579.     param iId :: 0
  2580.     param iDelUser :: "USER"
  2581.     param iDelMsg :: "ok"
  2582.     param iFXN :: @_tskVideoInput
  2583.     param iARG0 :: 0
  2584.     param iARG1 :: 0
  2585.     param iARG2 :: 0
  2586.     param iARG3 :: 0
  2587.     param iARG4 :: 0
  2588.     param iARG5 :: 0
  2589.     param iARG6 :: 0
  2590.     param iARG7 :: 0
  2591.     param iAUTOSTK :: 1
  2592.     param iMANSTK :: @null
  2593.     param iSTKSZ :: 16384
  2594.     param iPRI :: 5
  2595.     param iENV :: 0
  2596.     param iEXITFLAG :: 1
  2597.     param iUSETSKNAME :: 0
  2598.     param Order :: 0
  2599. }
  2600. object tskOutput :: TSK {
  2601.     param iComment :: "video output"
  2602.     param iIsUsed :: 1
  2603.     param iId :: 0
  2604.     param iDelUser :: "USER"
  2605.     param iDelMsg :: "ok"
  2606.     param iFXN :: @_tskVideoOutput
  2607.     param iARG0 :: 0
  2608.     param iARG1 :: 0
  2609.     param iARG2 :: 0
  2610.     param iARG3 :: 0
  2611.     param iARG4 :: 0
  2612.     param iARG5 :: 0
  2613.     param iARG6 :: 0
  2614.     param iARG7 :: 0
  2615.     param iAUTOSTK :: 1
  2616.     param iMANSTK :: @null
  2617.     param iSTKSZ :: 16384
  2618.     param iPRI :: 5
  2619.     param iENV :: 0
  2620.     param iEXITFLAG :: 1
  2621.     param iUSETSKNAME :: 0
  2622.     param Order :: 0
  2623. }
  2624. object tskVideoProcess :: TSK {
  2625.     param iComment :: "video processing"
  2626.     param iIsUsed :: 1
  2627.     param iId :: 0
  2628.     param iDelUser :: "USER"
  2629.     param iDelMsg :: "ok"
  2630.     param iFXN :: @_tskProcess
  2631.     param iARG0 :: 0
  2632.     param iARG1 :: 0
  2633.     param iARG2 :: 0
  2634.     param iARG3 :: 0
  2635.     param iARG4 :: 0
  2636.     param iARG5 :: 0
  2637.     param iARG6 :: 0
  2638.     param iARG7 :: 0
  2639.     param iAUTOSTK :: 1
  2640.     param iMANSTK :: @null
  2641.     param iSTKSZ :: 32000
  2642.     param iPRI :: 5
  2643.     param iENV :: 0
  2644.     param iEXITFLAG :: 1
  2645.     param iUSETSKNAME :: 0
  2646.     param Order :: 0
  2647. }
  2648. object tskStack :: TSK {
  2649.     param iComment :: "video processing"
  2650.     param iIsUsed :: 1
  2651.     param iId :: 0
  2652.     param iDelUser :: "USER"
  2653.     param iDelMsg :: "ok"
  2654.     param iFXN :: @_network_main
  2655.     param iARG0 :: 0
  2656.     param iARG1 :: 0
  2657.     param iARG2 :: 0
  2658.     param iARG3 :: 0
  2659.     param iARG4 :: 0
  2660.     param iARG5 :: 0
  2661.     param iARG6 :: 0
  2662.     param iARG7 :: 0
  2663.     param iAUTOSTK :: 1
  2664.     param iMANSTK :: @null
  2665.     param iSTKSZ :: 4096
  2666.     param iPRI :: 1
  2667.     param iENV :: 0
  2668.     param iEXITFLAG :: 1
  2669.     param iUSETSKNAME :: 0
  2670.     param Order :: 0
  2671. }
  2672. object prdStack :: PRD {
  2673.     param iComment :: "<add comments here>"
  2674.     param iIsUsed :: 1
  2675.     param iId :: 0
  2676.     param iDelUser :: "USER"
  2677.     param iDelMsg :: "ok"
  2678.     param period :: 100
  2679.     param mode :: "continuous"
  2680.     param function :: @_llTimerTick
  2681.     param arg0 :: 0
  2682.     param arg1 :: 0
  2683.     param Order :: 0
  2684.     param iPri :: 0
  2685. }
  2686. object HOOK_NDK :: HOOK {
  2687.     param iComment :: "<add comments here>"
  2688.     param iIsUsed :: 1
  2689.     param iId :: 0
  2690.     param iDelUser :: "USER"
  2691.     param iDelMsg :: "ok"
  2692.     param initFxn :: @_NDK_hookInit
  2693.     param createFxn :: @_NDK_hookCreate
  2694.     param deleteFxn :: @_FXN_F_nop
  2695.     param exitFxn :: @_FXN_F_nop
  2696.     param callSwitchFxn :: 0
  2697.     param switchFxn :: @_FXN_F_nop
  2698.     param callReadyFxn :: 0
  2699.     param readyFxn :: @_FXN_F_nop
  2700.     param Order :: 2
  2701.     param iPri :: 0
  2702. }